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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x18]
cmp eax, dword [ecx + 8]
jbe 0x4f3fe9
sub esp, 0x98
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 0x20]
lea edx, [0x506980]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [0x54fc18]
mov dword [esp + 8], ecx
call fcn.0040c190
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp], eax
movzx eax, word [esp + 0xa0]
mov word [esp + 4], ax
call fcn.004e9580
mov eax, dword [esp + 8]
test eax, eax
je 0x4f3791
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov eax, dword [eax]
mov dword [esp], eax
lea eax, [esp + 0x80]
mov dword [esp + 4], eax
call fcn.00404f50
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
test eax, eax
je 0x4f375a
cmp dword [eax + 8], 0x382e7edf
jne 0x4f371e
lea ebx, [0x501f20]
cmp eax, ebx
jne 0x4f371e
mov ebp, dword [ecx + 4]
mov esi, dword [ecx + 8]
mov edi, dword [ecx]
xor eax, eax
xor ecx, ecx
jmp 0x4f37c6
lea edx, [0x508280]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00408ea0
mov eax, dword [esp + 0xc]
test eax, eax
je 0x4f375a
mov ebx, dword [0x600048]
mov eax, ebx
mov ebx, dword [0x60004c]
xor ebp, ebp
xor edi, edi
xor esi, esi
mov ecx, ebx
lea ebx, [0x501f20]
jmp 0x4f37c6
lea eax, [0x508f00]
mov dword [esp], eax
call fcn.0040b1b0
mov ebx, dword [esp + 4]
mov dword [ebx + 4], 0xf
lea eax, [0x521719]
mov dword [ebx], eax
xor ebp, ebp
xor edi, edi
xor esi, esi
lea eax, [0x5500d4]
mov ecx, ebx
lea ebx, [0x501f20]
jmp 0x4f37c6
lea eax, [0x508f00]
mov dword [esp], eax
call fcn.0040b1b0
mov ebx, dword [esp + 4]
mov dword [ebx + 4], 0xe
lea eax, [0x5212f8]
mov dword [ebx], eax
xor ebp, ebp
xor edi, edi
xor esi, esi
lea eax, [0x5500d4]
mov ecx, ebx
lea ebx, [0x501f20]
test eax, eax
jne 0x4f3f30
test ebp, ebp
jbe 0x4f3fdf
cmp byte [edi], 5
jne 0x4f3ef9
cmp ebp, 1
jbe 0x4f3fd3
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], ebp
mov dword [esp + 0x6c], edi
mov dword [esp + 0x64], ecx
mov dword [esp + 0x30], eax
movzx ebx, byte [edi + 1]
cmp bl, 3
ja 0x4f380d
test bl, bl
jne 0x4f38a7
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
lea eax, [0x505d40]
mov dword [esp + 0x88], eax
lea ecx, [0x54fcf0]
mov dword [esp + 0x8c], ecx
movzx ecx, byte [edi + 1]
lea edx, [0x505f00]
mov dword [esp + 0x90], edx
lea ebx, [0x5f4060]
lea ecx, [ebx + ecx*8]
mov dword [esp + 0x94], ecx
lea ecx, [esp + 0x88]
mov dword [esp], ecx
mov dword [esp + 4], 2
mov dword [esp + 8], 2
call fcn.004b94a0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x64]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x6c]
movzx ebx, byte [0x626300]
test bl, bl
je 0x4f3979
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
lea edx, [0x505d40]
mov dword [esp + 0x88], edx
lea ebx, [0x54fcf8]
mov dword [esp + 0x8c], ebx
mov ebx, dword [0x5fc0e4]
mov esi, dword [0x5fc0e0]
movzx ebp, byte [edi + 1]
dec ebp
xchg ebp, eax
movzx eax, al
xchg ebp, eax
cmp ebx, ebp
jbe 0x4f3fca
lea eax, [esi + ebp*8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00408c20
mov eax, dword [esp + 8]
lea ecx, [0x505d40]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], eax
lea eax, [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 4], 2
mov dword [esp + 8], 2
call fcn.004b94a0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x64]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x6c]
cmp byte [edi + 1], 1
jne 0x4f3ec2
cmp ebp, 3
jbe 0x4f3fbe
movzx ebx, byte [edi + 3]
cmp bl, 1
jne 0x4f399c
mov ebx, 0xa
jmp 0x4f39c1
cmp bl, 3
jne 0x4f39b3
cmp ebp, 4
jbe 0x4f3fb2
movzx ebx, byte [edi + 4]
add ebx, 7
jmp 0x4f39c1
cmp bl, 4
jne 0x4f3e8b
mov ebx, 0x16
mov dword [esp + 0x44], ebx
cmp ebx, ebp
je 0x4f3bb3
jle 0x4f3e54
mov eax, dword [esp + 0x9c]
mov eax, dword [eax + 0x20]
lea ecx, [0x506980]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x54fc18]
mov dword [esp + 8], eax
call fcn.0040c190
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp], eax
movzx eax, word [esp + 0xa0]
mov word [esp + 4], ax
call fcn.004e9580
mov eax, dword [esp + 8]
test eax, eax
je 0x4f3adb
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov eax, dword [eax]
mov dword [esp], eax
lea eax, [esp + 0x80]
mov dword [esp + 4], eax
call fcn.00404f50
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
test eax, eax
je 0x4f3aae
cmp dword [eax + 8], 0x382e7edf
jne 0x4f3a7e
lea edx, [0x501f20]
cmp eax, edx
jne 0x4f3a7e
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
xor edx, edx
xor ebx, ebx
jmp 0x4f3b06
lea edx, [0x508280]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00408ea0
mov eax, dword [esp + 0xc]
test eax, eax
je 0x4f3aae
mov edx, dword [0x600048]
mov ebx, dword [0x60004c]
xor eax, eax
xor ecx, ecx
jmp 0x4f3b06
lea eax, [0x508f00]
mov dword [esp], eax
call fcn.0040b1b0
mov ebx, dword [esp + 4]
mov dword [ebx + 4], 0xf
lea eax, [0x521719]
mov dword [ebx], eax
lea edx, [0x5500d4]
xor eax, eax
xor ecx, ecx
jmp 0x4f3b06
lea eax, [0x508f00]
mov dword [esp], eax
call fcn.0040b1b0
mov ebx, dword [esp + 4]
mov dword [ebx + 4], 0xe
lea eax, [0x5212f8]
mov dword [ebx], eax
lea edx, [0x5500d4]
xor eax, eax
xor ecx, ecx
test edx, edx
jne 0x4f3e29
mov dword [esp + 0x60], ebx
mov dword [esp + 0x2c], edx
mov ebp, dword [esp + 0x38]
lea esi, [ebp + eax]
mov dword [esp + 0x4c], esi
mov edi, dword [esp + 0x3c]
cmp edi, esi
jb 0x4f3b3c
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x58]
jmp 0x4f3b80
mov dword [esp + 0x40], eax
mov dword [esp + 0x70], ecx
lea eax, [0x505f00]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], esi
call fcn.00448790
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x70]
mov ebp, dword [esp + 0x38]
mov dword [esp + 0x78], edi
mov edi, esi
mov dword [esp + 0x50], edi
mov edx, dword [esp + 0x78]
lea ebx, [edx + ebp]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00461980
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x78]
mov ebp, dword [esp + 0x4c]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x60]
cmp ebp, 3
jbe 0x4f3fa6
mov dword [esp + 0x54], eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x50], esi
mov dword [esp + 0x78], edi
mov edx, ebx
movzx ebx, byte [edi + 3]
cmp bl, 1
jne 0x4f3c1f
cmp esi, 8
jb 0x4f3f9a
lea eax, [edi + 4]
mov dword [esp], eax
mov dword [esp + 4], 4
lea eax, [esi - 4]
mov dword [esp + 8], eax
call fcn.004cd890
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x44]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x78]
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x7c]
jmp 0x4f3cdc
cmp bl, 3
jne 0x4f3c8e
cmp ebp, 4
jbe 0x4f3f8e
movzx ebx, byte [edi + 4]
add ebx, 5
movzx ebx, bl
cmp esi, ebx
jb 0x4f3f85
cmp ebx, 5
jb 0x4f3f79
mov dword [esp], 0
lea eax, [esi - 5]
neg eax
sar eax, 0x1f
and eax, 5
add eax, edi
mov dword [esp + 4], eax
lea eax, [ebx - 5]
mov dword [esp + 8], eax
call fcn.0044e200
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x44]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x78]
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x7c]
jmp 0x4f3cdc
cmp bl, 4
jne 0x4f3cd8
cmp esi, 0x14
jb 0x4f3f6d
lea eax, [edi + 4]
mov dword [esp], eax
mov dword [esp + 4], 0x10
lea eax, [esi - 4]
mov dword [esp + 8], eax
call fcn.004cd890
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x44]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x78]
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x7c]
jmp 0x4f3cdc
xor ebx, ebx
xor ebp, ebp
cmp esi, edx
jb 0x4f3f64
mov dword [esp + 0x48], ebx
lea ebx, [edx - 2]
cmp edx, ebx
jb 0x4f3f5b
mov dword [esp + 0x74], ebp
sub esi, edx
lea eax, [esi + 2]
neg eax
sar eax, 0x1f
and ebx, eax
movzx eax, byte [edi + ebx + 1]
movzx ecx, byte [edi + ebx]
shl ecx, 8
or eax, ecx
movzx eax, ax
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.00498a00
mov eax, dword [esp + 0xc]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0x74]
mov dword [esp], edx
mov ebx, dword [esp + 0x48]
mov dword [esp + 4], ebx
mov byte [esp + 8], 0x3a
call fcn.004023b0
mov eax, dword [esp + 0xc]
test eax, eax
jl 0x4f3db8
mov dword [esp], 0
lea eax, [0x51f2b9]
mov dword [esp + 4], eax
mov dword [esp + 8], 1
mov eax, dword [esp + 0x74]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x10], eax
lea eax, [0x51f32f]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 2
mov eax, dword [esp + 0x68]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x20], eax
call fcn.0044e090
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
jmp 0x4f3dfe
mov dword [esp], 0
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
lea eax, [0x51f2b0]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
mov eax, dword [esp + 0x68]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], eax
call fcn.0044dff0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], ecx
mov eax, dword [esp + 0x54]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xb0], eax
add esp, 0x98
ret
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], ebx
add esp, 0x98
ret
mov eax, dword [0x5fffc8]
mov ecx, dword [0x5fffcc]
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], ecx
add esp, 0x98
ret
mov eax, dword [0x5fffa8]
mov ecx, dword [0x5fffac]
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], ecx
add esp, 0x98
ret
mov eax, dword [0x5fffb8]
mov ecx, dword [0x5fffbc]
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], ecx
add esp, 0x98
ret
mov eax, dword [0x5fffd0]
mov ecx, dword [0x5fffd4]
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], ecx
add esp, 0x98
ret
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], ecx
add esp, 0x98
ret
mov eax, ebx
mov ecx, edx
call fcn.00461170
mov ecx, edx
mov edx, esi
call fcn.00461150
mov ecx, 0x14
mov edx, esi
call fcn.00461150
mov eax, 5
mov ecx, ebx
call fcn.00461170
mov ecx, ebx
mov edx, esi
call fcn.00461150
mov eax, 4
mov ecx, ebp
call fcn.00461110
mov ecx, 8
mov edx, esi
call fcn.00461150
mov eax, 3
mov ecx, ebp
call fcn.00461110
mov eax, 4
mov ecx, ebp
call fcn.00461110
mov eax, 3
mov ecx, ebp
call fcn.00461110
mov eax, ebp
mov ecx, ebx
call fcn.00461110
mov eax, 1
mov ecx, ebp
call fcn.00461110
xor eax, eax
mov ecx, ebp
call fcn.00461110
nop
call fcn.0045fcc0
jmp fcn.004f3650