Function at 0x1800c9660
Capabilities:
Authenticate hmac
Create thread
Encode data using xor
Query environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x458]
sub rsp, 0x530
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
mov rax, qword [0x1801b65c0]
xor rax, rsp
mov qword [rbp + 0x3b0], rax
xor r14d, r14d
mov r15d, r14d
mov dword [rsp + 0x58], r14d
mov rax, qword [0x1801f1d70]
test rax, rax
je 0x1800c96de
mov rcx, qword [rax + 0xa0]
jmp 0x1800c96e1
mov rcx, r14
cmp qword [rcx + 0x18], r14
jne 0x1800c9702
test rax, rax
je 0x1800c9702
mov rcx, qword [rax + 0xa0]
test rcx, rcx
je 0x1800c9702
cmp qword [rcx], r14
je 0x1800c9702
call fcn.1800a5630
call fcn.1800a60a0
call fcn.1800830f0
cmp byte [0x1801b7be8], r14b
je 0x1800cbac9
mov rax, qword [0x1801f1d70]
mov qword [rax + 0x47a0], r14
mov qword [rax + 0x47a8], r14
mov dword [rax + 0x4794], 2
or dword [rax + 0x4790], 3
mov dword [rax + 0x47b0], 0x44408000
mov dword [rax + 0x47b4], 0x43fa0000
mov dword [rax + 0x4798], 2
mov rax, qword [str.cF_U_N7]
mov qword [rsp + 0x40], rax
movdqa xmm10, xmmword [0x180198100]
movdqa xmm12, xmmword [str.00000000000000005555555555555555]
movdqa xmm11, xmmword [str.11116666]
movdqa xmm9, xmmword [0x180198470]
movdqa xmm8, xmmword [0x180198060]
mov r12d, dword [0x1801b6570]
cmp r12d, 2
jl 0x1800c9872
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
movdqa xmm1, xmm8
psubd xmm1, xmm0
andps xmm1, xmm10
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm12
movd xmm0, dword [rsp + 0x40]
xorps xmm1, xmm0
movd dword [rsp + 0x40], xmm1
movdqa xmm2, xmmword [0x180198070]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm12
movd xmm0, dword [rsp + 0x44]
xorps xmm2, xmm0
movd dword [rsp + 0x44], xmm2
jmp 0x1800c98b0
lea r9, [rsp + 0x40]
mov r8d, r14d
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1800c9880
mov r8d, 0x20
lea rdx, [0x1801b7be8]
lea rcx, [rsp + 0x40]
call fcn.1800887a0
test al, al
je 0x1800cbac4
movsd xmm0, qword [str.qrxtfgxnz_]
movsd qword [rsp + 0x70], xmm0
mov eax, dword [0x1801975c0]
mov dword [rsp + 0x78], eax
movzx eax, byte [0x1801975c4]
mov byte [rsp + 0x7c], al
mov r8d, r14d
cmp r12d, 2
jl 0x1800c99db
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
movdqa xmm1, xmm8
psubd xmm1, xmm0
andps xmm1, xmm10
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.qrxtfgxnz_]
xorps xmm1, xmm0
movd dword [rsp + 0x70], xmm1
movdqa xmm2, xmmword [0x180198070]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x74]
xorps xmm2, xmm1
movd dword [rsp + 0x74], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x70]
add r9, rax
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x1800c99f0
lea rcx, [rsp + 0x70]
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov r10, rax
movups xmm0, xmmword [str.lv_CAYGQXfhKTXK_9]
movups xmmword [rbp - 0x60], xmm0
movsd xmm0, qword [0x180197548]
movsd qword [rbp - 0x50], xmm0
mov ecx, dword [0x180197550]
mov dword [rbp - 0x48], ecx
mov r8d, r14d
cmp r12d, 2
jl 0x1800c9b61
movdqa xmmword [rbp], xmm12
lea rcx, [rbp - 0x60]
mov edx, dword [rbp]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm8
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm8
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm3, xmm0
andps xmm3, xmm10
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm3, xmm0
movd dword [rcx + 4], xmm3
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x1800c9a70
cmp r8d, 0x1c
jge 0x1800c9ba0
movsxd rax, r8d
lea r9, [rbp - 0x60]
add r9, rax
nop dword [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x1800c9b70
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r14
mov rsi, 0xffffffffffffffff
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [r10 + r8], r14b
jne 0x1800c9bc0
mov rdx, r10
lea rcx, [rbp - 0x80]
call fcn.18000f810
lea rax, [rbp - 0x60]
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rax + r8], r14b
jne 0x1800c9be0
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x80]
call fcn.1800561c0
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x60], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], r14b
lea rcx, [rbp - 0x80]
call fcn.18000d780
lea rax, [rbp + 0x50]
cmp qword [rbp + 0x68], 0xf
cmova rax, qword [rbp + 0x50]
mov qword [rbp], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 8], rax
call fcn.1800f0cd0
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp], xmm0
lea r8, [rbp]
mov edx, eax
lea rcx, [rbp + 0x180]
call fcn.1800c6f40
mov ecx, dword [0x1801f1c5c]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x1801f28b0], ecx
jle 0x1800c9cdc
lea rcx, [0x1801f28b0]
call fcn.1800f1698
cmp dword [0x1801f28b0], esi
jne 0x1800c9cdc
mov rax, qword [0x1801f1d70]
mov rcx, qword [rax + 0x3eb8]
movsd xmm0, qword [rcx + 0x248]
movaps xmm1, xmm0
shufps xmm1, xmm1, 0x55
movsd qword [rsp + 0x48], xmm0
subss xmm1, dword [rcx + 0xfc]
movss dword [0x1801f2550], xmm1
lea rcx, [0x1801f28b0]
call fcn.1800f162c
movsd xmm0, qword [str.vXVXEC8]
movss xmm1, dword [0x1801f2550]
movzx eax, byte [0x180197640]
movsd qword [rsp + 0x48], xmm0
movss dword [rsp + 0x44], xmm1
mov dword [rsp + 0x40], 0x43160000
mov byte [rsp + 0x48], 0x46
xor byte [rsp + 0x49], 0x31
xor byte [rsp + 0x4a], 0x32
xor byte [rsp + 0x4b], 0x33
xor byte [rsp + 0x4c], 0x34
xor byte [rsp + 0x4d], 0x35
xor byte [rsp + 0x4e], 0x36
xor byte [rsp + 0x4f], 0x37
xor al, 0x38
mov byte [rsp + 0x50], al
mov r9d, 0x800
mov r8b, 1
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.1800859f0
movss xmm6, dword [0x180197f84]
mov dword [rsp + 0x40], 0xbf800000
mov dword [rsp + 0x44], 0xbf800000
lea rdx, [rsp + 0x40]
call fcn.1800afc10
xorps xmm7, xmm7
test al, al
je 0x1800ca472
mov dword [rsp + 0x64], r14d
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0x40]
call fcn.1800c8100
mov qword [rbp + 0x10], r14
mov rbx, qword [rbp + 0x48]
test rbx, rbx
je 0x1800c9da4
lock inc dword [rbx + 8]
mov rbx, qword [rbp + 0x48]
movaps xmm0, xmmword [rbp + 0x40]
movdqa xmmword [rbp + 0x10], xmm0
test rbx, rbx
je 0x1800c9dba
lock inc dword [rbx + 8]
mov rbx, qword [rbp + 0x48]
xorps xmm0, xmm0
movdqu xmmword [rbp], xmm0
test rbx, rbx
je 0x1800c9df4
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1800c9df0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1800c9df0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
mov rbx, qword [rbp + 0x48]
mov r13, qword [rbp + 0x10]
test r13, r13
je 0x1800ca3ff
lea rcx, [r13 + 0x20]
cmp qword [r13 + 0x38], 7
jbe 0x1800c9e10
mov rcx, qword [r13 + 0x20]
mov rax, qword [r13 + 0x30]
lea rdx, [rcx + rax*2]
mov rbx, rdx
call fcn.1800c70a0
cmp rax, rdx
je 0x1800c9e5e
movzx ecx, word [rax]
cmp cx, 0x5c
je 0x1800c9e34
cmp cx, 0x2f
jne 0x1800c9e3d
add rax, 2
cmp rax, rdx
jne 0x1800c9e25
cmp rax, rdx
je 0x1800c9e5e
lea r8, [rbx - 2]
movzx ecx, word [r8]
cmp cx, 0x5c
je 0x1800c9e5e
cmp cx, 0x2f
je 0x1800c9e5e
mov rbx, r8
cmp rax, r8
jne 0x1800c9e42
sub rdx, rbx
sar rdx, 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r14
mov r8, rdx
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.1800b1dd0
lea r14, [rbp - 0x80]
cmp qword [rbp - 0x68], 7
cmova r14, qword [rbp - 0x80]
mov rdi, qword [rbp - 0x70]
call fcn.1800f0cd0
mov r12d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xor edx, edx
mov qword [rbp + 0x30], rdx
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], dl
test rdi, rdi
je 0x1800c9f2e
cmp rdi, 0x7fffffff
ja 0x1800cbc3a
mov dword [rsp + 0x20], edx
xor r9d, r9d
mov r8d, edi
mov rdx, r14
mov ecx, eax
call fcn.1800f0d40
mov rbx, rax
mov qword [rsp + 0x48], rax
shr rax, 0x20
test eax, eax
jne 0x1800cbc30
movsxd rdx, ebx
xor r8d, r8d
lea rcx, [rbp + 0x20]
call fcn.18000d1e0
lea r9, [rbp + 0x20]
cmp qword [rbp + 0x38], 0xf
cmova r9, qword [rbp + 0x20]
mov dword [rsp + 0x20], ebx
mov r8d, edi
mov rdx, r14
mov ecx, r12d
call fcn.1800f0d40
mov qword [rsp + 0x48], rax
shr rax, 0x20
test eax, eax
jne 0x1800cbc26
lea rcx, [rbp - 0x80]
call fcn.1800b1d60
lea rdx, [rsp + 0x70]
mov rcx, r13
call fcn.1800c7b60
mov rax, qword [rsp + 0x70]
mov edx, dword [rsp + 0x78]
test edx, edx
je 0x1800c9f60
lea ecx, [rax - 1]
test ecx, 0xfffffff7
jne 0x1800cbc40
cmp eax, 2
jne 0x1800ca3cd
mov eax, dword [0x1801974ec]
mov dword [rsp + 0x40], eax
movzx eax, byte [0x1801974f0]
mov byte [rsp + 0x40], 0x2e
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor al, 0x34
mov byte [rsp + 0x44], al
lea rcx, [rsp + 0x40]
mov rax, rsi
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1800c9fa0
lea rcx, [rbp + 0x20]
mov rbx, qword [rbp + 0x20]
mov rdi, qword [rbp + 0x38]
cmp rdi, 0xf
cmova rcx, rbx
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x40]
mov rdx, qword [rbp + 0x30]
call fcn.1800c48a0
cmp rax, rsi
je 0x1800ca3cd
mov qword [rsp + 0x5c], 0
movsxd r12, dword [rsp + 0x64]
cmp dword [0x1801b7c18], r12d
sete dl
lea rcx, [rbp + 0x20]
cmp rdi, 0xf
cmova rcx, rbx
lea r9, [rsp + 0x5c]
call fcn.1800af720
test al, al
je 0x1800ca3c5
mov dword [0x1801b7c18], r12d
xor r15d, r15d
mov qword [rbp + 8], r15
mov rbx, r12
lea rdx, [rbp + 0x180]
lea rcx, [rbp - 0x20]
call fcn.1800c8100
mov rdi, rax
test r12d, r12d
jle 0x1800ca051
mov rcx, rdi
call fcn.1800c8280
dec rbx
test rbx, rbx
jg 0x1800ca038
mov r14, qword [rdi]
lea rax, [rdi + 8]
jmp 0x1800ca058
mov r14, qword [rax]
add rax, 8
mov rbx, qword [rax]
mov rdx, r15
mov rcx, r15
mov qword [rbp + 8], rbx
mov qword [rbp], r14
mov qword [rdi], rdx
mov qword [rax], rcx
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x1a0]
call sub.VCRUNTIME140.dll_memset
add r14, 0x20
cmp qword [r14 + 0x18], 7
jbe 0x1800ca091
mov r14, qword [r14]
lea rax, [0x180000000]
lea rax, [rax + 0x196240]
mov qword [rbp + 0x1a0], rax
lea rcx, [rbp + 0x250]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
mov edi, dword [rsp + 0x58]
or edi, 0x10
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x1a0]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
mov rax, qword [rbp + 0x1a0]
movsxd rcx, dword [rax + 4]
lea r13, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x1a0], r13
mov rax, qword [rbp + 0x1a0]
movsxd rcx, dword [rax + 4]
lea r8d, [rcx - 0xb0]
mov dword [rbp + rcx + 0x19c], r8d
lea rcx, [rbp + 0x1b0]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x1b0], rax
mov byte [rbp + 0x22c], r15b
mov byte [rbp + 0x221], r15b
lea rcx, [rbp + 0x1b0]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void____ptr64]
mov qword [rbp + 0x230], r15
mov rax, qword [0x1801f2120]
mov qword [rbp + 0x224], rax
mov qword [rbp + 0x218], r15
mov r8d, 1
mov rdx, r14
lea rcx, [rbp + 0x1b0]
call fcn.1800cc640
test rax, rax
jne 0x1800ca197
mov rax, qword [rbp + 0x1a0]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x1a0]
add rcx, rax
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov rax, qword [rbp + 0x1a0]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x1a0], r13
mov rax, qword [rbp + 0x1a0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x19c], edx
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x2b0]
call sub.VCRUNTIME140.dll_memset
lea rax, [0x180000000]
lea rax, [rax + 0x197644]
mov qword [rbp + 0x2b0], rax
lea rax, [0x180197378]
mov qword [rbp + 0x2c0], rax
lea rcx, [rbp + 0x348]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
or edi, 8
mov dword [rsp + 0x58], edi
xor r8d, r8d
lea rdx, [rbp + 0x2c8]
lea rcx, [rbp + 0x2b0]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64____ptr64]
mov rax, qword [rbp + 0x2b0]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x2b0], rdi
mov rax, qword [rbp + 0x2b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x2ac], edx
lea rcx, [rbp + 0x2c8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + 0x2c8], rax
mov qword [rbp + 0x330], r15
mov dword [rbp + 0x338], r15d
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x2c0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64____ptr64]
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x2c8]
call fcn.1800c4120
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 0xf
cmova rdx, qword [rbp - 0x40]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], r15
mov r8, rsi
inc r8
cmp byte [rdx + r8], r15b
jne 0x1800ca2c3
lea rcx, [rbp - 0x80]
call fcn.18000f810
lea rdx, [rbp - 0x80]
call fcn.180007de0
lea rcx, [rbp - 0x80]
call fcn.18000d780
lea rcx, [rbp - 0x40]
call fcn.18000d780
mov rax, qword [rbp + 0x2b0]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x2b0], rdi
mov rax, qword [rbp + 0x2b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x2ac], edx
lea rcx, [rbp + 0x2c8]
call fcn.1800c3ee0
lea rcx, [rbp + 0x2d0]
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 + 0x348]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
mov rax, qword [rbp + 0x1a0]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x1a0], r13
mov rax, qword [rbp + 0x1a0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x19c], edx
lea rcx, [rbp + 0x1b0]
call fcn.1800bd5e0
lea rcx, [rbp + 0x1b8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x250]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
test rbx, rbx
je 0x1800ca3c5
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1800ca3c5
mov rbx, qword [rbp + 8]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1800ca3c5
mov rcx, qword [rbp + 8]
mov rax, qword [rcx]
call qword [rax + 8]
inc r12d
mov dword [rsp + 0x64], r12d
lea rcx, [rbp + 0x20]
call fcn.18000d780
lea rcx, [rbp + 0x10]
call fcn.1800c8280
mov r13, qword [rbp + 0x10]
xor r14d, r14d
test r13, r13
jne 0x1800c9e01
mov rbx, qword [rbp + 0x48]
mov r15d, dword [rsp + 0x58]
mov r12d, dword [0x1801b6570]
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x1800ca43a
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x1800ca436
mov rbx, qword [rbp + 0x18]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1800ca436
mov rcx, qword [rbp + 0x18]
mov rax, qword [rcx]
call qword [rax + 8]
mov rbx, qword [rbp + 0x48]
test rbx, rbx
je 0x1800ca468
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1800ca468
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1800ca468
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
call fcn.180085aa0
call fcn.18008e1b0
call fcn.180085aa0
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov qword [rsp + 0x5c], 0
mov eax, dword [str.uU_G_G6]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x1801975b0]
mov word [rsp + 0x44], cx
movzx eax, byte [0x1801975b2]
mov byte [rsp + 0x40], 0x45
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor cl, 0x34
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x35
xor al, 0x36
mov byte [rsp + 0x46], al
xor r9d, r9d
mov r8b, 1
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x40]
call fcn.1800859f0
movsd xmm0, qword [str.cPTV]
movsd qword [rsp + 0x48], xmm0
movzx eax, word [0x180197528]
mov word [rsp + 0x50], ax
mov byte [rsp + 0x48], 0x53
xor byte [rsp + 0x49], 0x31
xor byte [rsp + 0x4a], 0x32
xor byte [rsp + 0x4b], 0x33
xor byte [rsp + 0x4c], 0x34
xor byte [rsp + 0x4d], 0x35
xor byte [rsp + 0x4e], 0x36
xor byte [rsp + 0x4f], 0x37
xor al, 0x38
mov byte [rsp + 0x50], al
xor byte [rsp + 0x51], 0x39
lea rcx, [rsp + 0x48]
call fcn.1800aa8f0
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov qword [rsp + 0x5c], 0
mov rax, qword [str.uIWPAAS7]
mov qword [rsp + 0x40], rax
cmp r12d, 2
jl 0x1800ca63a
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd eax, xmm12
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x40]
xorps xmm2, xmm1
movd dword [rsp + 0x40], xmm2
movdqa xmm3, xmmword [0x180198070]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm3, xmm0
andps xmm3, xmm10
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x44]
xorps xmm3, xmm1
movd dword [rsp + 0x44], xmm3
jmp 0x1800ca680
lea r9, [rsp + 0x40]
mov r8d, r14d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1800ca650
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x40]
call fcn.1800a96c0
movabs r13, 0x2aaaaaaaaaaaaaab
test al, al
je 0x1800ca818
cmp qword [0x1801f1d28], 0
jne 0x1800ca71e
lea rbx, [0x18001cc90]
lea rdi, [0x18001cdd0]
nop dword [rax]
xor edx, edx
lea rcx, [0x18001cc60]
call fcn.18003ded0
test rax, rax
je 0x1800ca6f4
mov rcx, qword [rax + 0x18]
mov qword [rcx + 0x100], rbx
mov rcx, qword [rax + 0x18]
mov qword [rcx + 0x580], rax
mov rcx, qword [rax + 0x18]
mov qword [rcx + 0x578], rdi
mov qword [0x1801f1d28], rax
call qword [0x1801f1d10]
mov rdx, qword [rax + 0x1b0]
mov rcx, qword [0x1801f1d28]
call fcn.18005c2c0
cmp qword [0x1801f1d28], 0
je 0x1800ca6c0
mov rcx, qword [0x1801f2570]
sub rcx, qword [0x1801f2568]
mov rax, r13
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsp + 0x5c], edx
mov dword [rsp + 0x60], r14d
mov qword [rsp + 0x40], 0
lea r9, [rsp + 0x5c]
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x80]
call fcn.180002eb0
mov ecx, 0x38
call fcn.1800f19b0
movups xmm0, xmmword [rbp - 0x80]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rbp - 0x70]
movups xmmword [rax + 0x10], xmm1
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
lea rcx, [0x1801f21d0]
mov qword [rax + 0x20], rcx
mov rcx, qword [0x1801f1d28]
mov qword [rax + 0x28], rcx
lea rcx, [0x18005cde0]
mov qword [rax + 0x30], rcx
lea rcx, [rbp + 8]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r14d
mov r9, rax
lea r8, [0x1800cc7f0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp], rax
test rax, rax
je 0x1800ca9aa
lea rcx, [rbp - 0x80]
call fcn.18000d780
cmp dword [rbp + 8], 0
je 0x1800ca99e
movaps xmm0, xmmword [rbp]
movdqa xmmword [rbp + 0x10], xmm0
lea rcx, [rbp + 0x10]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x1800ca99e
xorps xmm0, xmm0
movaps xmmword [rbp - 0x20], xmm0
movdqa xmmword [rbp], xmm0
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
movzx eax, word [0x1801975a8]
movsd xmm0, qword [str.dT___WC_9]
mov word [rsp + 0x50], ax
movsd qword [rsp + 0x48], xmm0
mov qword [rsp + 0x40], 0
mov byte [rsp + 0x48], 0x54
xor byte [rsp + 0x49], 0x31
xor byte [rsp + 0x4a], 0x32
xor byte [rsp + 0x4b], 0x33
xor byte [rsp + 0x4c], 0x34
xor byte [rsp + 0x4d], 0x35
xor byte [rsp + 0x4e], 0x36
xor byte [rsp + 0x4f], 0x37
xor byte [rsp + 0x50], 0x38
xor byte [rsp + 0x51], 0x39
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x48]
call fcn.1800a96c0
test al, al
je 0x1800caa26
mov rbx, qword [0x1801f1d28]
test rbx, rbx
je 0x1800ca9d1
cmp byte [0x1801f21d0], 0
je 0x1800ca9ba
test rbx, rbx
je 0x1800ca9ca
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], r14
xor r8d, r8d
lea rdx, [0x18011c8a2]
lea rcx, [rbp + 0x20]
call fcn.18000f810
mov rax, qword [rbx + 0x18]
mov byte [rax + 0x588], 1
lea rax, [rbp + 0x20]
mov rdi, qword [rbp + 0x20]
mov r14, qword [rbp + 0x38]
cmp r14, 0xf
cmova rax, rdi
mov rcx, rsi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1800ca900
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rcx, qword [rbx + 0x18]
mov qword [rcx + 0x590], rax
mov rax, qword [rbx + 0x18]
mov rdx, qword [rax + 0x590]
lea rcx, [rbp + 0x20]
test rdx, rdx
je 0x1800ca955
cmp r14, 0xf
cmova rcx, rdi
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rdx], al
lea rcx, [rcx + 1]
lea rdx, [rdx + 1]
test al, al
jne 0x1800ca940
lea rcx, [rbp + 0x20]
lea r14, [0x18005cc30]
mov edi, 4
call fcn.18000d780
mov qword [rbx + 0xa0], r14
xor r14d, r14d
mov qword [rbx + 0xb8], r14
mov dword [rbx + 0xc0], edi
mov rax, qword [rbx + 0x20]
test rax, rax
je 0x1800ca9ca
test byte [rax + 0x3e], 2
jne 0x1800ca993
mov dword [rax + 0x28], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1800ca986
jmp 0x1800ca9ca
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov dword [rbp + 8], r14d
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov rcx, qword [rbx + 0x18]
mov rcx, qword [rcx + 0x108]
call fcn.18003dc00
mov qword [0x1801f1d28], r14
mov rdi, qword [0x1801b7c28]
mov rbx, qword [0x1801b7c20]
cmp rbx, rdi
je 0x1800caa26
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
mov rcx, qword [rcx + 0x108]
call fcn.18003dc00
add rbx, 8
cmp rbx, rdi
jne 0x1800ca9f0
mov rdi, qword [0x1801b7c28]
mov rbx, qword [0x1801b7c20]
cmp rbx, rdi
je 0x1800caa26
mov qword [0x1801b7c28], rbx
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov eax, dword [str.cPDV4]
mov dword [rsp + 0x40], eax
movzx eax, byte [0x180197634]
mov qword [rsp + 0x64], 0
mov byte [rsp + 0x40], 0x53
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor al, 0x34
mov byte [rsp + 0x44], al
lea rdx, [rsp + 0x64]
lea rcx, [rsp + 0x40]
call fcn.1800a96c0
test al, al
je 0x1800cacc0
movsxd rax, dword [0x1801b7c18]
cmp eax, esi
je 0x1800cacc0
mov rbx, rax
lea rdx, [rbp + 0x180]
lea rcx, [rbp - 0x10]
call fcn.1800c8100
mov rdi, rax
test rbx, rbx
jle 0x1800caabf
mov rcx, rdi
call fcn.1800c8280
dec rbx
test rbx, rbx
jg 0x1800caaa6
lea rax, [rdi + 8]
mov r14, qword [rdi]
jmp 0x1800caac6
mov r14, qword [rax]
add rax, 8
xor edx, edx
mov ecx, edx
mov rbx, qword [rax]
mov qword [rdi], rdx
mov qword [rax], rdx
mov r8d, 0x100
lea rcx, [rbp + 0x78]
call sub.VCRUNTIME140.dll_memset
lea rdi, [r14 + 0x20]
cmp qword [rdi + 0x18], 7
jbe 0x1800caaf0
mov rdi, qword [rdi]
lea rax, [0x180000000]
lea rax, [rax + 0x19752c]
mov qword [rbp + 0x70], rax
lea rcx, [rbp + 0x118]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
or r15d, 2
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x78]
lea rcx, [rbp + 0x70]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x70], rax
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea r8d, [rcx - 0xa8]
mov dword [rbp + rcx + 0x6c], r8d
lea rcx, [rbp + 0x78]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x78], rax
mov byte [rbp + 0xf4], 0
mov byte [rbp + 0xe9], 0
lea rcx, [rbp + 0x78]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void____ptr64]
xor r14d, r14d
mov qword [rbp + 0xf8], r14
mov rax, qword [0x1801f2120]
mov qword [rbp + 0xec], rax
mov qword [rbp + 0xe0], r14
mov r8d, 2
mov rdx, rdi
lea rcx, [rbp + 0x78]
call fcn.1800cc640
test rax, rax
jne 0x1800cabcf
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x70]
add rcx, rax
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov rcx, qword [rbp + 0x70]
movsxd rdx, dword [rcx + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rdx + 0x70], rax
mov rcx, qword [rbp + 0x70]
movsxd rdx, dword [rcx + 4]
lea r8d, [rdx - 0xa8]
mov dword [rbp + rdx + 0x6c], r8d
mov rcx, qword [0x1801f2570]
sub rcx, qword [0x1801f2568]
mov rax, r13
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsp + 0x5c], edx
mov dword [rsp + 0x60], r14d
mov qword [rsp + 0x40], r14
lea r9, [rsp + 0x5c]
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x80]
call fcn.180002eb0
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rdx, qword [rbp - 0x80]
mov r8, qword [rbp - 0x70]
lea rcx, [rbp + 0x70]
call fcn.18006ede0
lea rcx, [rbp - 0x80]
call fcn.18000d780
lea rcx, [rbp + 0x78]
call fcn.1800bd9e0
test rax, rax
jne 0x1800cac89
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x70]
add rcx, rax
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
lea rcx, [rbp + 0x70]
call fcn.1800cbc70
test rbx, rbx
je 0x1800cacc0
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1800cacc0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1800cacc0
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov qword [rsp + 0x5c], 0
mov eax, dword [str.sCWR_P6]
mov dword [rsp + 0x40], eax
movzx ecx, word [0x18019767c]
mov word [rsp + 0x44], cx
movzx eax, byte [0x18019767e]
mov byte [rsp + 0x40], 0x43
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor cl, 0x34
mov byte [rsp + 0x44], cl
xor byte [rsp + 0x45], 0x35
xor al, 0x36
mov byte [rsp + 0x46], al
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x40]
call fcn.1800a96c0
test al, al
je 0x1800cae99
movups xmm0, xmmword [str.sCWR_P]
movups xmmword [rbp + 0x10], xmm0
cmp r12d, 2
jl 0x1800cae4b
mov edx, r14d
movdqa xmmword [rbp], xmm12
lea rcx, [rbp + 0x10]
mov r8d, dword [rbp]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm8
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm8
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm3, xmm0
andps xmm3, xmm10
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm3, xmm0
movd dword [rcx + 4], xmm3
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x1800cad60
jmp 0x1800cae90
lea r9, [rbp + 0x10]
mov r8d, r14d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x1800cae60
lea rcx, [rbp + 0x10]
call fcn.18008ed30
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov eax, dword [str._SOSO_]
mov dword [rsp + 0x78], eax
movzx eax, word [0x18019765c]
mov word [rsp + 0x7c], ax
movzx eax, byte [0x18019765e]
movsd xmm0, qword [str.bT_BP]
mov byte [rsp + 0x7e], al
movsd qword [rsp + 0x70], xmm0
mov qword [rsp + 0x40], 0
mov r8d, r14d
cmp r12d, 2
jl 0x1800cafc5
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
movdqa xmm1, xmm8
psubd xmm1, xmm0
andps xmm1, xmm10
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd eax, xmm12
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.bT_BP]
xorps xmm1, xmm0
movd dword [rsp + 0x70], xmm1
movdqa xmm2, xmmword [0x180198070]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x74]
xorps xmm2, xmm1
movd dword [rsp + 0x74], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x70]
add r9, rax
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x1800cafd0
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1800a96c0
test al, al
je 0x1800cb0c6
movsxd rax, dword [0x1801b7c18]
cmp eax, esi
je 0x1800cb0c6
mov rbx, rax
lea rdx, [rbp + 0x180]
lea rcx, [rbp - 0x60]
call fcn.1800c8100
mov rdi, rax
test rbx, rbx
jle 0x1800cb05a
mov rcx, rdi
call fcn.1800c8280
dec rbx
test rbx, rbx
jg 0x1800cb041
lea rax, [rdi + 8]
mov rcx, qword [rdi]
jmp 0x1800cb061
mov rcx, qword [rax]
add rax, 8
mov r8, r14
mov rdx, r14
mov rbx, qword [rax]
mov qword [rdi], r14
mov qword [rax], rdx
lea rdi, [rcx + 0x20]
mov rcx, rdi
cmp qword [rdi + 0x18], 7
jbe 0x1800cb081
mov rcx, qword [rdi]
call fcn.1800f1364
shr rax, 0x20
test eax, eax
jne 0x1800cbc51
mov dword [0x1801b7c18], esi
test rbx, rbx
je 0x1800cb0c6
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1800cb0c6
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1800cb0c6
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov edx, dword [0x1801974d8]
mov dword [rsp + 0x58], edx
cmp r12d, 2
jl 0x1800cb146
movdqa xmm1, xmm8
punpckldq xmm1, xmm8
pmuldq xmm1, xmm9
movdqa xmm0, xmm8
punpckhdq xmm0, xmm8
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
movdqa xmm1, xmm8
psubd xmm1, xmm0
andps xmm1, xmm10
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm12
movd xmm0, edx
xorps xmm1, xmm0
movd dword [rsp + 0x58], xmm1
jmp 0x1800cb180
lea r9, [rsp + 0x58]
mov r8d, r14d
nop
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x1800cb150
lea rcx, [rsp + 0x58]
call fcn.1800a8df0
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov eax, dword [str.qEFRW_6]
mov dword [rsp + 0x40], eax
movzx eax, word [0x1801974d4]
mov word [rsp + 0x44], ax
movzx eax, byte [0x1801974d6]
mov qword [rsp + 0x64], 0
mov byte [rsp + 0x40], 0x41
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor byte [rsp + 0x44], 0x34
xor byte [rsp + 0x45], 0x35
xor al, 0x36
mov byte [rsp + 0x46], al
lea rdx, [rsp + 0x64]
lea rcx, [rsp + 0x40]
call fcn.1800a96c0
test al, al
je 0x1800cb1f7
call fcn.1800cf050
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov eax, dword [str.tTFRW_6]
mov dword [rsp + 0x40], eax
movzx eax, word [0x1801974cc]
mov word [rsp + 0x44], ax
movzx eax, byte [0x1801974ce]
mov qword [rsp + 0x64], 0
mov byte [rsp + 0x40], 0x44
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor byte [rsp + 0x44], 0x34
xor byte [rsp + 0x45], 0x35
xor al, 0x36
mov byte [rsp + 0x46], al
lea rdx, [rsp + 0x64]
lea rcx, [rsp + 0x40]
call fcn.1800a96c0
test al, al
je 0x1800cb300
cmp qword [0x1801f1db8], 0
je 0x1800cb300
cmp qword [0x1801f1dc8], 0
je 0x1800cb300
cmp qword [0x1801f1dd0], 0
je 0x1800cb300
call qword [sym.imp.KERNEL32.dll_FreeConsole]
mov ebx, dword [0x1801f1dc0]
lea eax, [rbx + 1]
cmp eax, 1
jbe 0x1800cb2bb
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fileno]
mov edx, ebx
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__dup2]
mov rdx, qword [0x1801f1da8]
test rdx, rdx
je 0x1800cb2d2
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_SetStdHandle]
mov rdx, qword [0x1801f1d98]
test rdx, rdx
je 0x1800cb2e9
mov ecx, 0xfffffff4
call qword [sym.imp.KERNEL32.dll_SetStdHandle]
mov rdx, qword [0x1801f1da0]
test rdx, rdx
je 0x1800cb300
mov ecx, 0xfffffff6
call qword [sym.imp.KERNEL32.dll_SetStdHandle]
movups xmm0, xmmword [str.sCWR_P]
movups xmmword [rbp + 0x10], xmm0
cmp r12d, 2
jl 0x1800cb41b
mov edx, r14d
movdqa xmmword [rbp], xmm12
lea rcx, [rbp + 0x10]
mov r8d, dword [rbp]
nop word [rax + rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm8
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm9
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm8
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm9
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm9
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm3, xmm0
andps xmm3, xmm10
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm3, xmm0
movd dword [rcx + 4], xmm3
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x1800cb330
jmp 0x1800cb460
lea r9, [rbp + 0x10]
mov r8d, r14d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x1800cb430
lea rcx, [rbp + 0x10]
call fcn.18008f2f0
test al, al
je 0x1800cb8ba
movsd xmm0, qword [str.vXV]
movsd qword [rsp + 0x48], xmm0
movzx eax, word [0x1801974e8]
mov word [rsp + 0x50], ax
mov byte [rsp + 0x48], 0x46
xor byte [rsp + 0x49], 0x31
xor byte [rsp + 0x4a], 0x32
xor byte [rsp + 0x4b], 0x33
xor byte [rsp + 0x4c], 0x34
xor byte [rsp + 0x4d], 0x35
xor byte [rsp + 0x4e], 0x36
xor byte [rsp + 0x4f], 0x37
xor al, 0x38
mov byte [rsp + 0x50], al
xor byte [rsp + 0x51], 0x39
mov qword [rsp + 0x5c], 0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
lea rax, [rsp + 0x5c]
mov qword [rsp + 0x20], rax
mov r9d, 0x80
lea rbx, [0x1801f2150]
mov r8, rbx
xor edx, edx
lea rcx, [rsp + 0x48]
call fcn.1800ad430
mov qword [rsp + 0x5c], 0x42f00000
movzx eax, word [0x1801975b4]
mov word [rsp + 0x58], ax
movzx eax, byte [0x1801975b6]
mov byte [rsp + 0x58], 0x4f
xor byte [rsp + 0x59], 0x31
xor al, 0x32
mov byte [rsp + 0x5a], al
lea rdx, [rsp + 0x5c]
lea rcx, [rsp + 0x58]
call fcn.1800a96c0
test al, al
je 0x1800cb801
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r14
mov r8, rsi
inc r8
cmp byte [rbx + r8], 0
jne 0x1800cb551
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.18000f810
lea r8, [rbp + 0x50]
cmp qword [rbp + 0x68], 0xf
cmova r8, qword [rbp + 0x50]
mov r9, qword [rbp + 0x60]
xor edx, edx
lea rcx, [rbp - 0x80]
call fcn.18005f1e0
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x30], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rbp - 0x80]
call fcn.18000d780
mov rcx, qword [rbp + 0x30]
cmp rcx, 4
jb 0x1800cb674
mov eax, dword [0x1801974ec]
mov dword [rsp + 0x40], eax
movzx eax, byte [0x1801974f0]
mov byte [rsp + 0x40], 0x2e
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor al, 0x34
mov byte [rsp + 0x44], al
or r15d, 1
lea rdx, [rcx - 4]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x68], r14
cmp rcx, rdx
jb 0x1800cbc20
sub rcx, rdx
mov r8, rsi
cmp rcx, rsi
cmovb r8, rcx
lea rax, [rbp + 0x20]
cmp qword [rbp + 0x38], 0xf
cmova rax, qword [rbp + 0x20]
add rdx, rax
lea rcx, [rbp - 0x80]
call fcn.18000f810
lea rcx, [rsp + 0x40]
mov rax, rsi
inc rax
cmp byte [rcx + rax], 0
jne 0x1800cb642
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0xf
cmova rcx, qword [rbp - 0x80]
mov r8, qword [rbp - 0x70]
cmp r8, rax
jne 0x1800cb674
lea rdx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800cb674
xor bl, bl
jmp 0x1800cb676
mov bl, 1
test r15b, 1
je 0x1800cb685
lea rcx, [rbp - 0x80]
call fcn.18000d780
test bl, bl
je 0x1800cb6da
mov eax, dword [0x1801974ec]
mov dword [rsp + 0x40], eax
movzx eax, byte [0x1801974f0]
mov byte [rsp + 0x40], 0x2e
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor al, 0x34
mov byte [rsp + 0x44], al
lea rax, [rsp + 0x40]
nop dword [rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x1800cb6c0
mov r8, rsi
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x20]
call fcn.1800561c0
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp + 0x78]
call sub.VCRUNTIME140.dll_memset
lea rbx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0xf
cmova rbx, qword [rbp + 0x20]
lea rax, [0x180000000]
lea rax, [rax + 0x19752c]
mov qword [rbp + 0x70], rax
lea rcx, [rbp + 0x118]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x78]
lea rcx, [rbp + 0x70]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x70], rdi
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea r8d, [rcx - 0xa8]
mov dword [rbp + rcx + 0x6c], r8d
lea rcx, [rbp + 0x78]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x78], rax
mov byte [rbp + 0xf4], 0
mov byte [rbp + 0xe9], 0
lea rcx, [rbp + 0x78]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void____ptr64]
mov qword [rbp + 0xf8], r14
mov rax, qword [0x1801f2120]
mov qword [rbp + 0xec], rax
mov qword [rbp + 0xe0], r14
mov rdx, rbx
lea rcx, [rbp + 0x78]
call fcn.1800bdb20
test rax, rax
jne 0x1800cb7cb
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x70]
add rcx, rax
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x70], rdi
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x6c], edx
call fcn.18008f210
lea rcx, [rbp + 0x70]
call fcn.1800cbc70
lea rcx, [rbp + 0x20]
call fcn.18000d780
movaps xmm1, xmm6
movaps xmm0, xmm7
call fcn.18008de30
mov eax, dword [str.sPPQY6]
mov dword [rsp + 0x40], eax
movzx eax, word [0x18019759c]
mov word [rsp + 0x44], ax
movzx eax, byte [0x18019759e]
mov qword [rsp + 0x64], 0x42f00000
mov byte [rsp + 0x40], 0x43
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor byte [rsp + 0x44], 0x34
xor byte [rsp + 0x45], 0x35
xor al, 0x36
mov byte [rsp + 0x46], al
lea rdx, [rsp + 0x64]
lea rcx, [rsp + 0x40]
call fcn.1800a96c0
test al, al
je 0x1800cb86e
call fcn.18008f210
mov rbx, qword [0x1801f1d70]
mov rax, qword [rbx + 0x3eb8]
cmp qword [rbx + 0x4898], rax
jne 0x1800cb89e
cmp byte [rbx + 0x48f1], 0
je 0x1800cb89e
cmp dword [rbx + 0x48d0], 0
jne 0x1800cb89e
or dword [rbx + 0x48f4], 2
test dword [rax + 0xc], 0x1000000
je 0x1800cb8ae
mov byte [rbx + 0x3e46], 1
call fcn.18008ac00
mov byte [rbx + 0x3e46], 0
movzx eax, word [0x1801975c8]
mov word [rsp + 0x58], ax
movzx eax, byte [0x1801975ca]
mov qword [rsp + 0x40], 0
mov byte [0x1801f25db], 0
mov byte [rsp + 0x58], 0x65
xor byte [rsp + 0x59], 0x31
xor al, 0x32
mov byte [rsp + 0x5a], al
mov byte [0x1801f25ba], 1
mov byte [0x1801f25bd], 0
mov byte [0x1801f25c8], 0
mov ecx, dword [0x1801f2660]
movzx eax, cl
xorps xmm9, xmm9
cvtsi2ss xmm9, rax
movss xmm0, dword [0x180197dbc]
mulss xmm9, xmm0
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm6, xmm6
cvtsi2ss xmm6, rax
mulss xmm6, xmm0
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm7, xmm7
cvtsi2ss xmm7, rax
mulss xmm7, xmm0
shr ecx, 0x18
mov eax, ecx
xorps xmm8, xmm8
cvtsi2ss xmm8, rax
mulss xmm8, xmm0
mov rbx, qword [0x1801f1d70]
mov dword [rbp - 0x60], 3
movups xmm0, xmmword [rbx + 0x38ec]
movups xmmword [rbp - 0x5c], xmm0
lea rcx, [rbx + 0x4800]
lea rdx, [rbp - 0x60]
call fcn.180095710
shufps xmm9, xmm9, 0xe1
movss xmm9, xmm6
shufps xmm9, xmm9, 0xc6
movss xmm9, xmm7
shufps xmm9, xmm9, 0x27
movss xmm9, xmm8
shufps xmm9, xmm9, 0x39
movups xmmword [rbx + 0x38ec], xmm9
mov qword [rsp + 0x5c], 0
lea rdx, [rsp + 0x5c]
mov ecx, 0xe
call fcn.18007ffb0
cmp byte [0x1801f25da], 0
jne 0x1800cb9e9
mov r9d, 0x804
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x58]
call fcn.1800859f0
cmp byte [0x1801f25d8], 0
je 0x1800cba05
lea rcx, [0x1801f2560]
call fcn.1800054e0
xor edx, edx
call fcn.18008b160
cmp byte [0x1801f25d9], 0
je 0x1800cba13
call fcn.180006320
call fcn.18000b040
lea rcx, [0x1801f2560]
call fcn.1800066a0
cmp byte [0x1801f25d8], 0
je 0x1800cba55
mov rdx, qword [0x1801f1d70]
movsxd rcx, dword [rdx + 0x4840]
lea eax, [rcx - 1]
mov dword [rdx + 0x4840], eax
mov rax, qword [rdx + 0x4848]
mov ecx, dword [rax + rcx*4 - 8]
mov dword [rdx + 0x4738], ecx
cmp byte [0x1801f25da], 0
jne 0x1800cba63
call fcn.180085aa0
mov ecx, 1
call fcn.180080040
mov r8, qword [0x1801f1d70]
movsxd rax, dword [r8 + 0x4800]
cmp eax, 1
jl 0x1800cbaa8
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4808]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [r8 + rax*8 + 0x38bc], xmm0
dec dword [r8 + 0x4800]
mov byte [0x1801f25ba], 0
lea rcx, [rbp + 0x180]
call fcn.1800b1d60
lea rcx, [rbp + 0x50]
call fcn.18000d780
call fcn.18008ac00
mov rbx, qword [0x1801f1d70]
mov dword [rsp + 0x70], 3
movss xmm0, dword [rbx + 0x37f0]
movss dword [rsp + 0x74], xmm0
lea rcx, [rbx + 0x4810]
lea rdx, [rsp + 0x70]
call fcn.180095620
mov dword [rbx + 0x37f0], 0x40a00000
movdqa xmm6, xmmword [0x1801981c0]
mov rbx, qword [0x1801f1d70]
mov dword [rbp - 0x60], 2
movups xmm0, xmmword [rbx + 0x38dc]
movups xmmword [rbp - 0x5c], xmm0
lea rcx, [rbx + 0x4800]
lea rdx, [rbp - 0x60]
call fcn.180095710
movups xmmword [rbx + 0x38dc], xmm6
call fcn.1800c83e0
mov ecx, 1
call fcn.180080040
mov r8, qword [0x1801f1d70]
movsxd rax, dword [r8 + 0x4800]
cmp eax, 1
jl 0x1800cbb83
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4808]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [r8 + rax*8 + 0x38bc], xmm0
dec dword [r8 + 0x4800]
call qword [0x1801f1d10]
cmp qword [rax + 0x1b0], 0
je 0x1800cbba1
cmp byte [0x1801f1d41], 0
je 0x1800cbba1
call fcn.1800bc570
call fcn.180084cd0
call fcn.180085060
mov rax, qword [0x1801f1d70]
mov rcx, qword [rax + 0x4890]
mov rcx, qword [rcx]
add rcx, 0x48
cmp byte [rcx], 0
cmove rcx, r14
call fcn.1800a5070
nop
mov rcx, qword [rbp + 0x3b0]
xor rcx, rsp
call fcn.1800f15d0
lea r11, [rsp + 0x530]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.18005ee40
int3
mov ecx, dword [rsp + 0x4c]
call fcn.1800c6f00
int3
mov ecx, dword [rsp + 0x4c]
call fcn.1800c6f00
int3
call fcn.1800c6c20
int3
lea r8, [r13 + 0x20]
lea rcx, str.directory_entry::status
call fcn.1800c7af0
int3
mov r8, rdi
mov edx, eax
lea rcx, [0x18011ca78]
call fcn.1800c7af0
int3