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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x24]
cmp eax, dword [ecx + 8]
jbe 0x6e5d6e
sub esp, 0xa4
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x6e5cdf
mov ecx, dword [eax + 0x10]
mov dword [esp + 0xa0], ecx
mov edx, dword [eax + 0x14]
mov dword [esp + 0x64], edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
jmp 0x6e5818
inc ebx
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0xa0]
mov ecx, edx
mov edx, dword [esp + 0x64]
mov ebp, eax
mov esi, edi
mov eax, dword [esp + 0xa8]
cmp ebx, edx
jge 0x6e5841
lea edi, [ecx + ebx*8]
mov eax, dword [edi]
mov edi, dword [edi + 4]
cmp eax, ebp
seta cl
cmp edi, esi
sete dl
and ecx, edx
cmp edi, esi
setg dl
or edx, ecx
test dl, dl
jne 0x6e57fb
mov eax, ebp
mov edi, esi
jmp 0x6e57fb
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], esi
mov dword [esp], eax
call fcn.006e4960
mov eax, dword [esp + 4]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0x48]
mov dword [esp], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 4], edx
call fcn.00447fa0
movsd xmm0, qword [esp + 8]
movsd qword [esp + 0x90], xmm0
mov eax, dword [esp + 0x30]
test eax, eax
sete cl
mov edx, dword [esp + 0x34]
test edx, edx
sete bl
and ebx, ecx
test bl, bl
je 0x6e5cbc
movsd xmm1, qword [0x91eb80]
movsd qword [esp + 0x68], xmm1
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax + 0x14]
lea edx, [0x7d58c0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00438ab0
movsd xmm0, qword [0x91ebf0]
movsd xmm1, qword [esp + 0x90]
divsd xmm0, xmm1
movsd qword [esp + 0x70], xmm0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x54], ecx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x98], edx
mov ebx, dword [esp + 0xa8]
mov ebp, dword [ebx + 0x14]
mov dword [esp + 0x64], ebp
mov esi, dword [ebx + 0x10]
mov dword [esp + 0xa0], esi
xor edi, edi
xor edi, edi
mov dword [esp + 0x38], edi
xor edi, edi
mov dword [esp + 0x3c], edi
xor edi, edi
jmp 0x6e5949
inc edi
mov ebx, dword [esp + 0xa8]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x98]
cmp edi, ebp
jge 0x6e5be1
lea edx, [esi + edi*8]
mov eax, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x44], edx
test eax, eax
sete bl
test edx, edx
sete dl
and edx, ebx
test dl, dl
je 0x6e5977
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
jmp 0x6e592e
mov dword [esp + 0x40], eax
mov edx, dword [esp + 0x38]
add edx, eax
mov dword [esp + 0x38], edx
mov ebx, dword [esp + 0x3c]
mov esi, dword [esp + 0x44]
adc ebx, esi
mov dword [esp + 0x3c], ebx
cmp edi, 0x25
jge 0x6e5bc9
lea ebp, [edi + 1]
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x6e5b62
xor ebp, ebp
xor ebp, ebp
mov dword [esp + 0x24], ebp
xor ebp, ebp
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x50], edi
mov dword [esp + 0x28], ebp
xchg edi, eax
test al, al
xchg edi, eax
jne 0x6e5b13
mov dword [esp + 0x78], eax
xor eax, eax
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x20], eax
lea eax, [0x860880]
mov dword [esp], eax
call fcn.00409d90
mov eax, dword [esp + 4]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 0x1c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x2c]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x40]
mov dword [eax + 0x10], ecx
mov edx, dword [esp + 0x44]
mov dword [eax + 0x14], edx
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.00447fa0
movsd xmm0, qword [esp + 8]
movsd xmm1, qword [esp + 0x68]
mulsd xmm0, xmm1
mov eax, dword [esp + 0x9c]
movsd qword [eax + 0x18], xmm0
mov ecx, dword [esp + 0x38]
mov dword [esp], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp + 4], edx
call fcn.00447fa0
movsd xmm0, qword [esp + 8]
movsd xmm1, qword [esp + 0x68]
mulsd xmm0, xmm1
mov eax, dword [esp + 0x9c]
movsd qword [eax + 0x20], xmm0
mov ecx, dword [esp + 0x40]
mov dword [esp], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 4], ecx
call fcn.00447fa0
movsd xmm0, qword [esp + 8]
movsd xmm1, qword [esp + 0x70]
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov ecx, dword [esp + 0x9c]
mov dword [ecx + 0x28], eax
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
cmp eax, edx
jae 0x6e5d60
mov ebx, dword [0xc6f140]
mov ebp, dword [esp + 0x98]
lea edi, [ebp + eax*4]
test ebx, ebx
jne 0x6e5b00
mov dword [ebp + eax*4], ecx
mov ecx, edx
mov ebp, dword [esp + 0x64]
mov esi, dword [esp + 0xa0]
mov edi, eax
movsd xmm0, xmm1
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
jmp 0x6e592e
mov ebx, eax
mov eax, ecx
call fcn.0044c860
mov eax, ebx
movsd xmm1, qword [esp + 0x70]
jmp 0x6e5ae0
lea ebx, [edi - 0x20]
mov byte [esp + 0x1b], bl
mov ecx, ebx
mov edx, 1
shl edx, cl
mov ecx, edi
mov esi, 1
shl esi, cl
neg ebx
mov ecx, ebx
mov eax, 1
shr eax, cl
cmp cl, 0x20
sbb ebx, ebx
and ebx, eax
movzx eax, byte [esp + 0x1b]
cmp al, 0x20
sbb eax, eax
and edx, eax
or edx, ebx
xchg edi, eax
cmp al, 0x20
xchg edi, eax
sbb eax, eax
and eax, esi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edx
jmp 0x6e59eb
lea ecx, [edi - 0x1f]
mov byte [esp + 0x1b], cl
neg ecx
mov byte [esp + 0x1a], cl
mov ebx, 1
shr ebx, cl
movzx ecx, byte [esp + 0x1b]
mov edx, 1
shl edx, cl
mov ecx, ebp
mov esi, 1
shl esi, cl
movzx eax, byte [esp + 0x1a]
cmp al, 0x20
sbb eax, eax
and eax, ebx
movzx ebx, byte [esp + 0x1b]
cmp bl, 0x20
sbb ebx, ebx
and ebx, edx
or ebx, eax
cmp cl, 0x20
sbb ebp, ebp
and ebp, esi
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x38]
mov esi, dword [esp + 0x44]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x3c]
jmp 0x6e59b3
mov ebp, 0xffffffff
mov ebp, 0x7fffffff
mov dword [esp + 0x2c], ebp
mov ebp, 0xffffffff
jmp 0x6e59c9
mov dword [esp], ebx
call fcn.006e4fa0
mov eax, dword [esp + 8]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0xa8]
mov dword [esp], edx
call fcn.006e49f0
movsd xmm0, qword [esp + 4]
movsd qword [esp + 0x90], xmm0
mov eax, dword [esp + 0xa8]
mov dword [esp], eax
call fcn.006e4b50
movsd xmm0, qword [esp + 4]
movsd qword [esp + 0x88], xmm0
lea eax, [0x857ca0]
mov dword [esp], eax
call fcn.00409d90
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x54]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x58]
mov dword [edi + 8], eax
mov eax, dword [0xc6f140]
test eax, eax
jne 0x6e5cae
mov eax, dword [esp + 0x98]
mov dword [edi], eax
mov eax, dword [esp + 0x30]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x34]
mov dword [edi + 0x10], eax
mov eax, dword [esp + 0x5c]
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x60]
mov dword [edi + 0x18], eax
movsd xmm0, qword [esp + 0x90]
movsd qword [edi + 0x1c], xmm0
movsd xmm0, qword [esp + 0x88]
movsd qword [edi + 0x24], xmm0
mov dword [esp + 0xac], edi
add esp, 0xa4
ret
mov eax, dword [esp + 0x98]
call fcn.0044c860
jmp 0x6e5c68
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00447fa0
movsd xmm0, qword [esp + 8]
movsd xmm1, qword [0x91ebe8]
divsd xmm1, xmm0
jmp 0x6e58a8
lea eax, [0x809be0]
mov dword [esp], eax
mov dword [esp + 4], 0x26
mov dword [esp + 8], 0x26
call fcn.00438ab0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0xa8]
mov dword [ebx + 0x14], ecx
mov dword [ebx + 0x18], eax
mov eax, dword [0xc6f140]
test eax, eax
jne 0x6e5d54
mov dword [ebx + 0x10], edx
mov eax, dword [ebx + 0x1c]
mov ebp, dword [ebx + 0x20]
mov esi, dword [ebx + 0x24]
cmp eax, ecx
jae 0x6e5d67
lea ecx, [edx + eax*8]
mov dword [ecx], ebp
mov dword [ecx + 4], esi
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0xffffffff
mov dword [ebx + 0x24], 0xffffffff
mov eax, ebx
jmp 0x6e57e2
lea edi, [ebx + 0x10]
mov eax, edx
call fcn.0044c860
jmp 0x6e5d23
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.0044b100
jmp fcn.006e57b0