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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x66154c
sub esp, 0x64
mov eax, 0
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + 0x10]
mov ebx, dword [ecx + 0xc]
mov ebp, dword [ecx + 0x14]
test edx, edx
jbe 0x661545
mov eax, dword [ebx + 4]
mov esi, dword [ebx]
test esi, esi
je 0x660ead
mov dword [esp + 0x44], edx
mov edi, ebp
mov ebp, dword [esi + 8]
cmp ebp, 0x36572e67
ja 0x6612f0
cmp ebp, 0xfa45894
jne 0x6612e3
lea edx, [0x8012c0]
cmp edx, esi
jne 0x6612d7
mov edx, eax
je 0x66124e
cmp ebp, 0x36572e67
jne 0x661247
lea ebp, [0x8011c0]
cmp ebp, esi
jne 0x66123b
mov eax, edx
je 0x6611c0
mov dword [esp + 0x48], eax
mov dword [esp + 0x40], esi
mov edx, dword [esp + 0x68]
mov dword [edx + 0xc], esi
mov ebx, dword [0xa8f2d0]
test ebx, ebx
jne 0x6611b3
mov dword [edx + 0x10], eax
mov eax, dword [ecx + 0x10]
mov ebx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0x14]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp], edx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x18], eax
call fcn.00660d30
mov eax, dword [esp + 0x40]
test eax, eax
je 0x660fad
mov ecx, dword [eax + 8]
cmp ecx, 0xa41916b6
ja 0x660fce
cmp ecx, 0x8e6cd13b
jne 0x660fc6
lea edx, [0x801240]
cmp edx, eax
jne 0x660f5e
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x90], eax
add esp, 0x64
ret
cmp ecx, 0xa41916b6
jne 0x660fc2
lea ecx, [0x8013c0]
cmp ecx, eax
jne 0x660fbb
mov ecx, dword [esp + 0x48]
jne 0x660fab
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00661560
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
add esp, 0x64
ret
test eax, eax
je 0x6614d9
mov eax, dword [eax + 4]
jmp 0x6614d9
mov ecx, 0
jmp 0x660f74
test eax, eax
jmp 0x660fad
cmp ecx, 0xa41916b6
jmp 0x660f64
cmp ecx, 0xc80c953b
jne 0x660fee
lea edx, [0x801480]
cmp edx, eax
jne 0x6611a9
mov edx, dword [esp + 0x48]
je 0x66110b
cmp ecx, 0xee1b4e4a
jne 0x6610a0
lea edx, [0x801140]
cmp edx, eax
jne 0x661101
mov edx, dword [esp + 0x48]
jne 0x6610a0
movzx ecx, byte [edx + 0xc]
lea edx, [0xa3e800]
lea eax, [edx + ecx]
movzx ecx, byte [0xa7d7a8]
test cl, cl
je 0x661098
lea ecx, [0x72d000]
mov dword [0xa7d7ac], ecx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x66108b
mov dword [0xa7d7b0], eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x661083
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x66106a
or edx, 0x80
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], edx
add esp, 0x64
ret
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x66106a
lea edi, [0xa7d7b0]
call fcn.0044c9e0
jmp 0x661046
lea ecx, [0x72d000]
jmp 0x661046
cmp ecx, 0xf46e0b19
jne 0x6610fa
lea ecx, [0x801380]
cmp ecx, eax
jne 0x6610f3
mov eax, dword [esp + 0x68]
mov dword [esp], eax
lea ecx, [0x79a02f]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x14
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.0065e7d0
mov eax, dword [esp + 0x40]
test eax, eax
jmp 0x660fad
test eax, eax
jmp 0x660fad
test eax, eax
jmp 0x660fad
mov edx, 0
jmp 0x66100c
test byte [edx], al
lea eax, [edx + 0x14]
mov dword [esp + 4], eax
lea eax, [0x730dc0]
mov dword [esp], eax
call fcn.00407570
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
test ecx, ecx
je 0x6611a1
movzx edx, byte [0xa7d7a8]
test dl, dl
je 0x66114f
mov dword [0xa7d7ac], ecx
mov edx, dword [0xa8f2d0]
test edx, edx
jne 0x661194
mov dword [0xa7d7b0], eax
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x66118c
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x661173
or edx, 0x80
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], edx
add esp, 0x64
ret
xor edx, edx
xor eax, eax
xor ecx, ecx
jmp 0x661173
lea edi, [0xa7d7b0]
call fcn.0044c9e0
jmp 0x66114f
xor ecx, ecx
xor edx, edx
xor eax, eax
jmp 0x661173
mov edx, 0
jmp 0x660fe8
lea edi, [edx + 0x10]
call fcn.0044c9e0
jmp 0x660ecd
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x44]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edi
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x28], eax
call fcn.00661a60
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ecx
add esp, 0x64
ret
mov eax, edx
mov edx, 0
jmp 0x660ea7
mov eax, edx
jmp 0x660ead
mov dword [esp + 0x1c], ebx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edi
mov edx, dword [esp + 0x68]
mov dword [esp], edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x74]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
lea eax, [0x801200]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x30], eax
call fcn.006620b0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x34]
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ecx
add esp, 0x64
ret
mov edx, eax
mov eax, 0
jmp 0x660e85
cmp ebp, 0x36572e67
mov edx, eax
jmp 0x660e91
cmp ebp, 0x4f130308
jne 0x6614d2
lea edx, [0x801400]
cmp edx, esi
jne 0x6614c6
mov edx, eax
je 0x661479
cmp ebp, 0x7a206bd0
jne 0x661470
mov eax, ebx
lea ebx, [0x801540]
cmp ebx, esi
jne 0x661464
mov ebx, edx
je 0x6613e9
cmp ebp, 0xe4047a14
jne 0x6613e2
lea edx, [0x801280]
cmp edx, esi
jne 0x6613d6
mov edx, ebx
je 0x66135b
mov eax, edx
jmp 0x660ead
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edi
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x28], eax
call fcn.00661960
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], eax
add esp, 0x64
ret
mov edx, ebx
mov ebx, 0
jmp 0x661352
mov edx, ebx
jmp 0x661354
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edi
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x28], eax
call fcn.00661c80
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ecx
add esp, 0x64
ret
mov ebx, edx
mov edx, 0
jmp 0x661330
mov eax, ebx
mov ebx, edx
jmp 0x661336
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x74]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.006608f0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ecx
add esp, 0x64
ret
mov edx, eax
mov eax, 0
jmp 0x66130c
mov edx, eax
jmp 0x661312
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x68]
mov dword [esp], eax
lea eax, [0x79c956]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x19
lea eax, [esp + 0x5c]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.0065e7d0
lea eax, [0x730dc0]
mov dword [esp], eax
lea eax, [0x7fd570]
mov dword [esp + 4], eax
call fcn.004275c0
ud2
call fcn.004266e0
ud2
call fcn.0044b280
jmp fcn.00660e10