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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0xac
mov ebx, ecx
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x6cc2f2
mov dword [esp + 4], 0
lea ecx, [esp + 0x1c]
mov dword [esp], fcn.006e8368
call fcn.006ebda8
mov dword [esp + 4], 1
xor eax, eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x14], eax
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], eax
mov byte [esp + 0x24], al
mov dword [esp + 0x18], 2
call fcn.00736414
lea ecx, [esp + 0x2c]
call fcn.00736414
lea ecx, [esp + 0x30]
call fcn.00736414
lea ecx, [esp + 0x34]
call fcn.006ebda8
lea ecx, [esp + 0x3c]
call fcn.006ebda8
lea eax, [esp + 0x34]
lea edx, [esp + 0x44]
lea ebp, [esp + 0x28]
lea esi, [esp + 0x2c]
lea edi, [esp + 0x30]
push edi
push esi
push ebp
push edx
push eax
mov ecx, dword [esp + 0xd4]
call fcn.006f1974
movzx eax, al
test eax, eax
jne 0x6cb7f0
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x6cb737
mov dword [esp + 0x3c], 0
je 0x6cb737
push 1
call fcn.00433260
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x6cb750
mov dword [esp + 0x40], 0
je 0x6cb750
push 1
call fcn.00433290
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6cb769
mov dword [esp + 0x34], 0
je 0x6cb769
push 1
call fcn.00433260
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x6cb782
mov dword [esp + 0x38], 0
je 0x6cb782
push 1
call fcn.00433290
lea ecx, [esp + 0x30]
call fcn.00701810
lea ecx, [esp + 0x2c]
call fcn.00701810
lea ecx, [esp + 0x28]
call fcn.00701810
mov dword [esp], fcn.006e8368
lea ecx, [esp]
call fcn.006e8608
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6cb7c5
mov dword [esp + 0x1c], 0
je 0x6cb7c5
push 1
call fcn.00433260
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x6cb7de
je 0x6cb7de
mov dword [esp + 0x20], 0
push 1
call fcn.00433290
mov eax, 1
add esp, 0xac
pop ebx
pop ebp
pop esi
pop edi
ret 8
mov ecx, dword [ebx + 0xc]
lea eax, [esp + 0x34]
push eax
call fcn.006d5da4
movzx eax, al
test eax, eax
jne 0x6cb8da
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x6cb821
mov dword [esp + 0x3c], 0
je 0x6cb821
push 1
call fcn.00433260
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x6cb83a
mov dword [esp + 0x40], 0
je 0x6cb83a
push 1
call fcn.00433290
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6cb853
mov dword [esp + 0x34], 0
je 0x6cb853
push 1
call fcn.00433260
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x6cb86c
mov dword [esp + 0x38], 0
je 0x6cb86c
push 1
call fcn.00433290
lea ecx, [esp + 0x30]
call fcn.00701810
lea ecx, [esp + 0x2c]
call fcn.00701810
lea ecx, [esp + 0x28]
call fcn.00701810
mov dword [esp], fcn.006e8368
lea ecx, [esp]
call fcn.006e8608
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6cb8af
mov dword [esp + 0x1c], 0
je 0x6cb8af
push 1
call fcn.00433260
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x6cb8c8
je 0x6cb8c8
mov dword [esp + 0x20], 0
push 1
call fcn.00433290
mov eax, 1
add esp, 0xac
pop ebx
pop ebp
pop esi
pop edi
ret 8
lea ecx, [esp]
lea eax, [esp + 0x34]
xor edx, edx
push 0x58585858
push edx
push edx
push edx
push eax
call fcn.006e8368
test eax, eax
je 0x6cb9cb
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x6cb912
mov dword [esp + 0x3c], 0
je 0x6cb912
push 1
call fcn.00433260
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x6cb92b
mov dword [esp + 0x40], 0
je 0x6cb92b
push 1
call fcn.00433290
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6cb944
mov dword [esp + 0x34], 0
je 0x6cb944
push 1
call fcn.00433260
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x6cb95d
mov dword [esp + 0x38], 0
je 0x6cb95d
push 1
call fcn.00433290
lea ecx, [esp + 0x30]
call fcn.00701810
lea ecx, [esp + 0x2c]
call fcn.00701810
lea ecx, [esp + 0x28]
call fcn.00701810
mov dword [esp], fcn.006e8368
lea ecx, [esp]
call fcn.006e8608
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6cb9a0
mov dword [esp + 0x1c], 0
je 0x6cb9a0
push 1
call fcn.00433260
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x6cb9b9
je 0x6cb9b9
mov dword [esp + 0x20], 0
push 1
call fcn.00433290
mov eax, 1
add esp, 0xac
pop ebx
pop ebp
pop esi
pop edi
ret 8
lea ecx, [ebx + 0x60]
mov eax, dword [ebx + 0x60]
mov dword [esp + 0x90], ecx
call dword [eax + 0x24]
mov dword [ebx + 0x5c], 0
lea ecx, [ebx + 0x98]
mov eax, dword [ebx + 0x98]
mov dword [esp + 0x94], ecx
call dword [eax + 0x24]
mov dword [ebx + 0x94], 0
lea ecx, [ebx + 0xd0]
mov eax, dword [ebx + 0xd0]
mov dword [esp + 0x98], ecx
call dword [eax + 0x24]
mov dword [ebx + 0xcc], 0
lea ecx, [ebx + 0x108]
mov eax, dword [ebx + 0x108]
mov dword [esp + 0x9c], ecx
call dword [eax + 0x24]
mov dword [ebx + 0x104], 0
lea ecx, [ebx + 0x140]
mov eax, dword [ebx + 0x140]
mov dword [esp + 0xa0], ecx
call dword [eax + 0x24]
mov dword [ebx + 0x13c], 0
lea ecx, [ebx + 0x178]
mov eax, dword [ebx + 0x178]
mov dword [esp + 0xa4], ecx
call dword [eax + 0x24]
xor eax, eax
xor esi, esi
xor edi, edi
mov dword [ebx + 0x174], eax
mov ebp, dword [ebx + 0xc]
xor ecx, ecx
mov dword [ebx + 0x234], eax
mov dword [ebx + 0x35c], eax
mov dword [ebx + 0x360], eax
lea eax, [ebp + 0x300]
mov edx, eax
mov ebp, dword [ebp + 0x300]
test ebp, ebp
je 0x6cbac9
mov dword [esp + 0x84], ebx
lea esi, [esi]
inc ecx
mov edx, dword [edx + 4]
mov ebx, dword [edx]
test ebx, ebx
jne 0x6cbab8
mov ebx, dword [esp + 0x84]
xor ebp, ebp
test ecx, ecx
jle 0x6cbc0b
mov dword [esp + 0x80], ecx
mov dword [esp + 0x88], edi
mov dword [esp + 0x8c], esi
mov dword [esp + 0x84], ebx
jmp 0x6cbb00
mov eax, dword [esp + 0x84]
mov eax, dword [eax + 0xc]
add eax, 0x300
xor ecx, ecx
test ebp, ebp
jle 0x6cbb40
cmp ebp, 6
jl 0x6cbb38
lea edx, [ebp - 6]
lea esi, [esi]
lea edi, [edi]
mov edi, dword [eax + 4]
mov esi, dword [edi + 4]
mov ebx, dword [esi + 4]
mov eax, dword [ebx + 4]
mov eax, dword [eax + 4]
add ecx, 5
cmp ecx, edx
jle 0x6cbb18
lea esi, [esi]
lea edi, [edi]
mov eax, dword [eax + 4]
inc ecx
cmp ecx, ebp
jl 0x6cbb38
mov esi, dword [eax]
lea eax, [esp + 0x48]
xor edx, edx
and edx, 0xff
mov ebx, edx
shl ebx, 8
or edx, ebx
mov ecx, edx
shl ecx, 0x10
or edx, ecx
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], edx
lea eax, [esp + 0x48]
push 0x14
push esi
push eax
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0xc
lea ecx, [esp + 0x68]
lea eax, [esp + 0x48]
push eax
call fcn.00701780
lea ecx, [esp + 0x28]
push eax
call fcn.00701cc0
mov ebx, eax
lea ecx, [esp + 0x68]
call fcn.00701810
movzx eax, bl
test eax, eax
je 0x6cbbb5
mov dword [esp + 0x8c], esi
lea ecx, [esp + 0x6c]
lea eax, [esp + 0x48]
push eax
call fcn.00701780
lea ecx, [esp + 0x2c]
push eax
call fcn.00701cc0
mov ebx, eax
lea ecx, [esp + 0x6c]
call fcn.00701810
movzx eax, bl
test eax, eax
je 0x6cbbe6
mov dword [esp + 0x88], esi
inc ebp
mov eax, dword [esp + 0x80]
cmp ebp, eax
jl 0x6cbaf1
mov edi, dword [esp + 0x88]
mov esi, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
test esi, esi
je 0x6cc232
movzx edx, byte [esi + 0x28]
mov word [ebx + 0x34e], dx
mov eax, dword [esi + 0x18]
sub eax, dword [esi + 0x14]
mov dword [esp + 0x80], eax
test edi, edi
je 0x6cbc47
mov eax, dword [edi + 0x18]
mov edx, dword [esp + 0x80]
sub eax, dword [edi + 0x14]
cmp eax, edx
jae 0x6cbc47
mov dword [esp + 0x80], eax
mov dword [ebx + 0x360], 1
lea ecx, [esp]
mov dword [ebx + 0x33c], 0x10
mov eax, dword [esi + 0x24]
mov dword [ebx + 0x340], eax
mov eax, dword [ebx + 0xc]
fld qword [0x889ff0]
fstp qword [ebx + 0x350]
mov edx, dword [esi + 0x14]
mov ebp, dword [eax + 0x308]
lea eax, [ebp + edx*2]
mov dword [ebx + 0x54], eax
push 0
push eax
call fcn.006e85a8
mov ebp, dword [esp + 0x80]
mov al, byte [esp + 0xc4]
test al, al
mov dword [ebx + 0x35c], ebp
mov dword [ebx + 0x14], 0
mov dword [esp + 0xa8], edx
je 0x6cbcd9
lea eax, [esp]
mov edx, ebp
lea edx, [edx + edx]
xor ebp, ebp
mov ecx, ebx
push ebp
push ebp
push edx
push eax
call fcn.006cc308
mov edx, eax
xor eax, eax
test edx, edx
sete al
mov dword [esp + 0xa8], eax
mov edx, dword [esp + 0xa8]
movzx eax, dl
test eax, eax
mov dword [esp + 0xa8], eax
je 0x6cc0ba
test edi, edi
je 0x6cbef9
mov edx, dword [edi + 0x14]
mov eax, dword [ebx + 0xc]
mov ebp, dword [eax + 0x308]
lea eax, [ebp + edx*2]
lea ecx, [esp]
mov dword [ebx + 0x54], eax
push 0
push eax
call fcn.006e85a8
fld qword [0x889ff0]
mov edx, dword [esp + 0x80]
mov al, byte [esp + 0xc4]
fstp qword [ebx + 0x350]
mov ebp, dword [edi + 0x24]
test al, al
mov dword [ebx + 0x340], ebp
mov dword [ebx + 0x35c], edx
je 0x6cbd67
lea eax, [esp]
add edx, edx
push 1
mov ecx, ebx
push 0
push edx
push eax
call fcn.006cc308
mov edx, eax
xor eax, eax
test edx, edx
sete al
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x6cbd81
mov dword [ebx + 0x360], 2
jmp 0x6cbef9
mov eax, dword [ebx + 0x60]
mov ecx, dword [esp + 0x90]
call dword [eax + 0x24]
mov dword [ebx + 0x5c], 0
mov eax, dword [ebx + 0x98]
mov ecx, dword [esp + 0x94]
call dword [eax + 0x24]
mov dword [ebx + 0x94], 0
mov eax, dword [ebx + 0xd0]
mov ecx, dword [esp + 0x98]
call dword [eax + 0x24]
mov dword [ebx + 0xcc], 0
mov eax, dword [ebx + 0x108]
mov ecx, dword [esp + 0x9c]
call dword [eax + 0x24]
mov dword [ebx + 0x104], 0
mov eax, dword [ebx + 0x140]
mov ecx, dword [esp + 0xa0]
call dword [eax + 0x24]
mov dword [ebx + 0x13c], 0
mov eax, dword [ebx + 0x178]
mov ecx, dword [esp + 0xa4]
call dword [eax + 0x24]
xor eax, eax
mov dword [ebx + 0x174], eax
mov dword [ebx + 0x234], eax
mov ecx, dword [esp + 0x3c]
test ecx, ecx
mov dword [ebx + 0x35c], eax
mov dword [ebx + 0x360], eax
je 0x6cbe40
mov dword [esp + 0x3c], 0
je 0x6cbe40
push 1
call fcn.00433260
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x6cbe59
mov dword [esp + 0x40], 0
je 0x6cbe59
push 1
call fcn.00433290
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6cbe72
mov dword [esp + 0x34], 0
je 0x6cbe72
push 1
call fcn.00433260
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x6cbe8b
mov dword [esp + 0x38], 0
je 0x6cbe8b
push 1
call fcn.00433290
lea ecx, [esp + 0x30]
call fcn.00701810
lea ecx, [esp + 0x2c]
call fcn.00701810
lea ecx, [esp + 0x28]
call fcn.00701810
mov dword [esp], fcn.006e8368
lea ecx, [esp]
call fcn.006e8608
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6cbece
mov dword [esp + 0x1c], 0
je 0x6cbece
push 1
call fcn.00433260
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x6cbee7
je 0x6cbee7
mov dword [esp + 0x20], 0
push 1
call fcn.00433290
mov eax, 4
add esp, 0xac
pop ebx
pop ebp
pop esi
pop edi
ret 8
mov edx, dword [esi + 0x1c]
mov eax, dword [esi + 0x20]
sub eax, dword [esi + 0x1c]
fld qword [0x889ff0]
fdiv qword [ebx + 0x350]
sub edx, dword [esi + 0x14]
mov dword [esp + 0x78], edx
fild dword [esp + 0x78]
fmul st(1)
fstp qword [esp + 0x70]
mov ebp, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
mov ecx, edx
shr ecx, 0x14
and ecx, 0x7ff
cmp ecx, 0x3fe
jle 0x6cbf58
mov esi, edx
neg ecx
add ecx, 0x41e
shld esi, ebp, 0xb
or esi, 0x80000000
shr esi, cl
test edx, edx
jge 0x6cbf5a
neg esi
jmp 0x6cbf5a
xor esi, esi
mov ebp, dword [ebx + 0x35c]
cmp esi, ebp
jbe 0x6cbf6c
fstp st(0)
xor edx, edx
xor esi, esi
jmp 0x6cbfb5
mov dword [esp + 0x78], eax
fild dword [esp + 0x78]
fmulp st(1)
fstp qword [esp + 0x70]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x74]
mov ecx, eax
shr ecx, 0x14
and ecx, 0x7ff
cmp ecx, 0x3fe
jle 0x6cbfb3
mov edx, eax
neg ecx
add ecx, 0x41e
shld edx, edi, 0xb
or edx, 0x80000000
shr edx, cl
test eax, eax
jge 0x6cbfb5
neg edx
jmp 0x6cbfb5
xor edx, edx
lea eax, [esi + edx]
cmp eax, ebp
jb 0x6cbfc0
mov edx, ebp
sub edx, esi
mov dword [ebx + 0x238], esi
xor eax, eax
mov dword [ebx + 0x23c], edx
mov ecx, dword [esp + 0x3c]
test ecx, ecx
mov dword [ebx + 0x240], eax
mov byte [ebx + 0x244], al
mov dword [ebx + 0x248], 0x3f800000
mov byte [ebx + 0x245], 3
je 0x6cc004
mov dword [esp + 0x3c], 0
je 0x6cc004
push 1
call fcn.00433260
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x6cc01d
mov dword [esp + 0x40], 0
je 0x6cc01d
push 1
call fcn.00433290
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6cc036
mov dword [esp + 0x34], 0
je 0x6cc036
push 1
call fcn.00433260
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x6cc04f
mov dword [esp + 0x38], 0
je 0x6cc04f
push 1
call fcn.00433290
lea ecx, [esp + 0x30]
call fcn.00701810
lea ecx, [esp + 0x2c]
call fcn.00701810
lea ecx, [esp + 0x28]
call fcn.00701810
mov dword [esp], fcn.006e8368
lea ecx, [esp]
call fcn.006e8608
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6cc092
mov dword [esp + 0x1c], 0
je 0x6cc092
push 1
call fcn.00433260
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x6cc0ab
je 0x6cc0ab
mov dword [esp + 0x20], 0
push 1
call fcn.00433290
xor eax, eax
add esp, 0xac
pop ebx
pop ebp
pop esi
pop edi
ret 8
mov eax, dword [ebx + 0x60]
mov ecx, dword [esp + 0x90]
call dword [eax + 0x24]
mov dword [ebx + 0x5c], 0
mov eax, dword [ebx + 0x98]
mov ecx, dword [esp + 0x94]
call dword [eax + 0x24]
mov dword [ebx + 0x94], 0
mov eax, dword [ebx + 0xd0]
mov ecx, dword [esp + 0x98]
call dword [eax + 0x24]
mov dword [ebx + 0xcc], 0
mov eax, dword [ebx + 0x108]
mov ecx, dword [esp + 0x9c]
call dword [eax + 0x24]
mov dword [ebx + 0x104], 0
mov eax, dword [ebx + 0x140]
mov ecx, dword [esp + 0xa0]
call dword [eax + 0x24]
mov dword [ebx + 0x13c], 0
mov eax, dword [ebx + 0x178]
mov ecx, dword [esp + 0xa4]
call dword [eax + 0x24]
xor eax, eax
mov dword [ebx + 0x174], eax
mov dword [ebx + 0x234], eax
mov ecx, dword [esp + 0x3c]
test ecx, ecx
mov dword [ebx + 0x35c], eax
mov dword [ebx + 0x360], eax
je 0x6cc179
mov dword [esp + 0x3c], 0
je 0x6cc179
push 1
call fcn.00433260
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x6cc192
mov dword [esp + 0x40], 0
je 0x6cc192
push 1
call fcn.00433290
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6cc1ab
mov dword [esp + 0x34], 0
je 0x6cc1ab
push 1
call fcn.00433260
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x6cc1c4
mov dword [esp + 0x38], 0
je 0x6cc1c4
push 1
call fcn.00433290
lea ecx, [esp + 0x30]
call fcn.00701810
lea ecx, [esp + 0x2c]
call fcn.00701810
lea ecx, [esp + 0x28]
call fcn.00701810
mov dword [esp], fcn.006e8368
lea ecx, [esp]
call fcn.006e8608
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6cc207
mov dword [esp + 0x1c], 0
je 0x6cc207
push 1
call fcn.00433260
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x6cc220
je 0x6cc220
mov dword [esp + 0x20], 0
push 1
call fcn.00433290
mov eax, 4
add esp, 0xac
pop ebx
pop ebp
pop esi
pop edi
ret 8
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x6cc24b
mov dword [esp + 0x3c], 0
je 0x6cc24b
push 1
call fcn.00433260
mov ecx, dword [esp + 0x40]
test ecx, ecx
je 0x6cc264
mov dword [esp + 0x40], 0
je 0x6cc264
push 1
call fcn.00433290
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6cc27d
mov dword [esp + 0x34], 0
je 0x6cc27d
push 1
call fcn.00433260
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x6cc296
mov dword [esp + 0x38], 0
je 0x6cc296
push 1
call fcn.00433290
lea ecx, [esp + 0x30]
call fcn.00701810
lea ecx, [esp + 0x2c]
call fcn.00701810
lea ecx, [esp + 0x28]
call fcn.00701810
mov dword [esp], fcn.006e8368
lea ecx, [esp]
call fcn.006e8608
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x6cc2d9
mov dword [esp + 0x1c], 0
je 0x6cc2d9
push 1
call fcn.00433260
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x6cc2f2
je 0x6cc2f2
mov dword [esp + 0x20], 0
push 1
call fcn.00433290
mov eax, 1
add esp, 0xac
pop ebx
pop ebp
pop esi
pop edi
ret 8