Function at 0x4f1b50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x9ec7ac]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4f1df1
sub esp, 0x74
mov edx, dword [esp + 0x78]
mov eax, dword [edx + 0xc]
test eax, eax
je 0x4f1bac
mov ecx, dword [edx + 4]
cmp ecx, eax
jbe 0x4f1deb
mov ebx, dword [edx]
lea ebp, [eax + eax*2]
lea eax, [ebx + ebp*8]
cmp byte [eax], 3
jne 0x4f1ba0
lea ebp, [ebx + ebp*8 + 8]
mov ebp, dword [ebp]
xchg ebp, eax
test al, 4
xchg ebp, eax
je 0x4f1ba0
mov dword [esp + 0x10], ecx
xor eax, eax
jmp 0x4f1bc0
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
add ebx, 0x18
inc eax
mov ecx, dword [esp + 0x10]
cmp eax, ecx
jge 0x4f1c66
lea edi, [esp + 0x38]
mov esi, ebx
call fcn.00468bd4
mov ecx, dword [edx + 4]
mov ebp, dword [esp + 0x3c]
cmp ecx, ebp
jbe 0x4f1de4
mov esi, dword [edx]
lea ebp, [ebp + ebp*2]
lea ebp, [esi + ebp*8]
movzx edi, byte [esp + 0x38]
movzx ebp, byte [ebp]
xchg edi, eax
cmp al, 1
xchg edi, eax
ja 0x4f1c1c
xchg ebp, eax
cmp al, 4
xchg ebp, eax
je 0x4f1c42
mov ebp, dword [esp + 0x40]
cmp ebp, ecx
jae 0x4f1ddd
lea ecx, [ebp + ebp*2]
lea ecx, [esi + ecx*8]
cmp byte [ecx], 4
jne 0x4f1bb8
jmp 0x4f1c42
xchg edi, eax
cmp al, 3
xchg edi, eax
jne 0x4f1c35
xchg ebp, eax
cmp al, 4
xchg ebp, eax
jne 0x4f1bb8
mov ecx, dword [esp + 0x40]
test cl, 8
jne 0x4f1bb8
jmp 0x4f1c4e
xchg ebp, eax
cmp al, 4
xchg ebp, eax
jne 0x4f1bb8
jmp 0x4f1c5a
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp], edx
call fcn.004f0050
mov eax, dword [esp + 4]
mov dword [esp], eax
call fcn.004f0410
mov eax, dword [esp + 4]
test eax, eax
je 0x4f1c98
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
nop
mov ecx, dword [ecx + 4]
mov dword [esp + 0x10], ecx
xor ebx, ebx
jmp 0x4f1ca8
mov dword [esp + 0x7c], eax
add esp, 0x74
ret
add edx, 0x18
inc ebx
mov ecx, dword [esp + 0x10]
cmp ebx, ecx
jge 0x4f1c98
lea edi, [esp + 0x20]
mov esi, edx
call fcn.00468bd4
movzx ecx, byte [esp + 0x20]
cmp cl, 6
ja 0x4f1d05
cmp cl, 1
jbe 0x4f1ca0
mov ecx, dword [eax + 4]
cmp ebx, ecx
jae 0x4f1dd6
mov ecx, dword [eax]
lea ebp, [ebx + ebx*8]
mov dword [ecx + ebp*4 + 0x1c], 0
mov dword [ecx + ebp*4 + 0x20], 0
mov esi, dword [0x9eca70]
test esi, esi
je 0x4f1cfb
mov esi, dword [ecx + ebp*4 + 0x18]
call fcn.00468450
mov dword [edi], esi
mov dword [ecx + ebp*4 + 0x18], 0
jmp 0x4f1ca0
cmp cl, 7
je 0x4f1ca0
cmp cl, 0xa
ja 0x4f1ca0
mov ecx, dword [eax + 4]
cmp ebx, ecx
jae 0x4f1dcf
mov ecx, dword [eax]
lea ebp, [ebx + ebx*8]
mov dword [ecx + ebp*4 + 0x1c], 0
mov dword [ecx + ebp*4 + 0x20], 0
mov esi, dword [0x9eca70]
test esi, esi
je 0x4f1d44
mov esi, dword [ecx + ebp*4 + 0x18]
call fcn.00468450
mov dword [edi], esi
mov dword [ecx + ebp*4 + 0x18], 0
lea edi, [esp + 0x50]
xor eax, eax
call fcn.004686f7
lea edi, [esp + 0x50]
lea esi, [esp + 0x20]
call fcn.00468bd4
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 4]
cmp ebx, eax
jae 0x4f1dc6
mov eax, dword [ecx]
mov esi, dword [0x9eca70]
lea edi, [eax + ebp*4]
test esi, esi
je 0x4f1db4
mov dword [esp + 0xc], ebx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], edi
lea eax, [0x6fab60]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x50]
mov dword [esp + 8], eax
call fcn.00411960
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0xc]
mov edi, dword [esp + 0x18]
lea esi, [esp + 0x50]
call fcn.00468bb6
mov eax, dword [esp + 0x14]
jmp 0x4f1ca0
mov ecx, eax
mov eax, ebx
call fcn.004684c0
mov eax, ebx
call fcn.004684c0
mov eax, ebx
call fcn.004684c0
mov eax, ebp
call fcn.004684d0
mov eax, ebp
call fcn.004684d0
call fcn.004684c0
nop
call fcn.00467050
jmp fcn.004f1b50