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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xa8]
cmp eax, dword [ecx + 8]
jbe 0x4f7e32
sub esp, 0x128
mov eax, 0
lea edi, [esp + 0xc8]
call fcn.0044cd18
mov byte [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov eax, dword [esp + 0x138]
lea ecx, [esp + 0xf8]
cmp eax, ecx
je 0x4f7466
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
test ecx, ecx
jg 0x4f7dcf
mov ebx, ecx
xor ebp, ebp
xor esi, esi
cmp ecx, ebx
jle 0x4f7dc8
mov dword [esp + 0x44], ebp
mov dword [esp + 0x34], ecx
mov dword [esp + 0xa4], esi
cmp esi, edx
je 0x4f7431
mov dword [esp], esi
mov dword [esp + 4], edx
shl ebx, 2
mov dword [esp + 8], ebx
call fcn.0044d420
mov eax, dword [esp + 0x34]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x104], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0x138]
movzx ecx, byte [eax]
mov byte [esp + 0xf8], cl
mov byte [esp + 0xe8], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov ecx, dword [esp + 0x13c]
lea edx, [esp + 0xe8]
cmp ecx, edx
je 0x4f7dc1
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 4]
test edx, edx
jg 0x4f7d73
mov ebp, edx
xor esi, esi
xor edi, edi
cmp edx, ebp
jle 0x4f7d6c
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], edx
mov dword [esp + 0xa4], edi
cmp edi, ebx
je 0x4f74e7
mov dword [esp], edi
mov dword [esp + 4], ebx
shl ebp, 2
mov dword [esp + 8], ebp
call fcn.0044d420
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0xf4], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xec], eax
mov eax, dword [esp + 0x13c]
movzx ecx, byte [eax]
mov byte [esp + 0xe8], cl
mov ecx, dword [esp + 0x130]
test ecx, ecx
je 0x4f7d5b
mov edx, 1
mov byte [esp + 0x2d], dl
test dl, dl
jne 0x4f7cda
xor ebx, ebx
xor ebp, ebp
mov dword [esp + 0x90], ebp
mov dword [esp + 0xa0], ebx
mov byte [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
mov byte [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
mov byte [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov byte [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0
mov eax, dword [esp + 0x104]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xfc]
mov esi, dword [esp + 0xf4]
mov edi, dword [esp + 0xf0]
mov ebx, dword [esp + 0xec]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], esi
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004fc380
mov eax, dword [esp + 0x18]
test eax, eax
jge 0x4f7cb9
lea eax, [esp + 0xf8]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0xa0]
lea ebx, [esp + 0xe8]
mov dword [esp + 0x9c], ebx
mov dword [esp + 0x94], edx
mov dword [esp + 0x90], ecx
mov dword [esp + 0x98], eax
jmp 0x4f769a
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x9c]
mov ebp, dword [eax + 8]
cmp ebp, 1
jle 0x4f783a
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004f6b00
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
movzx ebp, byte [esp + 0x18]
test edx, edx
je 0x4f77c9
mov dword [esp + 0x60], eax
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x58], edx
mov dword [esp + 0x54], ebx
xchg ebp, eax
mov byte [esp + 0x2e], al
xchg ebp, eax
mov esi, dword [esp + 0x9c]
mov dword [esp], esi
mov edi, dword [esp + 0x98]
mov dword [esp + 4], edi
lea esi, [esp + 0xb8]
mov dword [esp + 8], esi
lea esi, [esp + 0xa8]
mov dword [esp + 0xc], esi
lea esi, [esp + 0x118]
mov dword [esp + 0x10], esi
lea esi, [esp + 0x108]
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], ebx
xchg ebp, eax
mov byte [esp + 0x28], al
xchg ebp, eax
call fcn.004f6d10
movzx eax, byte [esp + 0x2d]
test al, al
je 0x4f767e
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0x90]
mov dword [esp + 4], ecx
lea edx, [esp + 0xb8]
mov dword [esp + 8], edx
lea ebx, [esp + 0xa8]
mov dword [esp + 0xc], ebx
lea ebp, [esp + 0x118]
mov dword [esp + 0x10], ebp
lea esi, [esp + 0x108]
mov dword [esp + 0x14], esi
mov edi, dword [esp + 0x60]
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x5c]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x58]
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x54]
mov dword [esp + 0x24], edi
movzx edi, byte [esp + 0x2e]
xchg edi, eax
mov byte [esp + 0x28], al
xchg edi, eax
call fcn.004f6d10
movzx eax, byte [esp + 0x2d]
jmp 0x4f767e
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x94]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x90]
mov dword [esp + 0xc], ebx
lea ebp, [esp + 0xb8]
mov dword [esp + 0x10], ebp
lea esi, [esp + 0xa8]
mov dword [esp + 0x14], esi
lea edi, [esp + 0x118]
mov dword [esp + 0x18], edi
lea edi, [esp + 0x108]
mov dword [esp + 0x1c], edi
movzx edi, byte [esp + 0x2d]
xchg edi, eax
mov byte [esp + 0x20], al
xchg edi, eax
call fcn.004f7040
movzx eax, byte [esp + 0x2d]
jmp 0x4f767e
test ebp, ebp
jle 0x4f7ca7
mov ebp, dword [ebx + 8]
cmp ebp, 1
jg 0x4f7c3b
mov ebp, dword [eax + 8]
mov esi, dword [eax + 4]
test ebp, ebp
jle 0x4f7c29
mov ebp, dword [ebx + 8]
mov eax, ecx
mov ecx, dword [ebx + 4]
mov esi, dword [esi]
test ebp, ebp
jbe 0x4f7e2b
mov ecx, dword [ecx]
movzx ebp, byte [esp + 0x2d]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4f7c1e
mov ebp, 1
xor edi, edi
mov ebp, 1
mov dword [esp + 0x50], ebp
xor ebp, ebp
mov dword [esp + 0x48], ebp
mov edi, 1
xchg edi, eax
mov byte [esp + 0x2f], al
xchg edi, eax
mov ebp, 1
xor edi, edi
jmp 0x4f7909
mov eax, ecx
xor edx, edx
div esi
mov edx, eax
mov eax, ecx
mov ecx, edx
xor edx, edx
div esi
mov eax, edi
imul edi, ecx
add edi, ebp
mov ebp, edx
mov edx, dword [esp + 0x50]
imul ecx, edx
mov edx, dword [esp + 0x48]
add edx, ecx
mov ecx, edx
movzx edx, byte [esp + 0x2f]
xor edx, 1
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x48], eax
mov byte [esp + 0x2f], dl
mov eax, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
mov dword [esp + 0x50], ecx
mov ecx, esi
mov esi, ebp
mov ebp, dword [esp + 0x80]
test esi, esi
jne 0x4f78a9
mov dword [esp + 0x64], ecx
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x114]
test ebp, ebp
jne 0x4f7b88
xor ebp, ebp
mov dword [esp + 0x110], ebp
mov dword [esp + 0x114], edi
mov dword [esp + 0x10c], esi
mov ebp, dword [esp + 0x124]
mov esi, dword [esp + 0x11c]
mov edi, dword [esp + 0x48]
test edi, edi
jne 0x4f7b10
xor edi, edi
mov dword [esp + 0x120], edi
mov dword [esp + 0x124], ebp
mov dword [esp + 0x11c], esi
movzx eax, byte [esp + 0x2f]
mov ecx, eax
xor eax, 1
mov byte [esp + 0x108], al
mov byte [esp + 0x118], cl
lea eax, [esp + 0x108]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004f5510
lea eax, [esp + 0x118]
mov dword [esp], eax
mov ecx, dword [esp + 0x90]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f5510
mov eax, dword [esp + 0x94]
mov dword [esp], eax
lea ecx, [esp + 0x108]
mov dword [esp + 4], ecx
lea ecx, [esp + 0x118]
mov dword [esp + 8], ecx
call fcn.004f5070
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x9c]
mov edx, dword [ecx + 8]
mov ebx, dword [ecx + 4]
test edx, edx
jbe 0x4f7e16
mov dword [ebx], eax
mov edx, dword [esp + 0x130]
test edx, edx
je 0x4f7b02
mov ebx, dword [esp + 0x94]
movzx ebp, byte [ebx]
mov esi, dword [ebx + 0xc]
mov eax, ecx
mov ecx, dword [ebx + 8]
mov edi, ebx
mov ebx, dword [ebx + 4]
xchg ebp, eax
mov byte [edx], al
xchg ebp, eax
mov dword [edx + 8], ecx
mov dword [edx + 0xc], esi
mov ecx, dword [0xbc7270]
test ecx, ecx
jne 0x4f7ae9
mov dword [edx + 4], ebx
mov ecx, dword [esp + 0x134]
test ecx, ecx
jne 0x4f7a8a
movzx ecx, byte [eax]
mov edx, dword [eax + 8]
mov ebx, dword [eax + 4]
mov ebp, dword [eax + 0xc]
mov esi, dword [esp + 0x12c]
mov byte [esi], cl
mov dword [esi + 8], edx
mov dword [esi + 0xc], ebp
mov ecx, dword [0xbc7270]
test ecx, ecx
jne 0x4f7a7e
mov dword [esi + 4], ebx
mov dword [esp + 0x140], esi
add esp, 0x128
ret
lea edi, [esi + 4]
mov eax, ebx
call fcn.0044cc20
jmp 0x4f7a70
mov dword [esp], ecx
mov eax, dword [esp + 0x138]
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.004f5510
mov eax, dword [esp + 0x134]
mov dword [esp], eax
mov ecx, dword [esp + 0x9c]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004f52c0
mov eax, dword [esp + 0x134]
mov dword [esp], eax
mov dword [esp + 4], eax
mov eax, dword [esp + 0x13c]
mov dword [esp + 8], eax
call fcn.004f5cd0
mov eax, dword [esp + 0x9c]
jmp 0x4f7a48
lea ecx, [edx + 4]
mov edx, edi
mov edi, ecx
mov ebp, eax
mov eax, ebx
call fcn.0044cc20
mov eax, ebp
mov edi, edx
jmp 0x4f7a3d
mov eax, ecx
mov edi, dword [esp + 0x94]
jmp 0x4f7a3d
cmp ebp, 1
jl 0x4f7b3b
mov dword [esp + 0x78], eax
mov eax, 1
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x38]
test ebx, ebx
jbe 0x4f7e1d
mov dword [esi], edi
mov edi, ebx
jmp 0x4f795a
lea eax, [0x7715e0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 5
call fcn.00438c00
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0xc]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x9c]
mov edi, dword [esp + 0x48]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x90]
jmp 0x4f7b26
cmp edi, 1
jl 0x4f7bbc
mov dword [esp + 0x70], eax
mov eax, 1
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x30]
test ebx, ebx
jbe 0x4f7e24
mov dword [esi], ebp
mov ebx, dword [esp + 0x9c]
mov ebp, dword [esp + 0x30]
jmp 0x4f7929
mov dword [esp + 0x4c], ebp
lea eax, [0x7715e0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 5
call fcn.00438c00
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0xc]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x9c]
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x90]
jmp 0x4f7b9e
mov eax, ecx
xor edx, edx
div esi
mov ecx, esi
mov esi, edx
mov edx, dword [esp + 0x94]
test esi, esi
jne 0x4f7c0d
mov eax, ecx
jmp 0x4f79e5
mov ebp, dword [esp + 0x130]
test ebp, ebp
mov ecx, ebx
mov edx, ebp
jmp 0x4f7a05
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
lea ebp, [esp + 0xb8]
mov dword [esp + 0x10], ebp
lea ebp, [esp + 0xa8]
mov dword [esp + 0x14], ebp
lea ebp, [esp + 0x118]
mov dword [esp + 0x18], ebp
lea esi, [esp + 0x108]
mov dword [esp + 0x1c], esi
movzx edi, byte [esp + 0x2d]
xchg edi, eax
mov byte [esp + 0x20], al
xchg edi, eax
call fcn.004f7040
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x90]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x9c]
jmp 0x4f784e
mov ebp, dword [esp + 0x130]
test ebp, ebp
mov ecx, ebx
mov edx, ebp
jmp 0x4f7a05
lea eax, [esp + 0xe8]
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x90]
lea ebx, [esp + 0xf8]
jmp 0x4f7660
mov byte [esp + 0xd8], 0
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
lea eax, [esp + 0xd8]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 0
call fcn.004f4b00
mov ebp, dword [esp + 0xc]
mov byte [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 0
lea ebx, [esp + 0xc8]
jmp 0x4f7540
mov ebx, dword [esp + 0x134]
test ebx, ebx
setne dl
jmp 0x4f7530
mov ebp, edx
jmp 0x4f74c1
mov dword [esp + 0x6c], edx
mov dword [esp + 0x88], ebx
lea eax, [0x7715e0]
mov dword [esp], eax
mov dword [esp + 4], edx
lea ecx, [edx + 4]
mov dword [esp + 8], ecx
call fcn.00438c00
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0x138]
mov ecx, dword [esp + 0x13c]
mov ebx, dword [esp + 0x88]
mov ebp, dword [esp + 0x6c]
jmp 0x4f74b9
mov eax, ecx
jmp 0x4f751c
mov ebx, ecx
jmp 0x4f740b
mov dword [esp + 0x68], ecx
mov dword [esp + 0x8c], edx
lea eax, [0x7715e0]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea edx, [ecx + 4]
mov dword [esp + 8], edx
call fcn.00438c00
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x138]
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x68]
jmp 0x4f7403
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.00426630
ud2
call fcn.0044b4c0
jmp fcn.004f7380