80×86 Architecture: Windows Portable Executable Format
Assembler code
.text:00401236
.text:00401236 ; =============== S U B R O U T I N E =======================================
.text:00401236
.text:00401236 ; Attributes: bp-based frame
.text:00401236
.text:00401236 ; void __cdecl sub_401236()
.text:00401236 sub_401236 proc near ; DATA XREF: start+DB↑o
.text:00401236
.text:00401236 var_1C = dword ptr -1Ch
.text:00401236 ms_exc = CPPEH_RECORD ptr -18h
.text:00401236
.text:00401236 ; __unwind { // __SEH_prolog
.text:00401236 push 0Ch
.text:00401238 push offset stru_402078
.text:0040123D call __SEH_prolog
.text:00401242 mov [ebp+var_1C], offset unk_4020E0
.text:00401249
.text:00401249 loc_401249: ; CODE XREF: sub_401236+3C↓j
.text:00401249 cmp [ebp+var_1C], offset unk_4020E0
.text:00401250 jnb short loc_401274
.text:00401252 ; __try { // __except at loc_401267
.text:00401252 and [ebp+ms_exc.registration.TryLevel], 0
.text:00401256 mov eax, [ebp+var_1C]
.text:00401259 mov eax, [eax]
.text:0040125B test eax, eax
.text:0040125D jz short loc_40126A
.text:0040125F call eax
.text:00401261 jmp short loc_40126A
.text:00401263 ; ---------------------------------------------------------------------------
.text:00401263
.text:00401263 loc_401263: ; DATA XREF: .rdata:stru_402078↓o
.text:00401263 ; __except filter // owned by 401252
.text:00401263 xor eax, eax
.text:00401265 inc eax
.text:00401266 retn
Last updated