Function at 0x12fa010
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [0x15288b4]
sub esp, 0xc
push 0xffff
push 0x1529bd8
push eax
call dword [0x1528f8c]
xor eax, eax
cmp byte [0x131cfec], al
je 0x12fa040
inc eax
cmp byte [eax + 0x131cfec], 0
jne 0x12fa036
push esi
inc eax
call fcn.012f2930
mov esi, eax
test esi, esi
je 0x12fa059
push 0x131cfec
push esi
call dword [fcn.01529134]
push ebx
push edi
push 0x1529bd8
call dword [fcn.01528fac]
mov ebx, eax
test esi, esi
je 0x12fa073
mov eax, esi
call fcn.012f2a20
lea eax, [ebx + 1]
call fcn.012f2930
mov edi, eax
mov dword [ebp - 0xc], edi
test edi, edi
je 0x12fa090
push 0x1529bd8
push edi
call dword [fcn.01529134]
push 0x1324c4c
call dword [fcn.01528fac]
lea esi, [ebx + eax]
lea eax, [esi + 1]
call fcn.012f2930
mov ebx, eax
test ebx, ebx
je 0x12fa0c4
test edi, edi
je 0x12fa0c4
push edi
push ebx
call dword [fcn.01529134]
push 0x1324c4c
push ebx
call dword [fcn.0152909c]
mov ecx, dword [ebp + 0x10]
lea edi, [ecx + esi + 1]
mov eax, edi
call fcn.012f2930
mov esi, eax
test esi, esi
je 0x12fa0f5
test ebx, ebx
je 0x12fa0f5
cmp dword [ebp + 8], 0
je 0x12fa0f5
push ebx
push esi
call dword [fcn.01529134]
mov edx, dword [ebp + 8]
push edx
push esi
call dword [fcn.0152909c]
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x12fa101
call fcn.012f2a20
mov eax, edi
call fcn.012f2930
mov edi, eax
test edi, edi
je 0x12fa11a
test esi, esi
je 0x12fa11a
push esi
push edi
call dword [fcn.01529134]
mov eax, esi
call fcn.012f2a20
mov eax, ebx
call fcn.012f2a20
mov eax, dword [0x15288b4]
push edi
push eax
call dword [0x1528f44]
mov eax, edi
call fcn.012f2a20
mov ecx, dword [0x1528d78]
push ecx
call dword [fcn.01528f30]
mov esi, eax
mov dword [0x1528ea8], esi
test esi, esi
je 0x12fa2dc
movzx edi, word [esi]
mov edx, 0x5a4d
cmp di, dx
jne 0x12fa195
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x12fa195
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0x12fa195
mov edx, dword [0x1528a90]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.012f75d0
add esp, 0xc
jmp 0x12fa197
xor eax, eax
mov ecx, 0x5a4d
mov dword [0x1528ea0], eax
cmp di, cx
jne 0x12fa1d5
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x12fa1d5
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0x12fa1d5
mov ecx, dword [0x1528d20]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.012f75d0
add esp, 0xc
jmp 0x12fa1d7
xor eax, eax
mov dword [0x1528eb8], eax
mov eax, 0x5a4d
cmp di, ax
jne 0x12fa215
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x12fa215
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0x12fa215
mov edx, dword [0x15289e4]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.012f75d0
add esp, 0xc
jmp 0x12fa217
xor eax, eax
mov ecx, 0x5a4d
mov dword [fcn.01528e70], eax
cmp di, cx
jne 0x12fa255
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x12fa255
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0x12fa255
mov ecx, dword [0x1528984]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.012f75d0
add esp, 0xc
jmp 0x12fa257
xor eax, eax
mov dword [fcn.01528e98], eax
mov eax, 0x5a4d
cmp di, ax
jne 0x12fa295
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x12fa295
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0x12fa295
mov edx, dword [0x1528e20]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.012f75d0
add esp, 0xc
jmp 0x12fa297
xor eax, eax
mov ecx, 0x5a4d
mov dword [fcn.01528eac], eax
cmp di, cx
jne 0x12fa2d5
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0x12fa2d5
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0x12fa2d5
mov ecx, dword [0x1528b10]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.012f75d0
add esp, 0xc
jmp 0x12fa2d7
xor eax, eax
mov dword [fcn.01528e90], eax
cmp dword [0x1528ea0], 0
pop edi
pop ebx
je 0x12fa328
cmp dword [0x1528eb8], 0
je 0x12fa328
cmp dword [fcn.01528e70], 0
je 0x12fa328
cmp dword [fcn.01528eac], 0
je 0x12fa328
cmp dword [fcn.01528e90], 0
je 0x12fa328
cmp dword [fcn.01528e98], 0
je 0x12fa328
mov eax, dword [ebp + 8]
mov esi, 1
call fcn.012f2a20
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
xor esi, esi
call fcn.012f2a20
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret