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

Disassembly:
mov eax, 0x4c
call fcn.10079f60
mov eax, dword [0x100ce750]
xor eax, esp
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x54]
xor edx, edx
movsd xmm3, qword [esp + 0x60]
mov ecx, 6
mov dword [esp + 0x1c], eax
xorps xmm0, xmm0
mov eax, dword [esp + 0x58]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x5c]
push esi
mov dword [esp + 0x1c], eax
xor esi, esi
mov eax, dword [esp + 0x70]
test eax, eax
push edi
mov edi, dword [esp + 0x58]
cmovs eax, ecx
comisd xmm0, xmm3
mov ecx, dword [esp + 0x78]
mov dword [esp + 8], edi
jbe 0x1002c70e
xorpd xmm3, xmmword [0x1009e810]
mov dword [esp + 0xc], 0x2d
jmp 0x1002c72c
test cl, 2
je 0x1002c71d
mov dword [esp + 0xc], 0x2b
jmp 0x1002c72c
test cl, 4
mov ecx, 0x20
cmovne edx, ecx
mov dword [esp + 0xc], edx
movsd xmm2, qword [0x1009e7f8]
mov edx, 9
movsd xmm4, qword [0x1009e800]
cmp eax, edx
cvttsd2si ecx, xmm3
cmovg eax, edx
mov dword [esp + 0x74], eax
movapd xmm1, xmm2
mov dword [esp + 0x10], ecx
cmp eax, esi
je 0x1002c767
lea ebx, [ebx]
mulsd xmm1, xmm4
dec eax
jne 0x1002c760
movsd xmm5, qword [0x1009e7f0]
cvttsd2si edx, xmm1
movd xmm0, edx
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
comisd xmm1, xmm5
jb 0x1002c786
inc edx
mov eax, dword [esp + 0x74]
cmp eax, esi
je 0x1002c797
mov edi, edi
mulsd xmm2, xmm4
dec eax
jne 0x1002c790
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
subsd xmm3, xmm0
mulsd xmm3, xmm2
cvttsd2si eax, xmm3
mov dword [esp + 0x18], eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm3, xmm0
comisd xmm3, xmm5
jb 0x1002c7c6
inc eax
mov dword [esp + 0x18], eax
cmp eax, edx
jl 0x1002c7d5
inc ecx
sub eax, edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x18], eax
mov esi, dword [esp + 0x10]
xor edi, edi
jmp 0x1002c7e0
mov eax, 0x66666667
imul esi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea eax, [ecx + ecx*4]
add eax, eax
sub esi, eax
mov al, byte [esi + str.0123456789abcdef]
mov esi, ecx
mov byte [esp + edi + 0x28], al
inc edi
test esi, esi
je 0x1002c80e
cmp edi, 0x14
jl 0x1002c7e0
mov dword [esp + 0x14], edi
mov esi, 0
cmp edi, 0x14
jne 0x1002c827
mov eax, 0x13
mov dword [esp + 0x14], eax
jmp 0x1002c834
mov eax, dword [esp + 0x14]
cmp eax, 0x14
jae 0x1002ca5b
mov edi, dword [esp + 0x18]
mov byte [esp + eax + 0x28], 0
lea ecx, [ecx]
mov eax, 0x66666667
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [esp + 0x74]
lea eax, [ecx + ecx*4]
add eax, eax
sub edi, eax
mov al, byte [edi + str.0123456789abcdef]
mov edi, ecx
mov byte [esp + esi + 0x3c], al
inc esi
cmp esi, edx
jl 0x1002c840
mov edi, dword [esp + 8]
mov dword [esp + 0x18], esi
cmp esi, 0x14
jne 0x1002c885
mov esi, 0x13
mov dword [esp + 0x18], esi
jmp 0x1002c88b
jae 0x1002ca5b
mov ecx, dword [esp + 0xc]
xor eax, eax
mov byte [esp + esi + 0x3c], 0
test ecx, ecx
mov esi, dword [esp + 0x70]
setne al
sub esi, eax
mov eax, edx
sub esi, dword [esp + 0x14]
sub esi, edx
sub eax, dword [esp + 0x18]
mov edx, 0
cmovs eax, edx
mov dword [esp + 0x10], eax
xor eax, eax
dec esi
cmovs esi, eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x70], esi
test al, 1
je 0x1002c8d1
neg esi
mov dword [esp + 0x70], esi
test al, 0x10
je 0x1002c920
test esi, esi
jle 0x1002c944
test ecx, ecx
je 0x1002c8fe
push ecx
push dword [esp + 0x24]
push dword [esp + 0x24]
push dword [esp + 0x30]
push edi
call fcn.1002c5f0
dec esi
add esp, 0x14
xor eax, eax
mov dword [esp + 0x70], esi
mov dword [esp + 0xc], eax
test esi, esi
jle 0x1002c944
push 0x30
push dword [esp + 0x24]
push dword [esp + 0x24]
push dword [esp + 0x30]
push edi
call fcn.1002c5f0
dec esi
add esp, 0x14
test esi, esi
jg 0x1002c902
jmp 0x1002c940
test esi, esi
jle 0x1002c944
push 0x20
push dword [esp + 0x24]
push dword [esp + 0x24]
push dword [esp + 0x30]
push edi
call fcn.1002c5f0
dec esi
add esp, 0x14
test esi, esi
jg 0x1002c924
mov dword [esp + 0x70], esi
mov eax, dword [esp + 0xc]
test eax, eax
je 0x1002c962
push eax
push dword [esp + 0x24]
push dword [esp + 0x24]
push dword [esp + 0x30]
push edi
call fcn.1002c5f0
add esp, 0x14
mov eax, dword [esp + 0x14]
test eax, eax
jle 0x1002c999
mov esi, dword [esp + 0x24]
mov edi, edi
dec eax
mov dword [esp + 0x14], eax
movsx eax, byte [esp + eax + 0x28]
push eax
push dword [esp + 0x24]
push dword [esp + 0x24]
push esi
push edi
call fcn.1002c5f0
mov eax, dword [esp + 0x28]
add esp, 0x14
test eax, eax
jg 0x1002c970
mov esi, dword [esp + 0x70]
cmp dword [esp + 0x74], 0
jg 0x1002c9a7
test byte [esp + 0x78], 8
je 0x1002c9f9
push 0x2e
push dword [esp + 0x24]
push dword [esp + 0x24]
push dword [esp + 0x30]
push edi
call fcn.1002c5f0
mov eax, dword [esp + 0x2c]
add esp, 0x14
test eax, eax
jle 0x1002c9f9
mov esi, dword [esp + 0x24]
lea ebx, [ebx]
dec eax
mov dword [esp + 0x18], eax
movsx eax, byte [esp + eax + 0x3c]
push eax
push dword [esp + 0x24]
push dword [esp + 0x24]
push esi
push edi
call fcn.1002c5f0
mov eax, dword [esp + 0x2c]
add esp, 0x14
test eax, eax
jg 0x1002c9d0
mov esi, dword [esp + 0x70]
cmp dword [esp + 0x10], 0
jle 0x1002ca29
mov esi, dword [esp + 0x24]
push 0x30
push dword [esp + 0x24]
push dword [esp + 0x24]
push esi
push edi
call fcn.1002c5f0
mov eax, dword [esp + 0x24]
add esp, 0x14
dec eax
mov dword [esp + 0x10], eax
test eax, eax
jg 0x1002ca04
mov esi, dword [esp + 0x70]
test esi, esi
jns 0x1002ca4a
neg esi
nop
push 0x20
push dword [esp + 0x24]
push dword [esp + 0x24]
push dword [esp + 0x30]
push edi
call fcn.1002c5f0
add esp, 0x14
dec esi
jne 0x1002ca30
mov ecx, dword [esp + 0x50]
pop edi
pop esi
xor ecx, esp
call fcn.1007ba40
add esp, 0x4c
ret
call fcn.1007d16f
int3