Function at 0x140001000
Capabilities:
Get number of processors

Disassembly:
push rbp
push rdi
lea rbp, [rsp - 0x4f]
sub rsp, 0xb8
mov ecx, 0x400
call fcn.14041584c
mov qword [rbp - 0x11], rax
mov rdi, rax
test rax, rax
je 0x140002ff2
mov rcx, qword gs:[0x58]
mov qword [rsp + 0xd0], rbx
movaps xmmword [rsp + 0x80], xmm7
mov eax, 0x5d8
mov rbx, qword [rcx]
movaps xmmword [rsp + 0x70], xmm8
movaps xmmword [rsp + 0x60], xmm9
mov qword [rbp - 0x31], rbx
mov ecx, dword [rax + rbx]
mov r9d, 0x5e0
test cl, 1
jne 0x1400010b2
or ecx, 1
mov byte [r9 + rbx], 0
mov dword [rax + rbx], ecx
lea r8, [r9 + rbx]
mov rax, qword [0x1405f8c30]
lea rcx, [rbp - 0x3d]
mov qword [rbp - 0x41], rax
xor edx, edx
xor eax, eax
mov dword [r8 + 4], eax
lea rax, [rbp - 0x3d]
sub r8, rax
nop word [rax + rax]
mov eax, dword [rcx]
inc edx
mov dword [r8 + rcx + 4], eax
lea rcx, [rcx + 4]
cmp edx, 1
jb 0x1400010a0
mov rax, qword [rbx + r9]
movsd xmm7, qword [0x1405f8ee0]
movsd xmm8, qword [0x1405f8ee8]
movsd xmm9, qword [0x1405f8ef0]
mov qword [rsp + 0xd8], rsi
mov qword [rsp + 0xe0], r12
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xa0], r15
movaps xmmword [rsp + 0x90], xmm6
mov qword [rbp - 0x41], rax
test al, al
jne 0x140001ffa
movsd xmm6, qword [0x1405f8ed8]
mov esi, dword [rbp - 0x39]
mov r14d, dword [rbp - 0x39]
mov r15d, dword [rbp - 0x39]
mov r12d, dword [rbp - 0x39]
mov r13d, dword [rbp - 0x39]
mov dword [rbp - 0x49], 0
mov eax, dword [rbp - 0x49]
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001405
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001215
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001215
mov esi, 2
jmp 0x1400012a4
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400012a4
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si esi, xmm0
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001351
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001351
mov r14d, 2
jmp 0x1400013e1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400013e1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si r14d, xmm0
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, r14d
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, esi
mov dword [rbp + rax*4 - 0x3d], edx
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001cff
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000171e
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x14000152c
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000152c
mov r15d, 2
jmp 0x1400015bc
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400015bc
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si r15d, xmm0
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001669
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001669
mov r12d, 2
jmp 0x1400016f9
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400016f9
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si r12d, xmm0
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, r12d
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, r15d
mov dword [rbp + rax*4 - 0x3d], edx
call fcn.14040ca60
movsx ebx, byte [0x140635790]
movsx ecx, al
imul ebx, ecx
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1400019f8
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001801
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001801
mov r13d, 2
jmp 0x140001891
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001891
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si r13d, xmm0
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001940
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001940
mov dword [rbp - 0x21], 2
jmp 0x1400019d2
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400019d2
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si eax, xmm0
mov dword [rbp - 0x21], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, dword [rbp - 0x21]
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, r13d
mov dword [rbp + rax*4 - 0x3d], edx
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001cff
mov eax, dword [rbp - 0x49]
add eax, 0x7c
movd xmm2, eax
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001af9
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001af9
mov dword [rbp - 0x19], 2
jmp 0x140001b8b
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001b8b
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si eax, xmm0
mov dword [rbp - 0x19], eax
mov eax, dword [rbp - 0x49]
add eax, 0x7c
movd xmm2, eax
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001c47
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001c47
mov dword [rbp - 0x1d], 2
jmp 0x140001cd9
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001cd9
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si eax, xmm0
mov dword [rbp - 0x1d], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, dword [rbp - 0x1d]
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, dword [rbp - 0x19]
mov dword [rbp + rax*4 - 0x3d], edx
call fcn.14040ca60
movsx ebx, byte [0x140635790]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001fde
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001de5
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001de5
mov dword [rbp - 0x39], 2
jmp 0x140001e77
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001e77
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si eax, xmm0
mov dword [rbp - 0x39], eax
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rbp - 0x29], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001f26
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140001f26
mov dword [rbp - 0x15], 2
jmp 0x140001fb8
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140001fb8
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x29]
cvttsd2si eax, xmm0
mov dword [rbp - 0x15], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, dword [rbp - 0x15]
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, dword [rbp - 0x39]
mov dword [rbp + rax*4 - 0x3d], edx
mov eax, dword [rbp - 0x49]
inc eax
mov dword [rbp - 0x49], eax
mov eax, dword [rbp - 0x49]
cmp eax, 1
jb 0x140001131
mov rbx, qword [rbp - 0x31]
mov rdi, qword [rbp - 0x11]
mov eax, dword [rbp - 0x3d]
lea r9, [0x140000000]
mov r8d, 0x400
mov byte [rbp - 0x41], 1
lea rdx, [0x14004c050]
mov rcx, rdi
call qword [r9 + rax*8 + 0x6298e0]
mov ecx, 0x5e8
mov r9d, 0x5f0
mov eax, dword [rcx + rbx]
test al, 1
jne 0x140002072
or eax, 1
mov r8d, r9d
mov dword [rcx + rbx], eax
add r8, rbx
mov rax, qword [0x1405f8c28]
lea rcx, [rbp - 0x3d]
mov qword [rbp - 0x41], rax
xor edx, edx
xor eax, eax
mov byte [r8], 0
mov dword [r8 + 4], eax
lea rax, [rbp - 0x3d]
sub r8, rax
mov eax, dword [rcx]
inc edx
mov dword [rcx + r8 + 4], eax
lea rcx, [rcx + 4]
cmp edx, 1
jb 0x140002060
mov rcx, qword [r9 + rbx]
mov qword [rbp - 0x41], rcx
test cl, cl
jne 0x140002f6c
movsd xmm6, qword [0x1405f8ef8]
mov esi, dword [rbp - 0x39]
mov r14d, dword [rbp - 0x39]
mov r15d, dword [rbp - 0x39]
mov r12d, dword [rbp - 0x39]
mov r13d, dword [rbp - 0x39]
mov dword [rbp - 0x49], 0
mov eax, dword [rbp - 0x49]
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000237b
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x14000218b
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000218b
mov esi, 2
jmp 0x14000221a
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x14000221a
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si esi, xmm0
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400022c7
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1400022c7
mov r14d, 2
jmp 0x140002357
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002357
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si r14d, xmm0
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, r14d
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, esi
mov dword [rbp + rax*4 - 0x3d], edx
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002c77
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140002696
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400024a3
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1400024a3
mov r15d, 2
jmp 0x140002533
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002533
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si r15d, xmm0
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400025e1
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1400025e1
mov r12d, 2
jmp 0x140002671
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002671
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si r12d, xmm0
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, r12d
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, r15d
mov dword [rbp + rax*4 - 0x3d], edx
call fcn.14040ca60
movsx ebx, byte [0x140635790]
movsx ecx, al
imul ebx, ecx
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140002970
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002779
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140002779
mov r13d, 2
jmp 0x140002809
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002809
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si r13d, xmm0
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x1400028b8
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1400028b8
mov dword [rbp - 0x39], 2
jmp 0x14000294a
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x14000294a
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si eax, xmm0
mov dword [rbp - 0x39], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, dword [rbp - 0x39]
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, r13d
mov dword [rbp + rax*4 - 0x3d], edx
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002c77
mov eax, dword [rbp - 0x49]
add eax, 0x7d
movd xmm2, eax
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002a71
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140002a71
mov dword [rbp - 0x19], 2
jmp 0x140002b03
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002b03
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si eax, xmm0
mov dword [rbp - 0x19], eax
mov eax, dword [rbp - 0x49]
add eax, 0x7d
movd xmm2, eax
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002bbf
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140002bbf
mov dword [rbp - 0x15], 2
jmp 0x140002c51
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002c51
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si eax, xmm0
mov dword [rbp - 0x15], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, dword [rbp - 0x15]
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, dword [rbp - 0x19]
mov dword [rbp + rax*4 - 0x3d], edx
call fcn.14040ca60
movsx ebx, byte [0x140635790]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140002f54
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002d5c
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140002d5c
mov dword [rbp - 0x21], 2
jmp 0x140002dee
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002dee
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si eax, xmm0
mov dword [rbp - 0x21], eax
movsx eax, byte [reloc.OLEAUT32.dll_VariantInit]
movd xmm1, eax
movsx eax, byte [0x1406298dc]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rbp - 0x31], xmm1
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002e9c
call fcn.14040ca60
movsx edx, byte [0x140635790]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.14040ca90
movsx ecx, al
sub ebx, ecx
call fcn.14040ca70
movsx ecx, byte [0x1406298dc]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x140002e9c
mov dword [rbp - 0x1d], 2
jmp 0x140002f2e
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, ebx
add eax, ecx
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
cmp eax, ecx
je 0x140002f2e
call fcn.14040ca50
movsx ebx, al
call fcn.14040ca40
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.14040ca80
movsx ecx, al
xor edx, edx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
div ecx
movsx ecx, byte [0x1406298db]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x31]
cvttsd2si eax, xmm0
mov dword [rbp - 0x1d], eax
movsxd rax, dword [rbp - 0x49]
mov r8d, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
and r8d, dword [rbp - 0x1d]
add r8d, r8d
mov edx, dword [rbp + rax*4 - 0x3d]
movsxd rax, dword [rbp - 0x49]
sub edx, r8d
add edx, dword [rbp - 0x21]
mov dword [rbp + rax*4 - 0x3d], edx
mov eax, dword [rbp - 0x49]
inc eax
mov dword [rbp - 0x49], eax
mov eax, dword [rbp - 0x49]
cmp eax, 1
jb 0x1400020a7
mov rdi, qword [rbp - 0x11]
mov eax, dword [rbp - 0x3d]
lea rcx, [0x140000000]
call qword [rcx + rax*8 + 0x629ec0]
movaps xmm9, xmmword [rsp + 0x60]
mov rbx, rax
movaps xmm8, xmmword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x80]
movaps xmm6, xmmword [rsp + 0x90]
mov r15, qword [rsp + 0xa0]
mov r14, qword [rsp + 0xa8]
mov r13, qword [rsp + 0xb0]
mov r12, qword [rsp + 0xe0]
mov rsi, qword [rsp + 0xd8]
test rax, rax
je 0x140002fde
mov r8d, 0x400
mov rdx, rdi
mov rcx, rax
call qword [rax + 0x28]
mov rcx, rbx
call qword [rbx + 0x60]
mov rbx, qword [rsp + 0xd0]
xor eax, eax
add rsp, 0xb8
pop rdi
pop rbp
ret
add rsp, 0xb8
pop rdi
pop rbp
ret