Function at 0xba010
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [0x2e88b4]
sub esp, 0xc
push 0xffff
push 0x2e9bd8
push eax
call dword [0x2e8f8c]
xor eax, eax
cmp byte [0xdcfec], al
je 0xba040
inc eax
cmp byte [eax + 0xdcfec], 0
jne 0xba036
push esi
inc eax
call fcn.000b2930
mov esi, eax
test esi, esi
je 0xba059
push 0xdcfec
push esi
call dword [fcn.002e9134]
push ebx
push edi
push 0x2e9bd8
call dword [fcn.002e8fac]
mov ebx, eax
test esi, esi
je 0xba073
mov eax, esi
call fcn.000b2a20
lea eax, [ebx + 1]
call fcn.000b2930
mov edi, eax
mov dword [ebp - 0xc], edi
test edi, edi
je 0xba090
push 0x2e9bd8
push edi
call dword [fcn.002e9134]
push 0xe4c4c
call dword [fcn.002e8fac]
lea esi, [ebx + eax]
lea eax, [esi + 1]
call fcn.000b2930
mov ebx, eax
test ebx, ebx
je 0xba0c4
test edi, edi
je 0xba0c4
push edi
push ebx
call dword [fcn.002e9134]
push 0xe4c4c
push ebx
call dword [fcn.002e909c]
mov ecx, dword [ebp + 0x10]
lea edi, [ecx + esi + 1]
mov eax, edi
call fcn.000b2930
mov esi, eax
test esi, esi
je 0xba0f5
test ebx, ebx
je 0xba0f5
cmp dword [ebp + 8], 0
je 0xba0f5
push ebx
push esi
call dword [fcn.002e9134]
mov edx, dword [ebp + 8]
push edx
push esi
call dword [fcn.002e909c]
mov eax, dword [ebp - 0xc]
test eax, eax
je 0xba101
call fcn.000b2a20
mov eax, edi
call fcn.000b2930
mov edi, eax
test edi, edi
je 0xba11a
test esi, esi
je 0xba11a
push esi
push edi
call dword [fcn.002e9134]
mov eax, esi
call fcn.000b2a20
mov eax, ebx
call fcn.000b2a20
mov eax, dword [0x2e88b4]
push edi
push eax
call dword [0x2e8f44]
mov eax, edi
call fcn.000b2a20
mov ecx, dword [0x2e8d78]
push ecx
call dword [fcn.002e8f30]
mov esi, eax
mov dword [0x2e8ea8], esi
test esi, esi
je 0xba2dc
movzx edi, word [esi]
mov edx, 0x5a4d
cmp di, dx
jne 0xba195
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0xba195
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0xba195
mov edx, dword [0x2e8a90]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.000b75d0
add esp, 0xc
jmp 0xba197
xor eax, eax
mov ecx, 0x5a4d
mov dword [0x2e8ea0], eax
cmp di, cx
jne 0xba1d5
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0xba1d5
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0xba1d5
mov ecx, dword [0x2e8d20]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.000b75d0
add esp, 0xc
jmp 0xba1d7
xor eax, eax
mov dword [0x2e8eb8], eax
mov eax, 0x5a4d
cmp di, ax
jne 0xba215
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0xba215
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0xba215
mov edx, dword [0x2e89e4]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.000b75d0
add esp, 0xc
jmp 0xba217
xor eax, eax
mov ecx, 0x5a4d
mov dword [fcn.002e8e70], eax
cmp di, cx
jne 0xba255
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0xba255
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0xba255
mov ecx, dword [0x2e8984]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.000b75d0
add esp, 0xc
jmp 0xba257
xor eax, eax
mov dword [fcn.002e8e98], eax
mov eax, 0x5a4d
cmp di, ax
jne 0xba295
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0xba295
mov ecx, 0x10b
cmp word [eax + esi + 0x18], cx
jne 0xba295
mov edx, dword [0x2e8e20]
mov eax, dword [eax + esi + 0x78]
push edx
push esi
push eax
call fcn.000b75d0
add esp, 0xc
jmp 0xba297
xor eax, eax
mov ecx, 0x5a4d
mov dword [fcn.002e8eac], eax
cmp di, cx
jne 0xba2d5
mov eax, dword [esi + 0x3c]
cmp dword [eax + esi], 0x4550
jne 0xba2d5
mov edx, 0x10b
cmp word [eax + esi + 0x18], dx
jne 0xba2d5
mov ecx, dword [0x2e8b10]
mov edx, dword [eax + esi + 0x78]
push ecx
push esi
push edx
call fcn.000b75d0
add esp, 0xc
jmp 0xba2d7
xor eax, eax
mov dword [fcn.002e8e90], eax
cmp dword [0x2e8ea0], 0
pop edi
pop ebx
je 0xba328
cmp dword [0x2e8eb8], 0
je 0xba328
cmp dword [fcn.002e8e70], 0
je 0xba328
cmp dword [fcn.002e8eac], 0
je 0xba328
cmp dword [fcn.002e8e90], 0
je 0xba328
cmp dword [fcn.002e8e98], 0
je 0xba328
mov eax, dword [ebp + 8]
mov esi, 1
call fcn.000b2a20
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
xor esi, esi
call fcn.000b2a20
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret