Function at 0x2fa010
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [0x5288b4]
sub esp, 0xc
push 0xffff
push 0x529bd8
push eax
call dword [0x528f8c]
xor eax, eax
cmp byte [0x31cfec], al
je 0x2fa040
inc eax
cmp byte [eax + 0x31cfec], 0
jne 0x2fa036
push esi
inc eax
call fcn.002f2930
mov esi, eax
test esi, esi
je 0x2fa059
push 0x31cfec
push esi
call dword [fcn.00529134]
push ebx
push edi
push 0x529bd8
call dword [fcn.00528fac]
mov ebx, eax
test esi, esi
je 0x2fa073
mov eax, esi
call fcn.002f2a20
lea eax, [ebx + 1]
call fcn.002f2930
mov edi, eax
mov dword [ebp - 0xc], edi
test edi, edi
je 0x2fa090
push 0x529bd8
push edi
call dword [fcn.00529134]
push 0x324c4c
call dword [fcn.00528fac]
lea esi, [ebx + eax]
lea eax, [esi + 1]
call fcn.002f2930
mov ebx, eax
test ebx, ebx
je 0x2fa0c4
test edi, edi
je 0x2fa0c4
push edi
push ebx
call dword [fcn.00529134]
push 0x324c4c
push ebx
call dword [fcn.0052909c]
mov ecx, dword [ebp + 0x10]
lea edi, [ecx + esi + 1]
mov eax, edi
call fcn.002f2930
mov esi, eax
test esi, esi
je 0x2fa0f5
test ebx, ebx
je 0x2fa0f5
cmp dword [ebp + 8], 0
je 0x2fa0f5
push ebx
push esi
call dword [fcn.00529134]
mov edx, dword [ebp + 8]
push edx
push esi
call dword [fcn.0052909c]
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x2fa101
call fcn.002f2a20
mov eax, edi
call fcn.002f2930
mov edi, eax
test edi, edi
je 0x2fa11a
test esi, esi
je 0x2fa11a
push esi
push edi
call dword [fcn.00529134]
mov eax, esi
call fcn.002f2a20
mov eax, ebx
call fcn.002f2a20
mov eax, dword [0x5288b4]
push edi
push eax
call dword [0x528f44]
mov eax, edi
call fcn.002f2a20
mov ecx, dword [0x528d78]
push ecx
call dword [fcn.00528f30]
mov esi, eax
mov dword [0x528ea8], esi
test esi, esi
je 0x2fa2dc
movzx edi, word [esi]
mov edx, 0x5a4d
cmp di, dx
jne 0x2fa195
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x2fa195
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0x2fa195
mov edx, dword [0x528a90]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.002f75d0
add esp, 0xc
jmp 0x2fa197
xor eax, eax
mov ecx, 0x5a4d
mov dword [0x528ea0], eax
cmp di, cx
jne 0x2fa1d5
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x2fa1d5
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0x2fa1d5
mov ecx, dword [0x528d20]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.002f75d0
add esp, 0xc
jmp 0x2fa1d7
xor eax, eax
mov dword [0x528eb8], eax
mov eax, 0x5a4d
cmp di, ax
jne 0x2fa215
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x2fa215
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0x2fa215
mov edx, dword [0x5289e4]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.002f75d0
add esp, 0xc
jmp 0x2fa217
xor eax, eax
mov ecx, 0x5a4d
mov dword [fcn.00528e70], eax
cmp di, cx
jne 0x2fa255
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x2fa255
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0x2fa255
mov ecx, dword [0x528984]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.002f75d0
add esp, 0xc
jmp 0x2fa257
xor eax, eax
mov dword [fcn.00528e98], eax
mov eax, 0x5a4d
cmp di, ax
jne 0x2fa295
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x2fa295
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0x2fa295
mov edx, dword [0x528e20]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.002f75d0
add esp, 0xc
jmp 0x2fa297
xor eax, eax
mov ecx, 0x5a4d
mov dword [fcn.00528eac], eax
cmp di, cx
jne 0x2fa2d5
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x2fa2d5
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0x2fa2d5
mov ecx, dword [0x528b10]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.002f75d0
add esp, 0xc
jmp 0x2fa2d7
xor eax, eax
mov dword [fcn.00528e90], eax
cmp dword [0x528ea0], 0
pop edi
pop ebx
je 0x2fa328
cmp dword [0x528eb8], 0
je 0x2fa328
cmp dword [fcn.00528e70], 0
je 0x2fa328
cmp dword [fcn.00528eac], 0
je 0x2fa328
cmp dword [fcn.00528e90], 0
je 0x2fa328
cmp dword [fcn.00528e98], 0
je 0x2fa328
mov eax, dword [ebp + 8]
mov esi, 1
call fcn.002f2a20
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
xor esi, esi
call fcn.002f2a20
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret