Function at 0x42b800
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1a8
push ebx
mov dword [ebp - 4], eax
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0
mov eax, 1
lea edx, [ebp - 0x17c]
lea ecx, [ebp - 0x164]
call fcn.0040bc00
call fcn.0040d480
push eax
test eax, eax
jne 0x42bac3
push 0x40
push dword [ebp - 4]
lea eax, [ebp - 0x4c]
push eax
call fcn.00412990
cmp word [ebp - 0x4c], 0x5a4d
je 0x42b869
mov edx, 0x4568bc
mov eax, 0x4609a0
call fcn.00407590
jmp 0x42bb1a
push 0xf8
mov edx, dword [ebp - 0x10]
mov eax, edx
sar eax, 0x1f
push eax
push edx
mov eax, dword [ebp - 4]
call fcn.0042aef0
push eax
lea eax, [ebp - 0x144]
push eax
call fcn.00412990
cmp dword [ebp - 0x144], 0x4550
je 0x42b8ad
mov edx, 0x4568f8
mov eax, 0x4609a0
call fcn.00407590
jmp 0x42bb1a
push 4
push 0x2000
push dword [ebp - 0xf4]
push dword [ebp - 0x110]
call fcn.004015f0
mov dword [ebp - 0x148], eax
test eax, eax
jne 0x42b8e9
push 4
push 0x2000
push dword [ebp - 0xf4]
push 0
call fcn.004015f0
mov dword [ebp - 0x148], eax
cmp dword [ebp - 0x148], 0
jne 0x42b906
mov edx, 0x456938
mov eax, 0x4609a0
call fcn.00407590
jmp 0x42bb1a
push 0x11
push 0
call fcn.00401230
push eax
call fcn.00401240
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0x148]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0xc]
mov dword [eax + 0xc], 0
mov eax, dword [ebp - 0xc]
mov dword [eax + 8], 0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x10], 0
push 4
push 0x1000
push dword [ebp - 0xf4]
push dword [ebp - 0x148]
call fcn.004015f0
push 4
push 0x1000
push dword [ebp - 0xf0]
push dword [ebp - 0x148]
call fcn.004015f0
mov dword [ebp - 0x14c], eax
mov edx, dword [ebp - 0x10]
mov eax, edx
sar eax, 0x1f
mov ecx, dword [ebp - 0xf0]
mov ebx, 0
add edx, ecx
adc eax, ebx
push edx
push dword [ebp - 4]
push dword [ebp - 0x14c]
call fcn.00412990
mov edx, dword [ebp - 0x10]
mov eax, edx
sar eax, 0x1f
mov ecx, dword [ebp - 0x14c]
mov ebx, 0
add edx, ecx
adc eax, ebx
mov eax, dword [ebp - 0xc]
mov dword [eax], edx
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x148]
mov edx, 0
mov dword [ecx + 0x34], eax
mov ecx, dword [ebp - 0xc]
lea edx, [ebp - 0x144]
mov eax, dword [ebp - 4]
call fcn.0042b0a0
mov edx, dword [ebp - 0x110]
mov ebx, 0
mov eax, dword [ebp - 0x148]
mov ecx, 0
sub eax, edx
sbb ecx, ebx
mov dword [ebp - 0x150], eax
test eax, eax
je 0x42ba0a
push dword [ebp - 0x150]
push dword [ebp - 0xc]
call fcn.0042b1e0
push dword [ebp - 0xc]
call fcn.0042b300
test al, al
jne 0x42ba32
push 0
mov ecx, 0x45696c
mov edx, dword [0x4609a0]
mov eax, 0x4609a0
call fcn.00407690
call fcn.004271a0
push dword [ebp - 0xc]
call fcn.0042b6f0
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
cmp dword [eax + 0x28], 0
je 0x42bac3
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 0x28]
mov ebx, 0
mov edx, dword [ebp - 0x148]
mov ecx, 0
add eax, edx
adc ebx, ecx
mov dword [ebp - 0x154], eax
test eax, eax
jne 0x42ba83
mov edx, 0x4569a8
mov eax, 0x4609a0
call fcn.00407590
call fcn.004271a0
push 0
push 1
mov eax, dword [ebp - 0x148]
mov edx, 0
push eax
call dword [ebp - 0x154]
or eax, eax
setne al
mov byte [ebp - 0x158], al
test al, al
jne 0x42babc
mov edx, 0x4569e0
mov eax, 0x4609a0
call fcn.00407590
call fcn.004271a0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x10], 1
call fcn.0040be80
pop eax
test eax, eax
je 0x42bb22
mov eax, 1
lea edx, [ebp - 0x1a4]
lea ecx, [ebp - 0x18c]
call fcn.0040bc00
call fcn.0040d480
push eax
test eax, eax
jne 0x42baf7
mov eax, dword [ebp - 0xc]
call fcn.0042bcb0
jmp 0x42bb0d
call fcn.0040be80
pop eax
test eax, eax
je 0x42bb06
call fcn.0040c0b0
call fcn.0040c0a0
jmp 0x42bb22
call fcn.0040be80
pop eax
call fcn.0040c0a0
jmp 0x42bb28
call fcn.0040be80
pop eax
jmp 0x42bb28
mov eax, dword [ebp - 0xc]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
pop ebx
leave
ret 8