Function at 0x409450
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x45cc
call fcn.00547480
mov eax, dword [0x661850]
xor eax, ebp
mov dword [ebp - 4], eax
mov byte [ebp - 0x4008], 0
push 0x3fff
push 0
lea eax, [ebp - 0x4007]
push eax
call fcn.005454d0
add esp, 0xc
push 0x104
push 0
lea ecx, [ebp - 0x4528]
push ecx
call fcn.005454d0
add esp, 0xc
push 0x410
push 0
lea edx, [ebp - 0x4420]
push edx
call fcn.005454d0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
push str.ThreadHandle:__d__ThreadId:__d__r_n
lea eax, [ebp - 0x4420]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov dword [ebp - 0x45c8], edx
cmp dword [ebp - 0x45c8], 0x40000005
ja 0x409581
cmp dword [ebp - 0x45c8], 0x40000005
je 0x40986a
cmp dword [ebp - 0x45c8], 0x102
ja 0x40954c
cmp dword [ebp - 0x45c8], 0x102
je 0x4099b7
cmp dword [ebp - 0x45c8], 0
je 0x409948
cmp dword [ebp - 0x45c8], 0x80
je 0x40996d
cmp dword [ebp - 0x45c8], 0xc0
je 0x409992
jmp case.0x40972f.10
cmp dword [ebp - 0x45c8], 0x103
je 0x4097fb
cmp dword [ebp - 0x45c8], 0x10001
je 0x409820
cmp dword [ebp - 0x45c8], 0x10002
je 0x409845
jmp case.0x40972f.10
cmp dword [ebp - 0x45c8], 0xc000008c
ja 0x4096e4
cmp dword [ebp - 0x45c8], 0xc000008c
je 0x409b73
cmp dword [ebp - 0x45c8], reloc.WS2_32.dll_connect
ja 0x40963d
cmp dword [ebp - 0x45c8], reloc.WS2_32.dll_connect
je 0x409a4b
cmp dword [ebp - 0x45c8], 0x40010009
ja 0x409608
cmp dword [ebp - 0x45c8], 0x40010009
je 0x409923
mov eax, dword [ebp - 0x45c8]
sub eax, 0x40010003
mov dword [ebp - 0x45c8], eax
cmp dword [ebp - 0x45c8], 5
ja case.0x40972f.10
mov ecx, dword [ebp - 0x45c8]
jmp dword [ecx*4 + 0x40a0a0]
cmp dword [ebp - 0x45c8], reloc.DSOUND.dll_DirectSoundCreate
je 0x4099dc
cmp dword [ebp - 0x45c8], 0x80000002
je 0x409a01
cmp dword [ebp - 0x45c8], reloc.WS2_32.dll_closesocket
je 0x409a26
jmp case.0x40972f.10
cmp dword [ebp - 0x45c8], 0xc0000017
ja 0x4096af
cmp dword [ebp - 0x45c8], 0xc0000017
je 0x409adf
cmp dword [ebp - 0x45c8], 0xc0000006
ja 0x40969a
cmp dword [ebp - 0x45c8], 0xc0000006
je 0x409a95
cmp dword [ebp - 0x45c8], 0x80010001
je 0x409a70
cmp dword [ebp - 0x45c8], 0xc0000005
je 0x40978c
jmp case.0x40972f.10
cmp dword [ebp - 0x45c8], 0xc0000008
je 0x409aba
jmp case.0x40972f.10
cmp dword [ebp - 0x45c8], 0xc000001d
je 0x409b04
cmp dword [ebp - 0x45c8], 0xc0000025
je 0x409b29
cmp dword [ebp - 0x45c8], 0xc0000026
je 0x409b4e
jmp case.0x40972f.10
cmp dword [ebp - 0x45c8], 0xc00002b4
ja 0x409736
cmp dword [ebp - 0x45c8], 0xc00002b4
je 0x409d0a
mov edx, dword [ebp - 0x45c8]
add edx, 0x3fffff73
mov dword [ebp - 0x45c8], edx
cmp dword [ebp - 0x45c8], 0xad
ja case.0x40972f.10
mov eax, dword [ebp - 0x45c8]
movzx ecx, byte [eax + 0x40a0ec]
jmp dword [ecx*4 + 0x40a0b8]
cmp dword [ebp - 0x45c8], 0xc015000f
ja 0x409777
cmp dword [ebp - 0x45c8], 0xc015000f
je 0x409d76
cmp dword [ebp - 0x45c8], 0xc00002b5
je 0x409d2f
cmp dword [ebp - 0x45c8], 0xc00002c9
je 0x409d54
jmp case.0x40972f.10
cmp dword [ebp - 0x45c8], 0xc0150010
je 0x409d98
jmp case.0x40972f.10
push str.STATUS_ACCESS_VIOLATION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x575600
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_STACK_OVERFLOW
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x5755c8
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_INTEGER_DIVIDE_BY_ZERO
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x575588
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_PENDING
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57554c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.DBG_EXCEPTION_HANDLED
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x575504
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.DBG_CONTINUE
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x5754c8
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_SEGMENT_NOTIFICATION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x5753f8
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.DBG_TERMINATE_THREAD
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x5753b0
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str._DBG_TERMINATE_PROCESS
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57536c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str._DBG_CONTROL_C
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57532c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str._DBG_CONTROL_BREAK
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x5752e8
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.DBG_COMMAND_EXCEPTION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x5752ac
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_WAIT_0
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_ABANDONED_WAIT_0
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_USER_APC
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_TIMEOUT
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_GUARD_PAGE_VIOLATION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_DATATYPE_MISALIGNMENT
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_BREAKPOINT
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_SINGLE_STEP
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.DBG_EXCEPTION_NOT_HANDLED
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_IN_PAGE_ERROR
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_INVALID_HANDLE
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_NO_MEMORY
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_ILLEGAL_INSTRUCTION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_NONCONTINUABLE_EXCEPTION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_INVALID_DISPOSITION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_ARRAY_BOUNDS_EXCEEDED
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_DENORMAL_OPERAND
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_DIVIDE_BY_ZERO
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_INEXACT_RESULT
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_INVALID_OPERATION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_OVERFLOW
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_STACK_CHECK
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_UNDERFLOW
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_INTEGER_OVERFLOW
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_PRIVILEGED_INSTRUCTION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_CONTROL_C_EXIT
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_MULTIPLE_FAULTS
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_FLOAT_MULTIPLE_TRAPS
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_REG_NAT_CONSUMPTION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_SXS_EARLY_DEACTIVATION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
push str.STATUS_SXS_INVALID_DEACTIVATION
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x57527c
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x409dd5
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
push 0x574f40
lea ecx, [ebp - 0x4528]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea edx, [ebp - 0x4528]
push edx
lea eax, [ebp - 0x4420]
push eax
call fcn.00545760
add esp, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
push edx
push str.exception_address___8x__r_nModule:
lea eax, [ebp - 0x4528]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea ecx, [ebp - 0x4528]
push ecx
lea edx, [ebp - 0x4420]
push edx
call fcn.00545760
add esp, 8
push 0x1c
lea eax, [ebp - 0x45b4]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
push 0x104
lea eax, [ebp - 0x4528]
push eax
mov ecx, dword [ebp - 0x45b0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [ebp - 0x4528]
push edx
lea eax, [ebp - 0x4420]
push eax
call fcn.00545760
add esp, 8
push 0x574f18
lea ecx, [ebp - 0x4420]
push ecx
call fcn.00545760
add esp, 8
mov edx, dword [ebp - 0x45b0]
mov dword [ebp - 0x400c], edx
mov eax, dword [ebp - 0x400c]
mov ecx, dword [ebp - 0x400c]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x4594], ecx
mov edx, dword [ebp - 0x4594]
movzx eax, word [edx + 0x14]
mov ecx, dword [ebp - 0x4594]
lea edx, [ecx + eax + 0x18]
mov dword [ebp - 0x4598], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xc]
sub ecx, dword [ebp - 0x45b0]
mov dword [ebp - 0x45b8], ecx
xor edx, edx
mov word [ebp - 0x45bc], dx
jmp 0x409ee0
mov ax, word [ebp - 0x45bc]
add ax, 1
mov word [ebp - 0x45bc], ax
movzx ecx, word [ebp - 0x45bc]
mov edx, dword [ebp - 0x4594]
movzx eax, word [edx + 6]
cmp ecx, eax
jge 0x409fbf
mov ecx, dword [ebp - 0x4598]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x45c0], edx
mov eax, dword [ebp - 0x4598]
mov ecx, dword [ebp - 0x4598]
mov edx, dword [eax + 0x10]
cmp edx, dword [ecx + 8]
jbe 0x409f2d
mov eax, dword [ebp - 0x4598]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x45cc], ecx
jmp 0x409f3c
mov edx, dword [ebp - 0x4598]
mov eax, dword [edx + 8]
mov dword [ebp - 0x45cc], eax
mov ecx, dword [ebp - 0x45c0]
add ecx, dword [ebp - 0x45cc]
mov dword [ebp - 0x45c4], ecx
mov edx, dword [ebp - 0x45b8]
cmp edx, dword [ebp - 0x45c0]
jb 0x409fab
mov eax, dword [ebp - 0x45b8]
cmp eax, dword [ebp - 0x45c4]
ja 0x409fab
mov ecx, dword [ebp - 0x45b8]
sub ecx, dword [ebp - 0x45c0]
push ecx
mov edx, dword [ebp - 0x4598]
push edx
push str.Section_name:__s___offset_rva__:__x_r_n
lea eax, [ebp - 0x4528]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea ecx, [ebp - 0x4528]
push ecx
lea edx, [ebp - 0x4420]
push edx
call fcn.00545760
add esp, 8
jmp 0x409fbf
mov eax, dword [ebp - 0x4598]
add eax, 0x28
mov dword [ebp - 0x4598], eax
jmp 0x409ece
lea ecx, [ebp - 0x4590]
push ecx
call fcn.00547460
add esp, 4
push 0x574ee8
lea edx, [ebp - 0x4590]
push edx
call fcn.00545a90
add esp, 4
lea eax, [ebp + eax - 0x4590]
push eax
call fcn.00545750
add esp, 8
lea ecx, [ebp - 0x4590]
push ecx
call fcn.00545a90
add esp, 4
lea edx, [ebp + eax - 0x4590]
push edx
call fcn.0054738c
add esp, 4
lea eax, [ebp - 0x4420]
push eax
lea ecx, [ebp - 0x4590]
push ecx
push str._s_s_r_n
lea edx, [ebp - 0x4008]
push edx
call fcn.005456a9
add esp, 0x10
push str.21:38:38
push str.Sep_30_2015
push str.BuildTime:__s__s
push 1
call fcn.00408ee0
push eax
call fcn.0040abf0
add esp, 0x14
push 1
lea eax, [ebp - 0x4590]
push eax
call fcn.00408ee0
mov ecx, eax
call fcn.0040ac50
push 1
lea ecx, [ebp - 0x4420]
push ecx
call fcn.00408ee0
mov ecx, eax
call fcn.0040ac50
push 1
push 0x574a9b
call fcn.00408ee0
mov ecx, eax
call fcn.0040ac50
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0054514c
mov esp, ebp
pop ebp
ret