Function at 0x402420
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
push ebx
push esi
push edi
lea edi, [ebp - 0x6c]
mov ecx, 0x1b
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov esi, esp
push 0x411494
mov edi, esp
push 0x41143c
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp edi, esp
call fcn.00403ce0
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00403ce0
mov dword [ebp - 4], eax
mov esi, esp
push 0x411488
mov edi, esp
push 0x41143c
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp edi, esp
call fcn.00403ce0
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00403ce0
mov dword [ebp - 8], eax
mov esi, esp
push 0x411458
mov edi, esp
push 0x41143c
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp edi, esp
call fcn.00403ce0
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00403ce0
mov dword [ebp - 0xc], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
xor edx, edx
mov dx, word [ecx]
cmp edx, 0x5a4d
je 0x4024d9
xor eax, eax
jmp 0x4026c0
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp + 8]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x18]
cmp dword [edx], 0x4550
je 0x4024f7
xor eax, eax
jmp 0x4026c0
mov esi, esp
push 4
push 0x2000
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x50]
push ecx
push 0
call dword [ebp - 0xc]
cmp esi, esp
call fcn.00403ce0
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x402548
mov esi, esp
push 4
push 0x2000
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 0x50]
push eax
push 0
call dword [ebp - 0xc]
cmp esi, esp
call fcn.00403ce0
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x402548
xor eax, eax
jmp 0x4026c0
mov esi, esp
push 0x14
push 0
mov edi, esp
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
cmp edi, esp
call fcn.00403ce0
push eax
call dword [ebp - 8]
cmp esi, esp
call fcn.00403ce0
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x1c]
mov dword [ecx + 4], edx
mov eax, dword [ebp - 0x10]
mov dword [eax + 0xc], 0
mov ecx, dword [ebp - 0x10]
mov dword [ecx + 8], 0
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x10], 0
mov esi, esp
push 4
push 0x1000
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x50]
push ecx
mov edx, dword [ebp - 0x1c]
push edx
call dword [ebp - 0xc]
cmp esi, esp
call fcn.00403ce0
mov esi, esp
push 4
push 0x1000
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x54]
push ecx
mov edx, dword [ebp - 0x1c]
push edx
call dword [ebp - 0xc]
cmp esi, esp
call fcn.00403ce0
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x3c]
mov edx, dword [ebp - 0x18]
add ecx, dword [edx + 0x54]
push ecx
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x20]
push ecx
call fcn.00403d80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
add eax, dword [edx + 0x3c]
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x1c]
mov dword [eax + 0x34], ecx
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00401ec0
add esp, 0xc
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
sub eax, dword [edx + 0x34]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x40263d
mov ecx, dword [ebp - 0x24]
push ecx
mov edx, dword [ebp - 0x10]
push edx
call fcn.00402070
add esp, 8
mov eax, dword [ebp - 0x10]
push eax
call fcn.004021d0
add esp, 4
test eax, eax
jne 0x40264f
jmp 0x4026be
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00401c80
add esp, 4
mov edx, dword [ebp - 0x10]
mov eax, dword [edx]
cmp dword [eax + 0x28], 0
je 0x4026a5
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
add eax, dword [edx + 0x28]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
jne 0x40267c
jmp 0x4026bc
mov esi, esp
push 0
push 1
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [ebp - 0x28]
cmp esi, esp
call fcn.00403ce0
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x40269b
jmp 0x4026ba
mov edx, dword [ebp - 0x10]
mov dword [edx + 0x10], 1
mov eax, dword [ebp - 0x10]
jmp 0x4026c0
mov eax, dword [ebp - 0x10]
push eax
call fcn.00402800
add esp, 4
xor eax, eax
jmp 0x4026c0
jmp 0x4026aa
jmp 0x4026aa
jmp 0x4026aa
pop edi
pop esi
pop ebx
add esp, 0x6c
cmp ebp, esp
call fcn.00403ce0
mov esp, ebp
pop ebp
ret