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

Disassembly:
mov ecx, dword [0x663127c4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xc4]
cmp eax, dword [ecx + 8]
jbe 0x65f6ffa6
sub esp, 0x144
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 0
mov dword [esp + 0x16c], 0
mov eax, dword [esp + 0x14c]
test eax, eax
je 0x65f6f802
mov ecx, dword [esp + 0x15c]
test ecx, ecx
jne 0x65f6f45d
lea ecx, [0x662ed720]
mov edx, dword [ecx + 0x20]
test edx, edx
jne 0x65f6f46a
lea edx, [0x662ed760]
mov ebx, dword [ecx + 0x18]
cmp ebx, 3
jg 0x65f6f7c6
jl 0x65f6f78a
mov dword [esp + 0xe4], ecx
mov dword [esp + 0xcc], edx
mov ebx, dword [ecx + 4]
test ebx, ebx
jne 0x65f6f49a
mov ebx, dword [esp + 0x148]
jmp 0x65f6f4cf
mov edx, dword [ecx]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov edx, dword [esp + 0x148]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
call fcn.65f6efc0
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x65f6f752
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov ebx, eax
mov eax, ecx
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.65f701b0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x65f6f4eb
mov ecx, dword [esp + 0x18]
xor edx, edx
jmp 0x65f6f4ff
mov edx, dword [esp + 0xc]
test edx, edx
jbe 0x65f6ff9c
mov edx, dword [esp + 8]
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
test eax, eax
jne 0x65f6f730
mov dword [esp + 0xc8], edx
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x65f6f52f
mov ebx, dword [eax + 4]
jmp 0x65f6f56a
mov eax, dword [esp + 0x150]
mov dword [esp], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 8], eax
call fcn.65f6e930
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xcc]
mov edx, dword [esp + 0xc8]
test ecx, ecx
jne 0x65f6f572
xor ecx, ecx
jmp 0x65f6f5c8
mov dword [esp], ebx
mov dword [esp + 4], ecx
call fcn.65f701b0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x65f6f58e
mov ecx, dword [esp + 0x18]
xor edx, edx
jmp 0x65f6f5a2
mov edx, dword [esp + 0xc]
test edx, edx
jbe 0x65f6ff93
mov edx, dword [esp + 8]
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
test eax, eax
jne 0x65f6f70e
mov eax, dword [esp + 0xcc]
mov ecx, edx
mov edx, dword [esp + 0xc8]
mov dword [esp + 0xd4], ecx
mov ebx, dword [esp + 0xe4]
mov ebp, dword [ebx + 4]
test ebp, ebp
jne 0x65f6f5e1
xor ebp, ebp
jmp 0x65f6f62b
mov eax, dword [ebx]
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.65f701b0
mov eax, dword [esp + 0x14]
test eax, eax
je 0x65f6f5ff
mov ecx, dword [esp + 0x18]
xor edx, edx
jmp 0x65f6f613
mov edx, dword [esp + 0xc]
test edx, edx
jbe 0x65f6ff8a
mov edx, dword [esp + 8]
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
test eax, eax
jne 0x65f6f6ec
mov ebp, edx
mov dword [esp + 0xd0], ebp
mov dword [esp + 0x40], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
lea eax, [esp + 0x40]
mov dword [esp], eax
lea eax, [esp + 0x48]
mov dword [esp + 4], eax
lea eax, [esp + 0x4c]
mov dword [esp + 8], eax
call fcn.65f99e90
mov eax, dword [esp + 0x40]
cmp eax, 6
jae 0x65f6f676
mov eax, 1
jmp 0x65f6f684
jne 0x65f6f682
cmp dword [esp + 0x48], 1
setbe al
jmp 0x65f6f684
xor eax, eax
mov byte [esp + 0x37], al
call fcn.65f98980
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 0x2c]
mov edx, dword [esp]
mov dword [esp + 0x3c], edx
test ecx, ecx
jne 0x65f6f6a4
mov ecx, edx
mov dword [esp + 0x44], ecx
mov eax, dword [esp + 0xe4]
mov edx, dword [eax + 0x18]
mov dword [esp + 0x54], edx
lea ebx, [0x660f0c20]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.65f4be80
mov eax, dword [esp + 0xc]
mov dword [esp + 0xe0], eax
mov ecx, dword [esp + 0xe4]
mov edx, dword [ecx + 0x18]
mov dword [esp + 0x64], edx
xor ebx, ebx
jmp 0x65f6f83f
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
call fcn.65f35ec0
add esp, 0x144
ret
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
call fcn.65f35ec0
add esp, 0x144
ret
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
call fcn.65f35ec0
add esp, 0x144
ret
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
call fcn.65f35ec0
add esp, 0x144
ret
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
lea eax, [0x661ef61c]
mov dword [esp + 0x168], eax
lea eax, [0x661eec94]
mov dword [esp + 0x16c], eax
call fcn.65f35ec0
add esp, 0x144
ret
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
lea eax, [0x661ef61c]
mov dword [esp + 0x168], eax
lea eax, [0x661eec98]
mov dword [esp + 0x16c], eax
call fcn.65f35ec0
add esp, 0x144
ret
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
lea eax, [0x661ef61c]
mov dword [esp + 0x168], eax
lea eax, [0x661eec98]
mov dword [esp + 0x16c], eax
call fcn.65f35ec0
add esp, 0x144
ret
inc ebx
cmp ebx, edx
jge 0x65f6f97d
mov ebp, dword [ecx + 0x18]
cmp ebx, ebp
jae 0x65f6ff81
mov ebp, dword [ecx + 0x14]
mov ebp, dword [ebp + ebx*4]
test ebp, ebp
jbe 0x65f6f83e
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x3c]
cmp esi, edi
je 0x65f6f88f
movzx edx, byte [esp + 0x37]
test dl, dl
je 0x65f6f894
mov dword [esp + 0x60], ebp
and ebp, 0x10000003
cmp ebp, 3
jne 0x65f6f889
mov ebp, dword [esp + 0x60]
mov esi, edi
jmp 0x65f6f894
mov ebp, dword [esp + 0x60]
jmp 0x65f6f894
movzx edx, byte [esp + 0x37]
mov edx, dword [esp + 0x54]
cmp ebx, edx
jae 0x65f6ff78
mov dword [esp + 0x38], ebx
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
lea ecx, [eax + ebx*4]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0
mov byte [esp + 0x14], 1
mov dword [esp + 0x18], 2
call fcn.65f981a0
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x65f6f945
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0xe0]
mov edx, dword [ecx + eax*4]
mov dword [esp + 0x5c], edx
lea ebx, [0x660fbca0]
mov dword [esp], ebx
call fcn.65f0bca0
mov eax, dword [esp + 4]
lea ecx, [0x65f70030]
mov dword [eax], ecx
mov edx, dword [esp + 0x44]
mov dword [eax + 4], edx
mov ebx, dword [esp + 0x5c]
mov dword [eax + 8], ebx
mov dword [esp], eax
call fcn.65f35850
test eax, eax
jne 0x65f6f939
mov eax, dword [esp + 0xe0]
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x38]
jmp 0x65f6f83e
call fcn.65f35ec0
add esp, 0x144
ret
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
call fcn.65f35ec0
add esp, 0x144
ret
lea edi, [esp + 0xfc]
xor eax, eax
call fcn.65f64afe
mov dword [esp], 2
call fcn.65f712c0
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 8]
mov dword [esp + 0x140], edx
mov dword [esp + 0x168], ecx
mov dword [esp + 0x16c], ebx
test ebp, ebp
jne 0x65f6fbc5
mov eax, dword [esp + 0x140]
mov dword [esp + 0xe8], 0
mov dword [esp + 0xec], 0
lea ecx, [0x65f6fff0]
mov dword [esp + 0xe8], ecx
mov dword [esp + 0xec], eax
lea eax, [esp + 0xe8]
mov dword [esp + 0xb0], eax
lea eax, [esp + 0xa4]
mov dword [esp], eax
call fcn.65f35930
test eax, eax
jne 0x65f6fbb9
mov dword [esp + 0xfc], 0x48
mov dword [esp + 0x128], 0x100
mov edx, dword [esp + 0xcc]
movzx ebx, byte [edx]
test bl, bl
je 0x65f6fa53
mov dword [esp + 0x128], 0x101
mov word [esp + 0x12c], 0
mov ebx, dword [edx + 0x2c]
test ebx, ebx
je 0x65f6fac1
lea eax, [edx + 0x2c]
mov ecx, dword [esp + 0x140]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20000
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 4
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call fcn.65f99a00
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
test edx, edx
jne 0x65f6fb97
mov edx, dword [esp + 0xcc]
mov ebx, dword [esp + 0x54]
test ebx, ebx
jbe 0x65f6ff6f
mov ebp, dword [esp + 0xe0]
mov esi, dword [ebp]
mov dword [esp + 0x134], esi
cmp ebx, 1
jbe 0x65f6ff63
mov esi, dword [ebp + 4]
mov dword [esp + 0x138], esi
cmp ebx, 2
jbe 0x65f6ff57
mov eax, dword [ebp + 8]
mov dword [esp + 0x13c], eax
mov eax, dword [edx + 0x24]
lea ecx, [ebx + eax]
mov esi, dword [edx + 0x20]
cmp ebx, ecx
jb 0x65f6fb15
mov edi, ebx
jmp 0x65f6fb5d
mov dword [esp + 0x64], eax
mov dword [esp + 0xdc], esi
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
lea ecx, [0x660f0c20]
mov dword [esp + 0x10], ecx
call fcn.65f4bf40
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0xdc]
mov edi, dword [esp + 0x54]
mov ebp, eax
mov ebx, edx
mov eax, dword [esp + 0x64]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x50], ecx
mov dword [esp + 0xd8], ebp
lea edx, [ebp + edi*4]
mov dword [esp], edx
mov dword [esp + 4], esi
shl eax, 2
mov dword [esp + 8], eax
call fcn.65f65200
mov eax, dword [esp + 0xd8]
movzx ecx, byte [esp + 0x37]
mov edx, dword [esp + 0x50]
xor ebx, ebx
jmp 0x65f6fbe8
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
call fcn.65f35ec0
add esp, 0x144
ret
call fcn.65f35ec0
add esp, 0x144
ret
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
call fcn.65f35ec0
add esp, 0x144
ret
inc ebx
cmp ebx, edx
jge 0x65f6fc07
mov ebp, dword [eax + ebx*4]
test cl, cl
je 0x65f6fbe7
and ebp, 0x10000003
cmp ebp, 3
jne 0x65f6fbe7
mov dword [eax + ebx*4], 0
jmp 0x65f6fbe7
xor ecx, ecx
xor ebx, ebx
jmp 0x65f6fc0e
inc ecx
cmp ecx, edx
jge 0x65f6fc27
mov ebp, dword [eax + ecx*4]
test ebp, ebp
je 0x65f6fc0d
cmp ebx, edx
jae 0x65f6ff4e
mov dword [eax + ebx*4], ebp
inc ebx
jmp 0x65f6fc0d
mov edx, dword [esp + 0x54]
cmp ebx, edx
ja 0x65f6ff47
test ebx, ebx
je 0x65f6fc47
mov ebp, dword [esp + 0xcc]
movzx esi, byte [ebp + 0x1c]
xor esi, 1
jmp 0x65f6fc50
mov ebp, dword [esp + 0xcc]
xor esi, esi
xchg esi, eax
mov byte [esp + 0x36], al
xchg esi, eax
mov dword [esp + 0x58], ebx
xchg esi, eax
test al, al
xchg esi, eax
je 0x65f6fce6
test ebx, ebx
jbe 0x65f6ff3e
mov ecx, dword [esp + 0x140]
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20002
mov dword [esp + 0xc], eax
shl ebx, 2
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call fcn.65f99a00
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
test edx, edx
je 0x65f6fce6
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
call fcn.65f35ec0
add esp, 0x144
ret
mov eax, dword [esp + 0xe4]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.65f6ea20
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
test edx, edx
jne 0x65f6ff1c
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 0x10]
or ecx, 0x80400
test edx, edx
je 0x65f6fdd6
mov ebp, dword [eax + 0x14]
mov esi, dword [eax + 0x18]
mov dword [esp], edx
mov edx, dword [esp + 0xc8]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], esi
movzx edx, byte [esp + 0x36]
mov byte [esp + 0x14], dl
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ebx
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0x20], ecx
lea ecx, [esp + 0xfc]
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x70]
mov dword [esp + 0x28], ecx
call fcn.65f975a0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
jmp 0x65f6fe43
mov edx, dword [eax + 0x14]
mov ebp, dword [eax + 0x18]
mov esi, dword [esp + 0xc8]
mov dword [esp], esi
mov esi, dword [esp + 0xd4]
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
movzx edx, byte [esp + 0x36]
mov byte [esp + 0x10], dl
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ebx
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0x1c], ecx
lea ecx, [esp + 0xfc]
mov dword [esp + 0x20], ecx
lea ecx, [esp + 0x70]
mov dword [esp + 0x24], ecx
call fcn.65f97f50
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x168], eax
mov dword [esp + 0x16c], ecx
mov eax, dword [esp + 0x168]
test eax, eax
jne 0x65f6fefa
mov eax, dword [esp + 0x74]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
lea ecx, [0x65f6ffb0]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x68]
mov dword [esp + 0x8c], eax
lea eax, [esp + 0x80]
mov dword [esp], eax
call fcn.65f35930
test eax, eax
jne 0x65f6feee
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0xf4], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], eax
mov dword [esp + 0x168], 0
mov dword [esp + 0x16c], 0
call fcn.65f35ec0
add esp, 0x144
ret
call fcn.65f35ec0
add esp, 0x144
ret
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
call fcn.65f35ec0
add esp, 0x144
ret
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
call fcn.65f35ec0
add esp, 0x144
ret
xor eax, eax
mov ecx, eax
call fcn.65f649b0
mov ecx, ebx
call fcn.65f649f0
mov eax, ebx
mov ecx, edx
call fcn.65f649b0
mov eax, 2
mov ecx, eax
call fcn.65f649b0
mov eax, 1
mov ecx, eax
call fcn.65f649b0
xor eax, eax
mov ecx, eax
call fcn.65f649b0
mov eax, ebx
mov ecx, edx
call fcn.65f649b0
mov eax, ebx
mov ecx, ebp
call fcn.65f649b0
xor eax, eax
mov ecx, eax
call fcn.65f649b0
xor eax, eax
mov ecx, eax
call fcn.65f649b0
xor eax, eax
mov ecx, eax
call fcn.65f649b0
nop
call fcn.65f63530
jmp fcn.65f6f3f0