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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4f1b39
sub esp, 0x74
lea eax, [0x691500]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x88]
mov ebp, dword [esp + 0x80]
mov esi, dword [esp + 0x84]
mov edi, dword [esp + 0x7c]
jmp 0x4f18d5
mov eax, dword [esp + 0x30]
lea esi, [eax - 0x10]
mov eax, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 0x10
mov ecx, dword [esp + 0x44]
lea edi, [ecx + esi]
lea ebp, [edx - 0x10]
mov ecx, dword [esp + 0x38]
lea edx, [ecx - 0x10]
mov ecx, edx
neg edx
sar edx, 0x1f
and edx, 0x10
mov ebx, dword [esp + 0x48]
add ebx, edx
mov edx, dword [esp + 0x34]
add edx, 0xfffffff0
mov esi, eax
mov eax, dword [esp + 0x4c]
mov eax, ecx
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x30], esi
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x44], edi
cmp ecx, 0x10
jl 0x4f19fb
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x94]
test byte [ebx], al
mov ebp, dword [ecx + 4]
mov edx, dword [edx + 0x18]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x18], 0x10
call edx
nop
mov eax, dword [esp + 0x94]
movzx ecx, byte [eax + 0xf]
movzx edx, byte [eax + 0xe]
shl edx, 8
or ecx, edx
movzx edx, byte [eax + 0xd]
shl edx, 0x10
or ecx, edx
movzx edx, byte [eax + 0xc]
shl edx, 0x18
or edx, ecx
lea ecx, [edx + 1]
mov edx, ecx
shr ecx, 0x18
mov byte [eax + 0xc], cl
mov ecx, edx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov edx, ecx
shr ecx, 8
mov byte [eax + 0xe], cl
mov byte [eax + 0xf], dl
nop
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x50], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x54], edx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x58], ebx
mov ebp, dword [esp + 0x48]
mov dword [esp + 0x68], ebp
mov esi, dword [esp + 0x34]
mov dword [esp + 0x6c], esi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x70], edi
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], 0x10
mov dword [esp + 0x64], 0x10
mov eax, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x3c]
jmp 0x4f1aec
cmp edx, 0x10
jae 0x4f1888
jmp 0x4f1b0e
test ecx, ecx
je 0x4f1ad6
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x94]
test byte [ebx], al
mov ecx, dword [ecx + 4]
mov edx, dword [edx + 0x18]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x18], 0x10
call edx
nop
mov eax, dword [esp + 0x94]
movzx ecx, byte [eax + 0xf]
movzx edx, byte [eax + 0xe]
shl edx, 8
or ecx, edx
movzx edx, byte [eax + 0xd]
shl edx, 0x10
or ecx, edx
movzx edx, byte [eax + 0xc]
shl edx, 0x18
or edx, ecx
lea ecx, [edx + 1]
mov edx, ecx
shr ecx, 0x18
mov byte [eax + 0xc], cl
mov ecx, edx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov edx, ecx
shr ecx, 8
mov byte [eax + 0xe], cl
mov byte [eax + 0xf], dl
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0x10
mov dword [esp + 0x20], 0x10
call fcn.004f1f60
add esp, 0x74
ret
mov dword [esi + ebx*4], edx
lea edx, [ebx + 1]
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
cmp ebx, 4
jge 0x4f19ed
cmp ebx, ebp
jae 0x4f1b2f
mov edx, dword [edi + ebx*4]
cmp ebx, 0x10
jae 0x4f1b23
xor edx, dword [ecx + ebx*4]
cmp ebx, eax
jb 0x4f1ada
jmp 0x4f1b1a
mov eax, 0x10
mov ecx, edx
call fcn.004631b0
mov ecx, eax
mov eax, ebx
call fcn.00463150
mov eax, ebx
mov ecx, 0x10
call fcn.00463150
mov eax, ebx
mov ecx, ebp
call fcn.00463150
nop
call fcn.00461cc0
jmp fcn.004f1830