Function at 0x14001cf90
Capabilities:
Access peb ldr_data
Create process on windows
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1200]
mov eax, 0x1300
call fcn.140070aa0
sub rsp, rax
movaps xmmword [rsp + 0x12f0], xmm6
mov rax, qword [0x14007c040]
xor rax, rsp
mov qword [rbp + 0x11e0], rax
mov qword [rsp + 0x68], rdx
mov r13, rcx
mov qword [rbp - 0x28], rcx
mov qword [rsp + 0x60], rcx
xor edi, edi
lea rdx, [rbp + 0x20]
call fcn.14001ed70
mov rsi, rax
mov ebx, 7
mov dword [rsp + 0x70], ebx
cmp byte [rax], dil
jne 0x14001dbd1
mov dword [rsp + 0x50], edi
mov eax, dword [rsp + 0x50]
call fcn.140003760
movsx r9d, al
call fcn.140003750
movsx ecx, al
imul r9d, ecx
call fcn.140003790
movsx r10d, al
call fcn.140003770
movsx r11d, al
call fcn.1400037a0
movsx ebx, al
call fcn.140003780
movsx edi, al
movsd xmm3, qword [0x140073fc0]
movsd xmm4, qword [0x140073fb8]
movsd xmm5, qword [0x140073fb0]
movsd xmm6, qword [0x140073fa8]
mov r15d, dword [rbp + 0x30]
mov r12d, dword [rbp + 0x30]
mov r13d, dword [rbp + 0x30]
nop word [rax + rax]
movsx ecx, byte [0x14007d2e0]
imul ecx, r11d
lea edx, [rcx + rcx*4]
add edx, edx
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d29f
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm3
movsd qword [rsp + 0x60], xmm1
lea r14d, [r10 + r9*2]
add r14d, r9d
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d115
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d115
mov dword [rsp + 0x74], 7
jmp 0x14001d186
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d186
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
mov dword [rsp + 0x74], eax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm3
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d1ff
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d1ff
mov r15d, 7
jmp 0x14001d26d
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d26d
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si r15d, xmm0
movsxd rcx, dword [rsp + 0x50]
movsxd rax, r15d
mov r8, qword [rsi + rcx*8 + 8]
and r8, rax
add r8, r8
movsxd rcx, dword [rsp + 0x50]
movsxd rax, dword [rsp + 0x74]
mov rdx, qword [rsi + rcx*8 + 8]
add rdx, rax
sub rdx, r8
movsxd rax, dword [rsp + 0x50]
mov qword [rsi + rax*8 + 8], rdx
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [r10 + r9*2]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d97e
movsx ecx, byte [0x14007d2e0]
imul ecx, r11d
lea edx, [rcx + rcx*4]
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d4f9
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm4
movsd qword [rsp + 0x60], xmm1
lea r14d, [r10 + r9*2]
add r14d, r9d
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d36f
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d36f
mov dword [rsp + 0x78], 7
jmp 0x14001d3e0
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d3e0
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
mov dword [rsp + 0x78], eax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm4
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d459
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d459
mov r12d, 7
jmp 0x14001d4c7
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d4c7
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si r12d, xmm0
movsxd rcx, dword [rsp + 0x50]
movsxd rax, r12d
mov r8, qword [rsi + rcx*8 + 8]
and r8, rax
add r8, r8
movsxd rcx, dword [rsp + 0x50]
movsxd rax, dword [rsp + 0x78]
mov rdx, qword [rsi + rcx*8 + 8]
add rdx, rax
sub rdx, r8
movsxd rax, dword [rsp + 0x50]
mov qword [rsi + rax*8 + 8], rdx
movsx ecx, byte [0x14007d2e0]
imul ecx, r11d
lea edx, [rcx + rcx*2]
add edx, edx
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d728
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm5
movsd qword [rsp + 0x60], xmm1
lea r14d, [r10 + r9*2]
add r14d, r9d
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d59e
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d59e
mov dword [rsp + 0x7c], 7
jmp 0x14001d60f
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d60f
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
mov dword [rsp + 0x7c], eax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm5
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d688
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d688
mov r13d, 7
jmp 0x14001d6f6
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d6f6
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si r13d, xmm0
movsxd rcx, dword [rsp + 0x50]
movsxd rax, r13d
mov rdx, qword [rsi + rcx*8 + 8]
and rdx, rax
add rdx, rdx
movsxd rax, dword [rsp + 0x50]
mov r8, qword [rsi + rax*8 + 8]
sub r8, rdx
movsxd rax, dword [rsp + 0x7c]
add r8, rax
movsxd rax, dword [rsp + 0x50]
mov qword [rsi + rax*8 + 8], r8
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r10d
add eax, r9d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d97e
mov eax, dword [rsp + 0x50]
sub eax, 0x67
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x60], xmm1
lea r14d, [r10 + r9*2]
add r14d, r9d
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d7e3
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d7e3
mov dword [rbp - 0x7c], 7
jmp 0x14001d853
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d853
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
mov dword [rbp - 0x7c], eax
mov eax, dword [rsp + 0x50]
sub eax, 0x67
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d8dc
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001d8dc
mov dword [rbp - 0x80], 7
jmp 0x14001d94c
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001d94c
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
mov dword [rbp - 0x80], eax
movsxd rcx, dword [rsp + 0x50]
movsxd rax, dword [rbp - 0x80]
mov r8, qword [rsi + rcx*8 + 8]
and r8, rax
add r8, r8
movsxd rcx, dword [rsp + 0x50]
movsxd rax, dword [rbp - 0x7c]
mov rdx, qword [rsi + rcx*8 + 8]
add rdx, rax
sub rdx, r8
movsxd rax, dword [rsp + 0x50]
mov qword [rsi + rax*8 + 8], rdx
movsx ecx, byte [0x14007d2e0]
imul ecx, r11d
imul edx, ecx, 7
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001dbaf
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x60], xmm1
lea r14d, [r10 + r9*2]
add r14d, r9d
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001da21
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001da21
mov dword [rsp + 0x58], 7
jmp 0x14001da92
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001da92
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x60], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r14d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001db0c
movsx edx, byte [0x14007d2e0]
imul edx, r11d
shl edx, 3
sub edx, ebx
add edx, edi
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001db0c
mov dword [rbp - 0x78], 7
jmp 0x14001db7c
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*4]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001db7c
lea ecx, [r9 + r10]
movsx r8d, byte [reloc.OLEAUT32.dll_VariantCopy]
lea eax, [rcx + r9*8]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x60]
cvttsd2si eax, xmm0
mov dword [rbp - 0x78], eax
movsxd rcx, dword [rsp + 0x50]
movsxd rax, dword [rbp - 0x78]
mov rdx, qword [rsi + rcx*8 + 8]
and rdx, rax
add rdx, rdx
movsxd rax, dword [rsp + 0x50]
mov r8, qword [rsi + rax*8 + 8]
sub r8, rdx
movsxd rax, dword [rsp + 0x58]
add r8, rax
movsxd rax, dword [rsp + 0x50]
mov qword [rsi + rax*8 + 8], r8
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cmp eax, 1
jb 0x14001d070
mov ebx, 7
mov r13, qword [rbp - 0x28]
xor edi, edi
mov byte [rsi], 1
mov r8, qword [rsi + 8]
xor edx, edx
lea rcx, [rbp + 0x170]
call sub.VCRUNTIME140.dll_memset
mov dword [rbp + 0x170], 0x68
mov r12d, 1
mov dword [rbp + 0x1ac], r12d
mov word [rbp + 0x1b0], di
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x48], rax
mov rdx, qword [rsp + 0x68]
lea rcx, [rbp + 0x50]
call sym.Stunner.exe_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_stw_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const____ptr64_
nop
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001e1c9
mov dword [rbp - 0x70], 0xc3c2c1c0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x6c], xmm0
mov qword [rbp - 0x5c], rax
mov byte [rbp - 0x54], al
mov qword [rsp + 0x58], rdi
mov rax, qword [rsp + 0x58]
cmp rax, 0x1d
jae 0x14001dcdc
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x58]
movzx edx, byte [rbp + rax - 0x70]
add rcx, 0x11c60
mov eax, edx
and rax, rcx
imul r8, rax, 0xfffffffffffffffe
add r8, rdx
add r8, rcx
add r8b, 0x60
mov rax, qword [rsp + 0x58]
mov byte [rbp + rax - 0x70], r8b
mov rax, qword [rsp + 0x58]
inc rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
cmp rax, 0x1d
jb 0x14001dc91
mov dword [rbp - 0x50], 0xaba4a5a6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x4c], xmm0
mov word [rbp - 0x3c], ax
mov qword [rsp + 0x58], rdi
mov rax, qword [rsp + 0x58]
cmp rax, 0x16
jae 0x14001dd55
movabs r9, 0xb380b3640664c665
nop word [rax + rax]
mov r8, qword [rsp + 0x58]
mov rax, qword [rsp + 0x58]
movzx edx, byte [rbp + rax - 0x50]
add r8, r9
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
add rcx, rdx
add rcx, r8
add cl, 0x3d
mov rax, qword [rsp + 0x58]
mov byte [rbp + rax - 0x50], cl
mov rax, qword [rsp + 0x58]
inc rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
cmp rax, 0x16
jb 0x14001dd10
lea rcx, [rbp + 0x50]
cmp qword [rbp + 0x68], 7
cmova rcx, qword [rbp + 0x50]
movsxd rax, dword [rbp - 0x50]
lea rdx, [rcx + rax*2]
lea rax, [rbp + 0x38]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x170]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov eax, dword [rbp - 0x70]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edi
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
mov rcx, rdi
test eax, eax
sete cl
xorps xmm2, xmm2
cvtsi2sd xmm2, rcx
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r10d, [rdx + rdx*2]
call fcn.140003790
movsx ecx, al
add r10d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r10d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001de65
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
je 0x14001de65
mov r9d, ebx
jmp 0x14001df0b
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*4]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001df07
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r9d, xmm0
jmp 0x14001df0b
mov r9d, dword [rbp + 0x30]
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140003790
movsx ecx, al
lea r8d, [rcx + rdx*2]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
imul r8d, r9d
test r8d, r8d
je 0x14001e1c9
call fcn.140003760
movsx r8d, al
call fcn.140003750
movsx ecx, al
imul r8d, ecx
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r10d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001e035
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
jne 0x14001e0e1
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*4]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001e0d6
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
jmp 0x14001e0d9
mov eax, dword [rbp + 0x30]
cmp edi, eax
jge 0x14001e1c9
mov byte [rbp - 0x20], 0x66
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x1f], xmm0
mov qword [rbp - 0xf], rax
mov word [rbp - 7], ax
mov qword [rsp + 0x58], rdi
mov rax, qword [rsp + 0x58]
cmp rax, 0x1b
jae 0x14001e155
movabs r9, 0xa20f00fdf1f26171
mov r8, qword [rsp + 0x58]
mov rax, qword [rsp + 0x58]
movzx edx, byte [rbp + rax - 0x20]
add r8, r9
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
add rcx, rdx
add rcx, r8
sub cl, 0x17
mov rax, qword [rsp + 0x58]
mov byte [rbp + rax - 0x20], cl
mov rax, qword [rsp + 0x58]
inc rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
cmp rax, 0x1b
jb 0x14001e110
xorps xmm0, xmm0
movups xmmword [r13], xmm0
mov qword [r13 + 0x10], rdi
mov qword [r13 + 0x18], rdi
lea rax, [rbp - 0x20]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14001e170
lea rdx, [rbp - 0x20]
mov rcx, r13
call fcn.140002480
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 7
jbe 0x14001eca0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ec9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jmp 0x14001ec95
mov r8, qword [0x14007d208]
test r8, r8
jne 0x14001e371
mov r11d, edi
mov r10d, 0x3474b087
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r15, qword [rax]
mov rdi, r15
nop dword [rax]
movups xmm0, xmmword [rdi + 0x58]
movd eax, xmm0
sub ax, 8
test r11d, r11d
je 0x14001e24d
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, 0x5521a70
cmp rcx, r8
je 0x14001e244
nop
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x14001e230
cmp edx, r11d
jne 0x14001e34f
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rcx, qword [rax + r9 + 0x88]
mov r14, rcx
shr r14, 0x20
mov ebx, ecx
add rbx, r9
cmp rbx, r9
je 0x14001e34f
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x14001e34f
mov esi, dword [rbx + 0x20]
dec r8d
lea rcx, [rsi + r8*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov ecx, 0x5521a70
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x14001e2b6
nop
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x14001e2a0
cmp ecx, r10d
je 0x14001e2c5
test r8d, r8d
jne 0x14001e282
jmp 0x14001e34f
mov edx, dword [rbx + 0x1c]
add rdx, r9
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx ecx, word [rcx + r8*2]
mov r8d, dword [rdx + rcx*4]
add r8, r9
cmp r8, rbx
jbe 0x14001e472
lea rax, [r14 + rbx]
cmp r8, rax
jae 0x14001e472
mov r11d, 0x5521a70
mov r10d, r11d
movzx eax, byte [r8]
cmp al, 0x2e
je 0x14001e328
nop dword [rax]
nop dword [rax + rax]
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
inc r8
movzx eax, byte [r8]
cmp al, 0x2e
jne 0x14001e310
inc r8
movzx eax, byte [r8]
test al, al
je 0x14001e34c
movsx eax, al
xor eax, r10d
imul r10d, eax, 0x1000193
lea r8, [r8 + 1]
movzx eax, byte [r8]
test al, al
jne 0x14001e333
mov rdi, qword [r15]
mov rax, qword [rdi]
mov rdi, rax
cmp rax, r15
je 0x14001e365
cmp qword [rax + 0x30], 0
jne 0x14001e200
xor edi, edi
mov r8d, edi
mov qword [0x14007d208], r8
mov edx, 0xffffffff
mov rcx, qword [rbp + 0x38]
call r8
mov rdx, qword [0x14007d288]
test rdx, rdx
jne 0x14001e50b
mov r11d, edi
mov r10d, 0x9eb270ea
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r15, qword [rax]
mov rdi, r15
nop dword [rax]
movups xmm0, xmmword [rdi + 0x58]
movd eax, xmm0
sub ax, 8
test r11d, r11d
je 0x14001e3fd
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, 0x5aa18ca0
cmp rcx, r8
je 0x14001e3f4
nop
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x14001e3e0
cmp edx, r11d
jne 0x14001e4ec
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rcx, qword [rax + r9 + 0x88]
mov r14, rcx
shr r14, 0x20
mov ebx, ecx
add rbx, r9
cmp rbx, r9
je 0x14001e4ec
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x14001e4ec
mov esi, dword [rbx + 0x20]
dec r8d
lea rcx, [rsi + r8*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov ecx, 0x5aa18ca0
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x14001e466
nop
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x14001e450
cmp ecx, r10d
je 0x14001e479
test r8d, r8d
jne 0x14001e432
jmp 0x14001e4ec
xor edi, edi
jmp 0x14001e36a
mov edx, dword [rbx + 0x1c]
add rdx, r9
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx ecx, word [rcx + r8*2]
mov edx, dword [rdx + rcx*4]
add rdx, r9
cmp rdx, rbx
jbe 0x14001e504
lea rax, [r14 + rbx]
cmp rdx, rax
jae 0x14001e504
mov r11d, 0x5aa18ca0
mov r10d, r11d
movzx eax, byte [rdx]
cmp al, 0x2e
je 0x14001e4c7
nop
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
inc rdx
movzx eax, byte [rdx]
cmp al, 0x2e
jne 0x14001e4b0
inc rdx
movzx eax, byte [rdx]
test al, al
je 0x14001e4e9
movsx eax, al
xor eax, r10d
imul r10d, eax, 0x1000193
lea rdx, [rdx + 1]
movzx eax, byte [rdx]
test al, al
jne 0x14001e4d1
mov rdi, qword [r15]
mov rax, qword [rdi]
mov rdi, rax
cmp rax, r15
je 0x14001e502
cmp qword [rax + 0x30], 0
jne 0x14001e3b0
xor edx, edx
mov qword [0x14007d288], rdx
mov rcx, qword [rbp + 0x38]
call rdx
mov rdx, qword [0x14007d0c8]
test rdx, rdx
jne 0x14001e69b
xor r11d, r11d
mov r10d, 0x203430ae
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r15, qword [rax]
mov rdi, r15
movups xmm0, xmmword [rdi + 0x58]
movd eax, xmm0
sub ax, 8
test r11d, r11d
je 0x14001e58d
psrldq xmm0, 8
movq rcx, xmm0
movzx eax, ax
shr rax, 1
lea r8, [rcx + rax*2]
mov edx, 0xe8f390e4
cmp rcx, r8
je 0x14001e584
movsx eax, byte [rcx]
xor eax, edx
imul edx, eax, 0x1000193
add rcx, 2
cmp rcx, r8
jne 0x14001e570
cmp edx, r11d
jne 0x14001e67c
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rcx, qword [rax + r9 + 0x88]
mov r14, rcx
shr r14, 0x20
mov ebx, ecx
add rbx, r9
cmp rbx, r9
je 0x14001e67c
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x14001e67c
mov esi, dword [rbx + 0x20]
dec r8d
lea rcx, [rsi + r8*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov ecx, 0xe8f390e4
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x14001e5f6
nop
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x14001e5e0
cmp ecx, r10d
je 0x14001e602
test r8d, r8d
jne 0x14001e5c2
jmp 0x14001e67c
mov edx, dword [rbx + 0x1c]
add rdx, r9
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx ecx, word [rcx + r8*2]
mov edx, dword [rdx + rcx*4]
add rdx, r9
cmp rdx, rbx
jbe 0x14001e694
lea rax, [r14 + rbx]
cmp rdx, rax
jae 0x14001e694
mov r11d, 0xe8f390e4
mov r10d, r11d
movzx eax, byte [rdx]
cmp al, 0x2e
je 0x14001e657
nop word [rax + rax]
movsx eax, al
xor eax, r11d
imul r11d, eax, 0x1000193
inc rdx
movzx eax, byte [rdx]
cmp al, 0x2e
jne 0x14001e640
inc rdx
movzx eax, byte [rdx]
test al, al
je 0x14001e679
movsx eax, al
xor eax, r10d
imul r10d, eax, 0x1000193
lea rdx, [rdx + 1]
movzx eax, byte [rdx]
test al, al
jne 0x14001e661
mov rdi, qword [r15]
mov rax, qword [rdi]
mov rdi, rax
cmp rax, r15
je 0x14001e692
cmp qword [rax + 0x30], 0
jne 0x14001e541
xor edx, edx
mov qword [0x14007d0c8], rdx
mov rcx, qword [rbp + 0x40]
call rdx
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x70]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x70]
call fcn.14005bd60
nop
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rsi, rax
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001ea58
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rdi, qword [rax]
mov rbx, rdi
nop dword [rax + rax]
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x14001e7a7
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x14001e7a7
mov r10d, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
lea rcx, [r10 + r8*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov ecx, 0xb40718dd
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x14001e7a2
nop dword [rax]
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
test al, al
jne 0x14001e780
cmp ecx, 0xe6dccc9b
je 0x14001e940
test r8d, r8d
jne 0x14001e760
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rdi
je 0x14001e7bd
cmp qword [rax + 0x30], 0
jne 0x14001e730
xor ebx, ebx
mov eax, ebx
mov qword [rsp + 0x20], rbx
lea r9, [rbp + 0x30]
mov r8d, 0x1000
lea rdx, [rbp + 0x1e0]
mov rcx, rsi
call rax
test eax, eax
je 0x14001e7e6
cmp dword [rbp + 0x30], 0
ja 0x14001e7e9
mov r12, rbx
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, r12
mulsd xmm1, xmm0
movsd qword [rsp + 0x68], xmm1
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001e89f
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
jne 0x14001e967
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*4]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001e960
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
jmp 0x14001e963
mov edx, dword [r11 + 0x1c]
add rdx, r9
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx ecx, word [rcx + r8*2]
mov eax, dword [rdx + rcx*4]
add rax, r9
xor ebx, ebx
jmp 0x14001e7c1
mov eax, dword [rbp + 0x30]
mov dword [rsp + 0x70], eax
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
call fcn.140003790
movsx ecx, al
lea r8d, [rcx + rdx*4]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
imul r8d, dword [rsp + 0x70]
test r8d, r8d
je 0x14001ea5a
mov byte [rbp], 0x4c
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 1], xmm0
mov qword [rbp + 0x11], rax
mov qword [rsp + 0x58], rbx
mov rax, qword [rsp + 0x58]
cmp rax, 0x19
jae 0x14001ea35
movabs r9, 0x33405c635154d936
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rsp + 0x58]
mov rax, qword [rsp + 0x58]
movzx edx, byte [rbp + rax]
add r8, r9
mov eax, edx
and rax, r8
imul rcx, rax, 0xfffffffffffffffe
add rcx, rdx
add rcx, r8
sub cl, 0x7a
mov rax, qword [rsp + 0x58]
mov byte [rbp + rax], cl
mov rax, qword [rsp + 0x58]
inc rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
cmp rax, 0x19
jb 0x14001e9f0
mov ecx, dword [rbp + 0x30]
movzx eax, byte [rbp]
mov byte [rbp + rcx + 0x1e0], al
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x80]
call fcn.140002170
jmp 0x14001ea5a
xor ebx, ebx
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea edx, [rdx + rdx*4]
call fcn.140003790
movsx ecx, al
lea r8d, [rcx + rdx*2]
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14007c0da]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14007c0dc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*2]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001eb57
call fcn.140003770
movsx edx, al
movsx eax, byte [0x14007d2e0]
imul edx, eax
shl edx, 3
call fcn.1400037a0
movsx ecx, al
sub edx, ecx
call fcn.140003780
movsx ecx, al
add edx, ecx
movsx ecx, byte [0x14007c0dc]
add ecx, edx
jne 0x14001ec03
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*4]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
cmp r8d, eax
je 0x14001ebf8
call fcn.140003760
movsx edx, al
call fcn.140003750
movsx ecx, al
imul edx, ecx
lea r8d, [rdx + rdx*8]
call fcn.140003790
movsx ecx, al
add r8d, ecx
movsx eax, byte [reloc.OLEAUT32.dll_VariantCopy]
add eax, r8d
movsx ecx, byte [reloc.OLEAUT32.dll_VariantClear]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14007c0db]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
jmp 0x14001ebfb
mov eax, dword [rbp + 0x30]
cmp ebx, eax
jge 0x14001eca8
mov rdx, r13
lea rcx, [rbp + 0x88]
call fcn.140001f10
nop
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x70], rax
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x6c], edx
lea rcx, [rbp + 0x88]
call fcn.140001bb0
lea rcx, [rbp + 0x90]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x108]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 7
jbe 0x14001eca0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x50]
mov r8, rcx
cmp rdx, 0x1000
jb 0x14001ec9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x14001ed2f
call fcn.14006f7a0
mov rax, r13
jmp 0x14001ed3b
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x70], rax
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov rax, rcx
mov dword [rbp + rcx + 0x6c], edx
lea rcx, [rbp + 0x88]
call fcn.140001bb0
lea rcx, [rbp + 0x90]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x108]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 7
jbe 0x14001ed3b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ed36
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001ed36
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006f7a0
mov rcx, qword [rbp + 0x11e0]
xor rcx, rsp
call fcn.14006f780
mov rbx, qword [rsp + 0x1350]
movaps xmm6, xmmword [rsp + 0x12f0]
add rsp, 0x1300
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret