Function at 0x45ace8
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x13
push 0
push 0
dec ecx
jne 0x45acf1
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0x10], ecx
mov ebx, edx
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x45b213
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0x11], 0
cmp dword [ebp - 0xc], 0
je 0x45b1cd
test ebx, ebx
je 0x45b1cd
push ebp
push 0x45b1c6
push dword fs:[0]
mov dword fs:[0], esp
mov ecx, dword [ebp - 0xc]
cmp word [ecx], 0x5a4d
je 0x45ad53
call fcn.00404308
jmp 0x45b1cd
mov eax, dword [ebp - 0xc]
xor edx, edx
push edx
push eax
mov eax, dword [ecx + 0x3c]
cdq
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
cmp dword [eax], 0x4550
je 0x45ad7a
call fcn.00404308
jmp 0x45b1cd
cmp dword [eax + 0x78], 0
jne 0x45ad8a
call fcn.00404308
jmp 0x45b1cd
add eax, 0x78
mov edx, dword [eax]
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x60], 0x2081d
add edx, dword [eax + 4]
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0x10]
mov esi, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
mov edi, dword [eax + 0x1c]
add edi, dword [ebp - 0xc]
mov dword [ebp - 0x28], edi
mov edi, dword [eax + 0x20]
add edi, dword [ebp - 0xc]
mov dword [ebp - 0x2c], edi
mov eax, dword [eax + 0x24]
add eax, dword [ebp - 0xc]
mov dword [ebp - 0x30], eax
xor eax, eax
mov dword [ebp - 0x34], eax
cmp ebx, 0xffff
ja 0x45adf2
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jb 0x45ade8
cmp esi, dword [ebp - 0x34]
jae 0x45adf2
call fcn.00404308
jmp 0x45b1cd
xor eax, eax
inc eax
cmp eax, 0x186a1
jne 0x45adf4
xor eax, eax
inc eax
cmp eax, 0x186a1
jne 0x45adfe
cmp ebx, 0xffff
jbe 0x45aeb8
mov byte [ebp - 0x39], 0
mov edi, edx
dec edi
test edi, edi
jb 0x45ae74
inc edi
xor esi, esi
mov eax, esi
add eax, eax
add eax, eax
add eax, dword [ebp - 0x2c]
mov eax, dword [eax]
add eax, dword [ebp - 0xc]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x80]
mov edx, ebx
call fcn.00404a0c
mov eax, dword [ebp - 0x80]
push eax
lea eax, [ebp - 0x84]
mov edx, dword [ebp - 0x38]
call fcn.00404a0c
mov eax, dword [ebp - 0x84]
pop edx
call fcn.0045aa64
test eax, eax
jne 0x45ae70
mov eax, esi
add eax, eax
add eax, dword [ebp - 0x30]
movzx eax, word [eax]
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x39], 1
jmp 0x45ae74
inc esi
dec edi
jne 0x45ae20
xor eax, eax
push ebp
push 0x45ae99
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x45b230
call fcn.004086fc
mov dword [ebp - 0x60], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45aeb8
mov eax, dword [ebp - 0x34]
add eax, eax
add eax, eax
add eax, dword [ebp - 0x28]
mov edx, dword [eax]
cmp edx, dword [ebp - 0x20]
jbe 0x45b1ac
cmp edx, dword [ebp - 0x24]
ja 0x45b1ac
xor eax, eax
inc eax
cmp eax, 0x186a1
jne 0x45aed8
xor eax, eax
inc eax
cmp eax, 0x186a1
jne 0x45aee2
add edx, dword [ebp - 0xc]
mov dword [ebp - 0x40], edx
xor eax, eax
mov dword [ebp - 0x64], eax
xor eax, eax
push ebp
push 0x45af45
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [ebp - 0x64], 0
jbe 0x45af1a
xor ecx, ecx
mov dl, 1
mov eax, dword [0x44c6d0]
call fcn.0044f600
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x88]
mov edx, dword [ebp - 0x40]
call fcn.004050dc
mov edx, dword [ebp - 0x88]
mov eax, 0x45b244
call fcn.00405244
mov dword [ebp - 0x44], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45af4f
cmp dword [ebp - 0x44], 0
jbe 0x45b1b4
xor eax, eax
push ebp
push 0x45af7b
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x45b250
call fcn.004086fc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45afd5
xor eax, eax
push ebp
push 0x45aff7
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x45b288
call fcn.004086fc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45b04d
mov byte [ebp - 0x49], 0
mov eax, dword [ebp - 8]
cmp byte [eax], 0x23
jne 0x45b0b2
mov byte [ebp - 0x49], 1
mov eax, dword [ebp - 8]
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
je 0x45b074
mov eax, dword [ebp - 0x7c]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0xa0]
push eax
mov ecx, dword [ebp - 0x7c]
mov edx, 2
mov eax, dword [ebp - 8]
call fcn.00404d0c
mov eax, dword [ebp - 0xa0]
call fcn.00404ca4
mov edx, eax
lea eax, [ebp - 0x9c]
call fcn.00404a0c
mov eax, dword [ebp - 0x9c]
call fcn.004086fc
mov word [ebp - 0x48], ax
xor eax, eax
push ebp
push 0x45b0d4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x45b2a0
call fcn.004086fc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45b108
cmp byte [ebp - 0x49], 0
je 0x45b117
movzx eax, word [ebp - 0x48]
mov dword [ebp - 0x50], eax
jmp 0x45b122
mov eax, dword [ebp - 8]
call fcn.00404ca4
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x6c], 2
xor eax, eax
push ebp
push 0x45b149
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x74]
call fcn.004550e4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45b153
dec dword [ebp - 0x6c]
jne 0x45b129
xor eax, eax
push ebp
push 0x45b17a
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x45b2bc
call fcn.004086fc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45b1b4
add edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
mov dword [eax], edx
mov byte [ebp - 0x11], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x45b1cd
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x45b21a
lea eax, [ebp - 0xa0]
mov edx, 6
call fcn.00404838
lea eax, [ebp - 0x88]
call fcn.00404fc8
lea eax, [ebp - 0x84]
mov edx, 2
call fcn.00404838
lea eax, [ebp - 8]
mov edx, 2
call fcn.00404838
ret