Function at 0x18000c990
Capabilities:
Encode data using xor
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x1c8]
sub rsp, 0x2b0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
movaps xmmword [rax - 0x88], xmm12
movaps xmmword [rax - 0x98], xmm13
movaps xmmword [rax - 0xa8], xmm14
mov rax, qword [0x1801ab040]
xor rax, rsp
mov qword [rbp + 0x110], rax
xor r15d, r15d
cmp byte [0x1801dfa94], r15b
je 0x18000da1e
call fcn.18000c010
mov qword [0x1801ad740], rax
xorps xmm9, xmm9
movss xmm14, dword [0x180192628]
movss xmm13, dword [0x1801925dc]
cmp byte [0x1801dfaa5], r15b
je 0x18000cc5e
mov rax, qword [0x1801ad7e0]
lea r8, str.Background
xor edx, edx
mov rax, qword [rax + 0x1e00]
mov rcx, qword [rax]
cmp byte [0x1801dfa8a], r15b
je 0x18000cba1
call fcn.18003d3e0
mov rbx, rax
movaps xmm0, xmmword [0x1801930d0]
movups xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp + 0xa0]
call fcn.180039ac0
mov edi, eax
mov ecx, dword [0x1801dfa8c]
lea edx, [rcx + rcx*4]
add edx, edx
movd xmm2, edx
cvtdq2ps xmm2, xmm2
movss xmm1, dword [0x1801f82ac]
mulss xmm1, xmm13
movss xmm0, dword [0x1801f82a8]
mulss xmm0, xmm13
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
movss xmm6, dword [0x1801926f0]
test eax, 0xff000000
je 0x18000cb06
comiss xmm9, xmm2
jae 0x18000cb06
mov dword [rsp + 0x28], 0x63
movss dword [rsp + 0x20], xmm6
xorps xmm3, xmm3
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.1800596d0
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.180058c10
mov dword [rbx + 0x78], r15d
mov rax, qword [0x1801ad7e0]
mov rax, qword [rax + 0x1e00]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.18003d3e0
mov rbx, rax
movaps xmm0, xmmword [0x180193290]
movups xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp + 0xa0]
call fcn.180039ac0
mov edi, eax
mov ecx, dword [0x1801dfa8c]
lea edx, [rcx + rcx*4]
add edx, edx
movd xmm2, edx
cvtdq2ps xmm2, xmm2
movss xmm1, dword [0x1801f82ac]
mulss xmm1, xmm13
movss xmm0, dword [0x1801f82a8]
mulss xmm0, xmm13
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
test eax, 0xff000000
je 0x18000cc5e
comiss xmm9, xmm2
jae 0x18000cc5e
mov dword [rsp + 0x28], 0x63
movss dword [rsp + 0x20], xmm6
jmp 0x18000cc20
call fcn.18003d3e0
mov rbx, rax
movaps xmm0, xmmword [0x180193290]
movups xmmword [rbp + 0xa0], xmm0
lea rcx, [rbp + 0xa0]
call fcn.180039ac0
mov edi, eax
mov ecx, dword [0x1801dfa8c]
lea edx, [rcx + rcx*4]
add edx, edx
movd xmm2, edx
cvtdq2ps xmm2, xmm2
movss xmm1, dword [0x1801f82ac]
mulss xmm1, xmm13
movss xmm0, dword [0x1801f82a8]
mulss xmm0, xmm13
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
test eax, 0xff000000
je 0x18000cc5e
comiss xmm9, xmm2
jae 0x18000cc5e
mov dword [rsp + 0x28], 0x63
movss xmm0, dword [0x1801926f0]
movss dword [rsp + 0x20], xmm0
xorps xmm3, xmm3
subss xmm2, xmm13
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.1800596d0
movss dword [rsp + 0x28], xmm14
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.180057ce0
mov dword [rbx + 0x78], r15d
cmp byte [0x1801dfa88], r15b
je 0x18000cd60
cmp byte [0x1801dfa9d], r15b
jne 0x18000cd6d
mov rax, qword [0x1801ad708]
cmp byte [0x1801dfa95], r15b
jne 0x18000ccb7
test rax, rax
je 0x18000cc92
movzx ecx, byte [rax]
jmp 0x18000cc97
movzx ecx, byte [rsp + 0x30]
cmp cl, 1
je 0x18000cd31
test rax, rax
je 0x18000ccad
movzx ecx, byte [rax]
cmp cl, 2
jmp 0x18000ccf1
movzx ecx, byte [rsp + 0x30]
cmp cl, 2
jmp 0x18000ccf1
test rax, rax
je 0x18000ccc1
movzx ecx, byte [rax]
jmp 0x18000ccc6
movzx ecx, byte [rsp + 0x30]
cmp cl, 1
je 0x18000cd31
test rax, rax
je 0x18000ccd5
movzx ecx, byte [rax]
jmp 0x18000ccda
movzx ecx, byte [rsp + 0x30]
cmp cl, 2
je 0x18000cd31
test rax, rax
je 0x18000cce9
movzx ecx, byte [rax]
jmp 0x18000ccee
movzx ecx, byte [rsp + 0x30]
cmp cl, 3
je 0x18000cd31
cmp byte [0x1801ad748], r15b
je 0x18000ce61
mov dword [rbp + 0xc0], r15d
mov dword [rbp + 0xd4], 4
mov r8d, 0x28
lea rdx, [rbp + 0xc0]
lea ecx, [r8 - 0x27]
call qword [sym.imp.USER32.dll_SendInput]
mov byte [0x1801ad748], r15b
jmp 0x18000cd60
mov byte [0x1801ad748], 1
mov dword [rbp + 0xc0], r15d
mov dword [rbp + 0xd4], 2
mov r8d, 0x28
lea rdx, [rbp + 0xc0]
lea ecx, [r8 - 0x27]
call qword [sym.imp.USER32.dll_SendInput]
cmp byte [0x1801dfa9d], r15b
je 0x18000ce61
mov ecx, dword [0x1801dfa90]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x18000ce29
mov rax, qword [0x1801ad708]
cmp byte [0x1801dfa95], r15b
jne 0x18000cdbc
test rax, rax
je 0x18000cd9b
movzx ecx, byte [rax]
jmp 0x18000cda0
movzx ecx, byte [rsp + 0x30]
cmp cl, 1
je 0x18000cdf8
test rax, rax
je 0x18000cdb2
movzx ecx, byte [rax]
cmp cl, 2
jmp 0x18000cdf6
movzx ecx, byte [rsp + 0x30]
cmp cl, 2
jmp 0x18000cdf6
test rax, rax
je 0x18000cdc6
movzx ecx, byte [rax]
jmp 0x18000cdcb
movzx ecx, byte [rsp + 0x30]
cmp cl, 1
je 0x18000cdf8
test rax, rax
je 0x18000cdda
movzx ecx, byte [rax]
jmp 0x18000cddf
movzx ecx, byte [rsp + 0x30]
cmp cl, 2
je 0x18000cdf8
test rax, rax
je 0x18000cdee
movzx ecx, byte [rax]
jmp 0x18000cdf3
movzx ecx, byte [rsp + 0x30]
cmp cl, 3
jne 0x18000ce29
mov byte [0x1801ad748], 1
mov dword [rbp + 0xc0], r15d
mov dword [rbp + 0xd4], 2
mov r8d, 0x28
lea rdx, [rbp + 0xc0]
lea ecx, [r8 - 0x27]
call qword [sym.imp.USER32.dll_SendInput]
jmp 0x18000ce61
cmp byte [0x1801ad748], r15b
je 0x18000ce61
mov dword [rbp + 0xc0], r15d
mov dword [rbp + 0xd4], 4
mov r8d, 0x28
lea rdx, [rbp + 0xc0]
lea ecx, [r8 - 0x27]
call qword [sym.imp.USER32.dll_SendInput]
mov byte [0x1801ad748], r15b
movsd xmm10, qword [0x180192690]
cmp byte [0x1801dfa89], r15b
je 0x18000d021
mov rdx, qword [0x1801ad740]
test rdx, rdx
je 0x18000d021
xor r8d, r8d
lea rcx, [rbp + 0xa0]
call fcn.18000b590
mov rdx, qword [0x1801ad740]
mov ecx, dword [0x1801ab484]
test ecx, ecx
je 0x18000ceda
sub ecx, 1
je 0x18000ceb7
cmp ecx, 1
jne 0x18000cee9
lea r8d, [rcx + 2]
jmp 0x18000cedd
test rdx, rdx
jne 0x18000ceca
movd eax, xmm9
xorps xmm0, xmm0
unpcklps xmm0, xmm9
jmp 0x18000cef7
movsd xmm0, qword [rdx + 0x90]
mov eax, dword [rdx + 0x98]
jmp 0x18000cef7
xor r8d, r8d
lea rcx, [rbp + 0xa0]
call fcn.18000b590
movsd xmm0, qword [rbp + 0xa0]
mov eax, dword [rbp + 0xa8]
movsd qword [rbp + 0xa0], xmm0
mov dword [rbp + 0xa8], eax
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x40]
call fcn.18000b710
movss xmm11, dword [rsp + 0x44]
cvtps2pd xmm8, xmm11
movss xmm12, dword [rsp + 0x40]
cvtps2pd xmm0, xmm12
movss xmm7, dword [0x1801ada14]
cvtps2pd xmm7, xmm7
movss xmm1, dword [0x1801ada10]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
subsd xmm8, xmm7
movaps xmm1, xmm10
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x18000cf7d
sqrtss xmm0, xmm0
jmp 0x18000cf82
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mov eax, dword [0x1801dfa8c]
lea ecx, [rax + rax*4]
add ecx, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x18000d021
mov rax, qword [0x1801ad7e0]
mov rax, qword [rax + 0x1e00]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.18003d3e0
mov r10, rax
lea rcx, [0x1801ab658]
call fcn.180039ac0
movss dword [rsp + 0x40], xmm12
movss dword [rsp + 0x44], xmm11
movss xmm1, dword [0x1801f82ac]
mulss xmm1, xmm13
movss xmm0, dword [0x1801f82a8]
mulss xmm0, xmm13
movss dword [rbp + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm1
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0xa0]
mov rcx, r10
call fcn.18005a070
cmp byte [0x1801dfa9e], r15b
jne 0x18000d2f4
cmp byte [0x1801ab488], r15b
je 0x18000d1f9
mov ecx, dword [0x1801dfa98]
cmp byte [0x1801dfa9c], r15b
jne 0x18000d1a1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movsx ecx, ax
test ecx, 0x90000
je 0x18000da1e
mov rdx, qword [0x1801ad740]
test rdx, rdx
je 0x18000da1e
xor r8d, r8d
lea rcx, [rbp + 0xa0]
call fcn.18000b590
mov rdx, qword [0x1801ad740]
mov ecx, dword [0x1801ab484]
test ecx, ecx
je 0x18000d0cc
sub ecx, 1
je 0x18000d0a3
cmp ecx, 1
jne 0x18000d0db
lea r8d, [rcx + 2]
jmp 0x18000d0cf
test rdx, rdx
jne 0x18000d0b9
movd edi, xmm9
xorps xmm0, xmm0
unpcklps xmm0, xmm9
movaps xmm7, xmm0
jmp 0x18000d0e9
movsd xmm0, qword [rdx + 0x90]
mov edi, dword [rdx + 0x98]
movaps xmm7, xmm0
jmp 0x18000d0e9
xor r8d, r8d
lea rcx, [rbp + 0xa0]
call fcn.18000b590
movsd xmm7, qword [rbp + 0xa0]
mov edi, dword [rbp + 0xa8]
movsd qword [rsp + 0x40], xmm7
mov dword [rsp + 0x48], edi
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0xa0]
call fcn.18000b710
mov rbx, rax
movss xmm0, dword [rax]
cvtps2pd xmm0, xmm0
movss xmm2, dword [0x1801ada10]
cvtps2pd xmm2, xmm2
subsd xmm0, xmm2
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movss xmm0, dword [rbx + 4]
cvtps2pd xmm0, xmm0
movss xmm2, dword [0x1801ada14]
cvtps2pd xmm2, xmm2
subsd xmm0, xmm2
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
xorps xmm1, xmm1
ucomiss xmm1, xmm0
ja 0x18000d162
sqrtss xmm0, xmm0
jmp 0x18000d167
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mov eax, dword [0x1801dfa8c]
lea ecx, [rax + rax*4]
add ecx, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x18000da1e
movsd qword [rbp + 0xa0], xmm7
mov dword [rbp + 0xa8], edi
lea rcx, [rbp + 0xa0]
call fcn.18000c3e0
jmp 0x18000da1e
lea rdi, section..text
mov qword [rbp + 0xa0], rdi
mov rax, qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov qword [rbp + 0xa8], rax
xor eax, eax
mov qword [rbp + 0xb0], rax
mov qword [rsp + 0x28], r15
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call fcn.1800c6850
movsx ecx, ax
test ecx, 0x90000
setne byte [0x1801ad749]
jmp 0x18000da1e
cmp byte [0x1801dfa9c], r15b
jne 0x18000d2e8
mov rdx, qword [0x1801ad740]
test rdx, rdx
je 0x18000da1e
xor r8d, r8d
lea rcx, [rbp + 0xa0]
call fcn.18000b590
mov rdx, qword [0x1801ad740]
mov ecx, dword [0x1801ab484]
test ecx, ecx
je 0x18000d26f
sub ecx, 1
je 0x18000d246
cmp ecx, 1
jne 0x18000d27e
lea r8d, [rcx + 2]
jmp 0x18000d272
test rdx, rdx
jne 0x18000d25c
movd edi, xmm9
xorps xmm0, xmm0
unpcklps xmm0, xmm9
movaps xmm7, xmm0
jmp 0x18000d28c
movsd xmm0, qword [rdx + 0x90]
mov edi, dword [rdx + 0x98]
movaps xmm7, xmm0
jmp 0x18000d28c
xor r8d, r8d
lea rcx, [rbp + 0xa0]
call fcn.18000b590
movsd xmm7, qword [rbp + 0xa0]
mov edi, dword [rbp + 0xa8]
movsd qword [rsp + 0x40], xmm7
mov dword [rsp + 0x48], edi
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0xa0]
call fcn.18000b710
mov rbx, rax
movss xmm0, dword [rax]
cvtps2pd xmm0, xmm0
movss xmm1, dword [0x1801ada10]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movss xmm0, dword [rbx + 4]
cvtps2pd xmm0, xmm0
movss xmm1, dword [0x1801ada14]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
jmp 0x18000d140
mov byte [0x1801ad749], 1
jmp 0x18000da1e
cmp qword [0x1801ad758], r15
jne 0x18000d4ad
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], rax
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xc0], xmm0
movdqu xmmword [rbp + 0xd0], xmm1
movdqu xmmword [rbp + 0xe0], xmm0
mov ecx, dword [0x1801ad66c]
mov rax, qword gs:[0x58]
mov edx, 8
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x1801f8654], ecx
jle 0x18000d39d
lea rcx, [0x1801f8654]
call fcn.1800cb0a8
cmp dword [0x1801f8654], 0xffffffff
jne 0x18000d39d
xorps xmm0, xmm0
movdqu xmmword [0x1801f8658], xmm0
xorps xmm1, xmm1
movdqu xmmword [0x1801f8668], xmm1
movdqu xmmword [0x1801f8678], xmm0
lea rcx, [0x1800d3ba0]
call fcn.1800cafb4
lea rcx, [0x1801f8654]
call fcn.1800cb03c
lea rcx, [rsp + 0x40]
call fcn.1800a5470
mov rdx, rax
lea rcx, [0x1801f8658]
call fcn.180095ef0
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x18000d40f
mov rax, qword [rsp + 0x50]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000d3fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18000d3fc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800cafcc
mov qword [rsp + 0x40], r15
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
lea rdx, [0x1801f8658]
lea rcx, [rbp + 0xa0]
call fcn.1800242d0
nop
lea rcx, [rbp + 0xc0]
call fcn.18000dad0
mov rdi, qword [rbp + 0xa8]
mov rbx, qword [rbp + 0xa0]
sub rdi, rbx
sar rdi, 3
cmp rdi, 2
jbe 0x18000d462
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdqe
xor edx, edx
div rdi
mov rax, qword [rbx + rdx*8]
mov qword [0x1801ad758], rax
test rbx, rbx
je 0x18000d4ad
mov rax, qword [rbp + 0xb0]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18000d4a5
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18000d4a5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.1800cafcc
lea rdi, section..text
mov qword [rbp + 0xa0], rdi
mov rax, qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov qword [rbp + 0xa8], rax
xor eax, eax
mov qword [rbp + 0xb0], rax
mov qword [rsp + 0x28], r15
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 1]
call fcn.1800c6850
movsx ecx, ax
test ecx, 0x90000
je 0x18000da1e
mov rax, qword [0x1801ad6e8]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000da1e
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x18000da1e
mov eax, dword [0x1801ad730]
cmp qword [rax + rdx], 0
je 0x18000da1e
mov r14, qword [0x1801ad740]
movdqa xmm0, xmmword [0x180193da0]
movdqu xmmword [rbp + 0xa0], xmm0
mov dword [rbp + 0xb0], 0xe7fbe5ac
mov word [rbp + 0xb4], 0x100
mov rcx, r15
lea eax, [rcx - 0x4c]
xor byte [rbp + rcx + 0xa0], al
inc rcx
cmp rcx, 0x14
jb 0x18000d560
mov byte [rbp + 0xb5], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
mov qword [rbp + 0x100], r15
mov qword [rbp + 0x108], r15
lea rax, [rbp + 0xa0]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x18000d5a3
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0xf0]
call fcn.18000eea0
nop
mov rax, qword [0x1801ad6e8]
mov rcx, qword [rax]
test rcx, rcx
je 0x18000d5f7
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x18000d5f7
mov eax, dword [0x1801ad730]
mov r8, qword [rax + rcx]
test r8, r8
je 0x18000d5f7
mov r8, qword [r8 + 0x20]
test r8, r8
je 0x18000d5f7
mov r8, qword [r8 + 0x10]
jmp 0x18000d5fa
mov r8, r15
lea r9, [rbp + 0xb5]
movabs r10, 0xcccccccccccccccd
nop dword [rax + rax]
dec r9
mov rax, r10
mul r8
shr rdx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8, rdx
test rdx, rdx
jne 0x18000d610
lea r8, [rbp + 0xb5]
mov rdx, r9
lea rcx, [rbp + 0xc0]
call fcn.18000f870
nop
lea rdx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 0xf
cmova rdx, qword [rbp + 0xc0]
mov r8, qword [rbp + 0xd0]
lea rcx, [rbp + 0xf0]
call fcn.18000df10
mov word [rsp + 0x40], 0xa
mov byte [rsp + 0x42], 0
lea rcx, [rsp + 0x40]
mov r8, rbx
nop
inc r8
cmp byte [rcx + r8], 0
jne 0x18000d690
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.18000df10
nop
lea rcx, [rbp + 0xc0]
call fcn.18000e640
movdqa xmm0, xmmword [0x1801938a0]
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmm1, xmmword [0x180193f60]
movdqa xmmword [rsp + 0x70], xmm1
movdqa xmm0, xmmword [0x1801938f0]
movdqa xmmword [rbp - 0x80], xmm0
movdqa xmm1, xmmword [0x180193890]
movdqa xmmword [rbp - 0x70], xmm1
movdqa xmm0, xmmword [0x180193590]
movdqa xmmword [rbp - 0x60], xmm0
movdqa xmm1, xmmword [0x180193640]
movdqa xmmword [rbp - 0x50], xmm1
movdqa xmm0, xmmword [0x1801935e0]
movdqa xmmword [rbp - 0x40], xmm0
movdqa xmm1, xmmword [0x1801933b0]
movdqa xmmword [rbp - 0x30], xmm1
movdqa xmm0, xmmword [0x1801935f0]
movdqa xmmword [rbp - 0x20], xmm0
movdqa xmm1, xmmword [0x1801930c0]
movdqa xmmword [rbp - 0x10], xmm1
movdqa xmm0, xmmword [0x180192b80]
movdqa xmmword [rbp], xmm0
movdqa xmm1, xmmword [0x180193460]
movdqa xmmword [rbp + 0x10], xmm1
movdqa xmm0, xmmword [str.DYVGVIV_NSNV]
movdqa xmmword [rbp + 0x20], xmm0
movdqa xmm1, xmmword [0x1801943b0]
movdqa xmmword [rbp + 0x30], xmm1
movdqa xmm0, xmmword [0x180194090]
movdqa xmmword [rbp + 0x40], xmm0
movdqa xmm1, xmmword [0x1801939b0]
movdqa xmmword [rbp + 0x50], xmm1
movdqa xmm0, xmmword [0x180193cb0]
movdqa xmmword [rbp + 0x60], xmm0
movdqa xmm1, xmmword [0x180193f30]
movdqa xmmword [rbp + 0x70], xmm1
movdqa xmm0, xmmword [0x180193870]
movdqa xmmword [rbp + 0x80], xmm0
mov dword [rbp + 0x90], 0xc7ca8097
mov dword [rbp + 0x94], 0xe1c3d9db
mov dword [rbp + 0x98], 0xe58a8389
mov word [rbp + 0x9c], 0x100
mov rcx, r15
nop word [rax + rax]
lea eax, [rcx - 0x4c]
xor byte [rsp + rcx + 0x60], al
inc rcx
cmp rcx, 0x13c
jb 0x18000d7e0
mov byte [rbp + 0x9d], 0
lea rax, [rsp + 0x60]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x18000d802
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0xf0]
call fcn.18000df10
movdqa xmm0, xmmword [0x180193d70]
movdqu xmmword [rbp + 0xa0], xmm0
mov dword [rbp + 0xb0], 0xb5a3bca5
mov dword [rbp + 0xb4], 0xeaf4e8
mov byte [rbp + 0xb8], 1
mov rcx, r15
nop dword [rax + rax]
lea eax, [rcx - 0x4c]
xor byte [rbp + rcx + 0xa0], al
inc rcx
cmp rcx, 0x17
jb 0x18000d850
mov byte [rbp + 0xb8], 0
lea rax, [rbp + 0xa0]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x18000d874
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0xf0]
call fcn.18000df10
mov rsi, rax
test r14, r14
jne 0x18000d89e
mov eax, r15d
jmp 0x18000d8dd
mov qword [rbp + 0xa0], rdi
mov rax, qword [0x1801ad6f8]
mov qword [rbp + 0xa8], rax
xor eax, eax
mov qword [rbp + 0xb0], rax
mov qword [rsp + 0x28], r15
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, r14
call fcn.1800c6850
mov edx, eax
lea rcx, [rbp + 0xc0]
call fcn.18000ad50
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x18000d8fa
mov rax, qword [rax]
mov rdx, rax
mov rcx, rsi
call fcn.18000df10
mov word [rsp + 0x40], 0xa
mov byte [rsp + 0x42], 0
lea rcx, [rsp + 0x40]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rcx + r8], 0
jne 0x18000d920
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.18000df10
nop
lea rcx, [rbp + 0xc0]
call fcn.18000e640
movdqa xmm0, xmmword [0x180193b30]
movdqu xmmword [rbp + 0xa0], xmm0
mov dword [rbp + 0xb0], 0xa3a3b1a7
mov dword [rbp + 0xb4], 0xb2aba598
mov dword [rbp + 0xb8], 0xe7bfa9
mov byte [rbp + 0xbc], 1
mov rcx, r15
nop dword [rax]
lea eax, [rcx - 0x4c]
xor byte [rbp + rcx + 0xa0], al
inc rcx
cmp rcx, 0x1b
jb 0x18000d980
mov byte [rbp + 0xbc], 0
lea rax, [rbp + 0xa0]
inc rbx
cmp byte [rax + rbx], 0
jne 0x18000d9a1
mov r8, rbx
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0xf0]
call fcn.18000df10
lea rdx, [rbp + 0xf0]
cmp qword [rbp + 0x108], 0xf
cmova rdx, qword [rbp + 0xf0]
call fcn.1800a11b0
call fcn.1800a1570
test al, al
je 0x18000d9f1
mov rdx, qword [0x1801ad758]
call fcn.1800a18d0
lea rax, [rbp + 0xf0]
cmp qword [rbp + 0x108], 0xf
cmova rax, qword [rbp + 0xf0]
mov qword [rbp + 0x100], r15
mov byte [rax], 0
lea rcx, [rbp + 0xf0]
call fcn.18000e640
mov rcx, qword [rbp + 0x110]
xor rcx, rsp
call fcn.1800cac00
lea r11, [rsp + 0x2b0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop rbp
ret