Function at 0x3025450
Capabilities:
Parse pe header

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x29c
mov eax, dword [0x30ed8a8]
xor eax, ebp
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x120]
movzx edx, word [ecx]
test edx, edx
je 0x3025489
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x120]
mov dword [ebp - 0x298], ecx
jmp 0x3025495
mov edx, dword [ebp + 0xc]
add edx, 0x1e
mov dword [ebp - 0x298], edx
push 0x105
mov eax, dword [ebp + 0x10]
add eax, 4
push eax
mov ecx, dword [ebp - 0x298]
push ecx
call fcn.0303a630
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x29c], edx
mov eax, dword [ebp - 0x29c]
mov ecx, dword [ebp - 0x29c]
mov edx, dword [eax + 8]
or edx, dword [ecx + 0xc]
jne 0x30254df
push 0x3002434
call dword [0x30ef88c]
add esp, 4
xor eax, eax
jmp 0x302578f
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x540], 8
jne 0x30254f5
mov eax, 1
jmp 0x302578f
lea ecx, [ebp - 0x294]
push ecx
push 0x40
lea edx, [ebp - 0x290]
push edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [eax + 8]
push edx
call dword [0x30ef8a0]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x3025528
cmp dword [ebp - 0x294], 0x40
je 0x3025548
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [eax + 8]
push edx
push 0x3002414
call dword [0x30ef88c]
add esp, 0xc
xor eax, eax
jmp 0x302578f
movzx eax, word [ebp - 0x290]
cmp eax, 0x5a4d
jne 0x30256fd
lea ecx, [ebp - 0x294]
push ecx
push 0xf8
lea edx, [ebp - 0x240]
push edx
mov eax, dword [ebp - 0x254]
cdq
mov ecx, dword [ebp + 0xc]
add eax, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
adc ecx, edx
push ecx
push eax
call dword [0x30ef8a0]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x302559c
cmp dword [ebp - 0x294], 0xf8
je 0x30255c5
mov eax, dword [ebp - 0x254]
cdq
mov ecx, dword [ebp + 0xc]
add eax, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
adc ecx, edx
push ecx
push eax
push 0x30023f0
call dword [0x30ef88c]
add esp, 0xc
xor eax, eax
jmp 0x302578f
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x238]
mov dword [edx + 0x110], eax
cmp dword [ebp - 0x240], 0x4550
je 0x3025637
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x38]
movzx eax, word [edx]
cmp eax, 0x107
jne 0x302561d
lea ecx, [ebp - 0x23c]
mov dword [0x30ef768], ecx
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 4]
mov dword [edx + 0x114], ecx
mov dword [ebp - 0x244], 0
jmp 0x3025632
push 0x30023d4
call dword [0x30ef88c]
add esp, 4
xor eax, eax
jmp 0x302578f
jmp 0x30256fb
movzx ecx, word [ebp - 0x228]
push ecx
call fcn.03042380
test eax, eax
je 0x30256d4
lea edx, [ebp - 0x294]
push edx
push 0x108
lea eax, [ebp - 0x148]
push eax
mov eax, dword [ebp - 0x254]
cdq
mov ecx, dword [ebp + 0xc]
add eax, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
adc ecx, edx
push ecx
push eax
call dword [0x30ef8a0]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x302568e
cmp dword [ebp - 0x294], 0x108
je 0x30256b7
mov eax, dword [ebp - 0x254]
cdq
mov ecx, dword [ebp + 0xc]
add eax, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
adc ecx, edx
push ecx
push eax
push 0x30023f0
call dword [0x30ef88c]
add esp, 0xc
xor eax, eax
jmp 0x302578f
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0xf8]
mov dword [edx + 0x114], eax
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x248], ecx
jmp 0x30256fb
lea edx, [ebp - 0x23c]
mov dword [0x30ef768], edx
lea eax, [ebp - 0x1c8]
mov dword [ebp - 0x248], eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x1f0]
mov dword [ecx + 0x114], edx
jmp 0x3025778
movzx eax, word [ebp - 0x290]
cmp eax, 0x4944
jne 0x3025766
lea ecx, [ebp - 0x294]
push ecx
push 0x30
lea edx, [ebp - 0x34]
push edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [eax + 8]
push edx
call dword [0x30ef8a0]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x302573b
cmp dword [ebp - 0x294], 0x30
je 0x3025758
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [eax + 8]
push edx
push 0x30023ac
call dword [0x30ef88c]
add esp, 0xc
xor eax, eax
jmp 0x302578f
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x2c]
mov dword [eax + 0x110], ecx
jmp 0x3025778
push 0x300239c
call dword [0x30ef88c]
add esp, 4
xor eax, eax
jmp 0x302578f
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
add eax, 0x4914
push eax
call fcn.03049800
mov eax, 1
mov ecx, dword [ebp - 0x24c]
xor ecx, ebp
call fcn.030554d2
mov esp, ebp
pop ebp
ret 0xc