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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x32c
push ebx
push edi
push 0x103
lea eax, [ebp - 0x123]
push 0
push eax
mov byte [ebp - 0x124], 0
call fcn.0041c936
mov ebx, dword [ebp + 0xc]
push 0x2e
push ebx
mov dword [ebp - 0x20], 0
call fcn.0041cd76
sub eax, ebx
movzx edi, ax
push edi
lea ecx, [ebp - 0x124]
push ebx
push ecx
call fcn.0041c8b6
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp - 0x1c]
lea edx, [ebp - 0x32c]
push 0x104
push ecx
mov byte [ebp + edi - 0x124], 0
mov dword [ebp - 0x18], edx
call fcn.0041d726
mov edx, dword [ebp - 0x18]
push edx
call fcn.0041db46
add esp, 0x30
test eax, eax
je 0x416a60
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.0041ddc6
add esp, 8
test eax, eax
jne 0x416a60
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
lea edx, [ebp - 0x1c]
push 3
push edx
call fcn.0040ca66
mov eax, dword [ebp - 0x18]
push eax
lea ecx, [ebp - 0x124]
push ecx
call fcn.0041cf56
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x124]
push edx
push eax
call fcn.0040c9e6
mov ecx, dword [ebp - 0x18]
push ecx
mov esi, eax
call fcn.0041bfe6
add esp, 0x1c
mov dword [ebp - 8], eax
test esi, esi
je 0x416b31
lea ebx, [edi + ebx + 1]
push ebx
call fcn.0041cb86
add esp, 4
cmp eax, 1
jbe 0x416bd3
cmp byte [ebx], 0x23
jne 0x416bd3
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x20]
push edx
inc ebx
push ebx
push eax
call fcn.0041cb36
mov ecx, dword [ebp - 0x20]
add esp, 0xc
mov dword [ebp + 0xc], ecx
test ecx, ecx
je 0x416b31
mov eax, dword [esi + 0x3c]
mov edx, 0x5a4d
cmp word [esi], dx
jne 0x416b31
cmp dword [eax + esi], 0x4550
jne 0x416b31
mov edx, dword [eax + esi + 0x7c]
mov dword [ebp - 4], edx
test edx, edx
je 0x416b31
mov edi, dword [eax + esi + 0x78]
mov edx, dword [edi + esi + 0x24]
mov eax, dword [edi + esi + 0x20]
add edi, esi
add edx, esi
mov dword [ebp - 0xc], edx
mov edx, dword [edi + 0x1c]
mov ebx, ecx
add eax, esi
add edx, esi
shr ebx, 0x10
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], edx
test ebx, ebx
je 0x416b97
xor ebx, ebx
cmp dword [edi + 0x18], ebx
ja 0x416b3d
xor eax, eax
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + ebx*4]
mov ecx, dword [ebp + 0xc]
add eax, esi
push eax
push ecx
call fcn.0041d7c6
add esp, 8
test eax, eax
jne 0x416b60
inc ebx
cmp ebx, dword [edi + 0x18]
jb 0x416b3a
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0xc]
movzx eax, word [edx + ebx*2]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + eax*4]
add eax, esi
cmp eax, edi
jbe 0x416b33
add edi, dword [ebp - 4]
cmp eax, edi
jae 0x416b33
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp - 8]
push esi
push edx
push eax
mov eax, dword [ebp + 8]
push eax
call fcn.00416cc6
add esp, 0x14
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, dword [edi + 0x14]
jae 0x416b31
test ecx, ecx
je 0x416b31
mov eax, ecx
sub eax, dword [edi + 0x10]
mov eax, dword [edx + eax*4]
add eax, esi
cmp eax, edi
jbe 0x416b33
add edi, dword [ebp - 4]
cmp eax, edi
jae 0x416b33
mov edx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 8]
push esi
push ecx
push eax
push edx
call fcn.00416cc6
add esp, 0x14
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
test ebx, ebx
je 0x416b31
mov eax, dword [esi + 0x3c]
mov ecx, 0x5a4d
cmp word [esi], cx
jne 0x416b31
cmp dword [eax + esi], 0x4550
jne 0x416b31
mov ecx, dword [eax + esi + 0x7c]
mov dword [ebp - 4], ecx
test ecx, ecx
je 0x416b31
mov edi, dword [eax + esi + 0x78]
mov ecx, dword [edi + esi + 0x24]
mov eax, dword [edi + esi + 0x20]
add edi, esi
add ecx, esi
mov dword [ebp - 0xc], ecx
mov ecx, dword [edi + 0x1c]
mov edx, ebx
add eax, esi
add ecx, esi
shr edx, 0x10
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], ecx
test edx, edx
je 0x416c9f
cmp dword [edi + 0x18], 0
mov dword [ebp + 0xc], 0
jbe 0x416b31
jmp 0x416c49
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, dword [eax + ecx*4]
add edx, esi
push edx
push ebx
call fcn.0041d7c6
add esp, 8
test eax, eax
jne 0x416c74
mov eax, dword [ebp + 0xc]
inc eax
mov dword [ebp + 0xc], eax
cmp eax, dword [edi + 0x18]
jb 0x416c46
pop esi
pop edi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + 0xc]
movzx edx, word [eax + ecx*2]
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + edx*4]
add eax, esi
cmp eax, edi
jbe 0x416b33
add edi, dword [ebp - 4]
cmp eax, edi
jae 0x416b33
push ebx
jmp 0x416b7e
cmp ebx, dword [edi + 0x14]
jae 0x416b31
test ebx, ebx
je 0x416b31
mov edx, ebx
sub edx, dword [edi + 0x10]
mov eax, dword [ecx + edx*4]
jmp 0x416c84