Function at 0x1400123b0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xb8]
sub rsp, 0x190
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
mov rax, qword [0x140022040]
xor rax, rsp
mov qword [rbp + 0x40], rax
mov rax, rcx
mov qword [rbp - 0x30], rcx
add rax, 8
mov qword [rbp - 0x38], rax
mov r15d, dword [0x140022020]
mov r14d, 0x1f
lea r12d, [r14 - 0x1b]
mov rax, qword [0x140022858]
test rax, rax
jne 0x1400124d6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1400124b7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1400124b7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x1cfb3c9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400124b2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140012490
cmp edx, 0x440920bb
je 0x140012ffd
test r8d, r8d
jne 0x140012470
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x1400124cd
cmp qword [rax + 0x30], 0
jne 0x140012440
xor eax, eax
mov qword [0x140022858], rax
call rax
mov r13, rax
mov r10, qword [0x140022850]
test r10, r10
jne 0x1400125a7
mov rcx, qword gs:[0x60]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rdx + 0x10]
mov rsi, qword [rcx]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140012587
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140012587
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x473f4a6d
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140012582
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140012560
cmp edx, 0xa539774d
je 0x140013019
test r8d, r8d
jne 0x140012540
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001259d
cmp qword [rax + 0x30], 0
jne 0x140012510
xor r10d, r10d
mov qword [0x140022850], r10
movups xmm3, xmmword [str.a_XQXYY]
movups xmmword [rbp - 0x50], xmm3
movsd xmm0, qword [0x14001cfe0]
movsd qword [rbp - 0x40], xmm0
cmp word [0x14001cfe6], 0
je 0x140012704
xor r8d, r8d
cmp r15d, 2
jl 0x1400126bf
movdqa xmm4, xmmword [0x14001d370]
movd xmm6, r12d
movd xmm5, r14d
movdqa xmm2, xmmword [0x14001d310]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001d330]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [0x14001d340]
movq xmm1, xmm3
xorps xmm2, xmm1
movq qword [rbp - 0x50], xmm2
movdqa xmm3, xmmword [0x14001d320]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001d330]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [0x14001d340]
movq xmm0, qword [rbp - 0x48]
xorps xmm2, xmm0
movq qword [rbp - 0x48], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x50]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
sub ax, cx
add ax, 0x31
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0xc
jl 0x1400126d0
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x50]
call r10
mov r14, rax
mov qword [rbp - 0x68], rax
test rax, rax
jne 0x1400128fd
movups xmm0, xmmword [str.f__abg]
movups xmmword [rsp + 0x40], xmm0
movzx ecx, word [0x14001cff8]
mov word [rsp + 0x50], cx
movzx ecx, byte [0x14001cffa]
mov byte [rsp + 0x52], cl
xor ecx, ecx
cmp r15d, 2
jl 0x1400128a0
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
movd xmm6, r12d
movdqa xmm7, xmmword [0x14001d330]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x1400127a0
cmp ecx, 0x13
jge 0x1400128dc
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x13
jl 0x1400128b0
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov r10, qword [0x140022848]
test r10, r10
jne 0x1400129c7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1400129a7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1400129a7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0x1d1e80f9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400129a2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140012980
cmp edx, 0x8a6a83e9
je 0x140013036
test r8d, r8d
jne 0x140012960
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x1400129bd
cmp qword [rax + 0x30], 0
jne 0x140012930
xor r10d, r10d
mov qword [0x140022848], r10
movups xmm0, xmmword [str.A_XQXYYJ_rN]
movups xmmword [rbp - 0x28], xmm0
movups xmm0, xmmword [0x14001d020]
movups xmmword [rbp - 8], xmm0
movzx eax, word [0x14001d038]
movsd xmm0, qword [0x14001d030]
movups xmm1, xmmword [0x14001d010]
mov word [rbp + 0x10], ax
movsd qword [rbp + 8], xmm0
movups xmmword [rbp - 0x18], xmm1
xor r8d, r8d
lea ebx, [r8 + 0x1f]
cmp r15d, 2
jl 0x140012b2f
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
movd xmm6, r12d
movdqa xmm7, xmmword [0x14001d330]
movd xmm8, ebx
movdqa xmm9, xmmword [0x14001d340]
lea rcx, [rbp - 0x28]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm9
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add r8d, 8
lea rcx, [rcx + 0x10]
cmp r8d, 0x18
jl 0x140012a40
cmp r8d, 0x1d
jge 0x140012b74
movsxd rax, r8d
lea r9, [rbp - 0x28]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
sub ax, cx
add ax, 0x31
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x1d
jl 0x140012b40
mov r8d, 0x50
xor r9d, r9d
lea rdx, [rbp - 0x28]
mov rcx, r14
call r10
mov r12, rax
test rax, rax
jne 0x140012e2b
movups xmm0, xmmword [str.r__ZPUCQVTeYOLP2A]
movups xmmword [rsp + 0x40], xmm0
movzx ecx, byte [0x14001d050]
mov byte [rsp + 0x50], cl
xor ecx, ecx
cmp r15d, 2
jl 0x140012d00
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x14001d330]
movd xmm8, ebx
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140012c00
cmp ecx, 0x11
jge 0x140012d3c
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x11
jl 0x140012d10
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword [0x140022840]
test rax, rax
jne 0x140012e26
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140012e07
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140012e07
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0xaffb0554
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140012e02
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140012de0
cmp edx, 0x254a2598
je 0x140013053
test r8d, r8d
jne 0x140012dc0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140012e1d
cmp qword [rax + 0x30], 0
jne 0x140012d90
xor eax, eax
mov qword [0x140022840], rax
mov rcx, r14
call rax
mov r10, qword [0x140022838]
test r10, r10
jne 0x140012ef7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140012ed7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140012ed7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0xec5d8a76
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140012ed2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140012eb0
cmp edx, 0x3ceeb879
je 0x14001306f
test r8d, r8d
jne 0x140012e90
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140012eed
cmp qword [rax + 0x30], 0
jne 0x140012e60
xor r10d, r10d
mov qword [0x140022838], r10
movups xmm0, xmmword [0x14001d060]
movups xmmword [rsp + 0x70], xmm0
mov eax, dword [0x14001d070]
mov dword [rbp - 0x80], eax
cmp word [0x14001d072], 0
je 0x140012f54
mov eax, 0x2f
mov word [rsp + 0x70], ax
xor word [rsp + 0x72], 0x32
xor word [rsp + 0x74], 0x33
xor word [rsp + 0x76], 0x34
xor word [rsp + 0x78], 0x35
xor word [rsp + 0x7a], 0x36
xor word [rsp + 0x7c], 0x37
xor word [rsp + 0x7e], 0x38
xor word [rbp - 0x80], 0x39
xor word [rbp - 0x7e], 0x3a
mov rax, qword [0x14001d058]
mov qword [rbp - 0x70], rax
cmp word [0x14001d05e], 0
je 0x1400130d4
cmp r15d, 2
jl 0x14001308c
movdqa xmm3, xmmword [0x14001d310]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14001d370]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14001d370]
shufps xmm2, xmm0, 0xdd
mov ebx, 4
movd xmm0, ebx
psrad xmm2, xmm0
mov edi, 0x1f
movd xmm0, edi
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14001d330]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [0x14001d340]
movq xmm0, qword [rbp - 0x70]
xorps xmm2, xmm0
movq qword [rbp - 0x70], xmm2
jmp 0x1400130dc
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x1400124cf
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov r10d, dword [rcx + rax*4]
add r10, r9
jmp 0x1400125a0
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov r10d, dword [rcx + rax*4]
add r10, r9
jmp 0x1400129c0
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140012e1f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov r10d, dword [rcx + rax*4]
add r10, r9
jmp 0x140012ef0
lea r9, [rbp - 0x70]
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
sub ax, cx
add ax, 0x31
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 4
jl 0x1400130a0
mov edi, 0x1f
lea ebx, [rdi - 0x1b]
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x70]
mov rcx, r12
call r10
mov r15, rax
test rax, rax
jne 0x14001347b
movups xmm0, xmmword [str.BVZgSFMIO]
movups xmmword [rsp + 0x40], xmm0
movzx ecx, word [0x14001d088]
mov word [rsp + 0x50], cx
cmp byte [0x14001d089], al
je 0x1400132bc
xor ecx, ecx
cmp dword [0x140022020], 2
jl 0x140013280
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
movd xmm6, ebx
movdqa xmm7, xmmword [0x14001d330]
movd xmm8, edi
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140013180
cmp ecx, 0x12
jge 0x1400132bc
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x12
jl 0x140013290
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword [0x140022830]
test rax, rax
jne 0x1400133a6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140013387
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140013387
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0xfba6ea4a
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140013382
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013360
cmp edx, 0xbda90dd6
je 0x140013ee7
test r8d, r8d
jne 0x140013340
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001339d
cmp qword [rax + 0x30], 0
jne 0x140013310
xor eax, eax
mov qword [0x140022830], rax
mov rcx, r12
call rax
mov rax, qword [0x140022828]
test rax, rax
jne 0x140013476
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140013457
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140013457
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x25d016cc
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140013452
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013430
cmp edx, 0xc16dbd90
je 0x140013f03
test r8d, r8d
jne 0x140013410
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001346d
cmp qword [rax + 0x30], 0
jne 0x1400133e0
xor eax, eax
mov qword [0x140022828], rax
mov rcx, r14
call rax
mov rax, qword [0x140022820]
test rax, rax
jne 0x140013546
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140013527
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140013527
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0xcb7584ec
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140013522
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013500
cmp edx, 0x46192bf9
je 0x140013f1f
test r8d, r8d
jne 0x1400134e0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001353d
cmp qword [rax + 0x30], 0
jne 0x1400134b0
xor eax, eax
mov qword [0x140022820], rax
xor ebx, ebx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, r15
call rax
test eax, eax
jne 0x1400139ab
movups xmm0, xmmword [str.bW_PgSFMIO]
movups xmmword [rsp + 0x40], xmm0
movzx eax, word [0x14001d0a0]
mov word [rsp + 0x50], ax
cmp byte [0x14001d0a1], bl
je 0x14001371c
mov ecx, ebx
cmp dword [0x140022020], 2
jl 0x1400136e0
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x14001d330]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x1400135e0
cmp ecx, 0x12
jge 0x14001371c
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x12
jl 0x1400136f0
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword [0x140022818]
test rax, rax
jne 0x140013806
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1400137e7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1400137e7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0x7b604df6
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400137e2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x1400137c0
cmp edx, 0x3b95046a
je 0x140013f3b
test r8d, r8d
jne 0x1400137a0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x1400137fd
cmp qword [rax + 0x30], 0
jne 0x140013770
xor eax, eax
mov qword [0x140022818], rax
mov rcx, r15
call rax
mov rax, qword [0x140022810]
test rax, rax
jne 0x1400138d6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1400138b7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1400138b7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0x4df9e9ce
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400138b2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013890
cmp edx, 0x2eb10782
je 0x140013f57
test r8d, r8d
jne 0x140013870
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x1400138cd
cmp qword [rax + 0x30], 0
jne 0x140013840
xor eax, eax
mov qword [0x140022810], rax
mov rcx, r12
call rax
mov rax, qword [0x140022808]
test rax, rax
jne 0x1400139a6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140013987
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140013987
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0xe2671eba
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140013982
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013960
cmp edx, 0x632805a6
je 0x140013f73
test r8d, r8d
jne 0x140013940
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001399d
cmp qword [rax + 0x30], 0
jne 0x140013910
xor eax, eax
mov qword [0x140022808], rax
mov rcx, r14
call rax
mov rax, qword [0x140022800]
test rax, rax
jne 0x140013a76
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140013a57
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140013a57
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0xcbafd4f1
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140013a52
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013a30
cmp edx, 0xf076f29d
je 0x140013f8f
test r8d, r8d
jne 0x140013a10
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140013a6d
cmp qword [rax + 0x30], 0
jne 0x1400139e0
xor eax, eax
mov qword [0x140022800], rax
xor edx, edx
mov rcx, r15
call rax
test eax, eax
jne 0x140013edb
movups xmm0, xmmword [str.cWPQ_RjIKSSMZ__017F]
movups xmmword [rsp + 0x40], xmm0
mov eax, dword [0x14001d0b8]
mov dword [rsp + 0x50], eax
movzx eax, word [0x14001d0bc]
mov word [rsp + 0x54], ax
cmp byte [0x14001d0bd], 0
je 0x140013c4c
xor ecx, ecx
cmp dword [0x140022020], 2
jl 0x140013c10
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x14001d330]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
nop word [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140013b10
cmp ecx, 0x16
jge 0x140013c4c
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x16
jl 0x140013c20
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword [0x1400227f8]
test rax, rax
jne 0x140013d36
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140013d17
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140013d17
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0xa91ba1d4
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140013d12
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013cf0
cmp edx, 0x54ac7618
je 0x140013fab
test r8d, r8d
jne 0x140013cd0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140013d2d
cmp qword [rax + 0x30], 0
jne 0x140013ca0
xor eax, eax
mov qword [0x1400227f8], rax
mov rcx, r15
call rax
mov rax, qword [0x1400227f0]
test rax, rax
jne 0x140013e06
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140013de7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140013de7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0xdfeb735a
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140013de2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013dc0
cmp edx, 0x49bbf8c6
je 0x140013fc7
test r8d, r8d
jne 0x140013da0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140013dfd
cmp qword [rax + 0x30], 0
jne 0x140013d70
xor eax, eax
mov qword [0x1400227f0], rax
mov rcx, r12
call rax
mov rax, qword [0x1400227e8]
test rax, rax
jne 0x140013ed6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140013eb7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140013eb7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0x8c3d14c
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140013eb2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140013e90
cmp edx, 0xd122dc10
je 0x140013fe3
test r8d, r8d
jne 0x140013e70
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140013ecd
cmp qword [rax + 0x30], 0
jne 0x140013e40
xor eax, eax
mov qword [0x1400227e8], rax
mov rcx, r14
call rax
mov dword [rbp + 0x1c], 0
jmp 0x140014004
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001339f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001346f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001353f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x1400137ff
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x1400138cf
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001399f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140013a6f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140013d2f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140013dff
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140013ecf
mov r14, qword [rbp - 0x68]
mov dword [rbp + 0x18], 0
mov rax, qword [0x1400227e0]
test rax, rax
jne 0x1400140d6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1400140b7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1400140b7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x7ee5b9f0
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400140b2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014090
cmp edx, 0xd58bd7d9
je 0x1400146c0
test r8d, r8d
jne 0x140014070
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x1400140cd
cmp qword [rax + 0x30], 0
jne 0x140014040
xor eax, eax
mov qword [0x1400227e0], rax
lea rdx, [rbp + 0x18]
mov rcx, r15
call rax
test eax, eax
jne 0x14001452b
movups xmm0, xmmword [str.uSGUt_VQU_YPX]
movups xmmword [rsp + 0x40], xmm0
mov eax, dword [0x14001d0d0]
mov dword [rsp + 0x50], eax
cmp byte [0x14001d0d3], 0
je 0x14001429c
xor ecx, ecx
cmp dword [0x140022020], 2
jl 0x140014260
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x14001d330]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140014160
cmp ecx, 0x14
jge 0x14001429c
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x14
jl 0x140014270
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword [0x1400227d8]
test rax, rax
jne 0x140014386
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014367
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014367
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0xbb51675c
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014362
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014340
cmp edx, 0x6f64af00
je 0x1400146dc
test r8d, r8d
jne 0x140014320
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001437d
cmp qword [rax + 0x30], 0
jne 0x1400142f0
xor eax, eax
mov qword [0x1400227d8], rax
mov rcx, r15
call rax
mov rax, qword [0x1400227d0]
test rax, rax
jne 0x140014456
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014437
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014437
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0xd0de843a
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014432
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014410
cmp edx, 0xe1eb0726
je 0x1400146f8
test r8d, r8d
jne 0x1400143f0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001444d
cmp qword [rax + 0x30], 0
jne 0x1400143c0
xor eax, eax
mov qword [0x1400227d0], rax
mov rcx, r12
call rax
mov rax, qword [0x1400227c8]
test rax, rax
jne 0x140014526
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014507
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014507
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov eax, dword [rax + r11]
add rax, r9
mov edx, 0x79b7abac
movzx ecx, byte [rax]
inc rax
test cl, cl
je 0x140014502
nop dword [rax]
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [rax]
lea rax, [rax + 1]
test cl, cl
jne 0x1400144e0
cmp edx, 0x77934d70
je 0x140014714
test r8d, r8d
jne 0x1400144c0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001451d
cmp qword [rax + 0x30], 0
jne 0x140014490
xor eax, eax
mov qword [0x1400227c8], rax
mov rcx, r14
call rax
mov ecx, dword [rbp + 0x18]
inc ecx
call fcn.14001a67c
mov r14, rax
test rax, rax
jne 0x1400149fc
movups xmm0, xmmword [str.W_GO]
movups xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x14001d0e8]
movsd qword [rsp + 0x50], xmm0
cmp byte [0x14001d0ef], al
je 0x140014770
cmp dword [0x140022020], 2
jl 0x140014730
movdqa xmm5, xmmword [0x14001d310]
xor edx, edx
movdqa xmm4, xmmword [0x14001d370]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x14001d330]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
nop dword [rax]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x18
jl 0x1400145c0
jmp 0x140014770
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x1400140cf
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001437f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001444f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001451f
lea r9, [rsp + 0x40]
xor r8d, r8d
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, r8b
sub al, dl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x140014740
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword [0x1400227c0]
test rax, rax
jne 0x140014856
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014837
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014837
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x9327393b
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014832
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014810
cmp edx, 0x97dd94af
je 0x140015379
test r8d, r8d
jne 0x1400147f0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001484d
cmp qword [rax + 0x30], 0
jne 0x1400147c0
xor eax, eax
mov qword [0x1400227c0], rax
mov rcx, r15
call rax
mov rax, qword [0x1400227b8]
test rax, rax
jne 0x140014926
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014907
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014907
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x89ab4adc
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014902
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x1400148e0
cmp edx, 0x3ee0de80
je 0x140015395
test r8d, r8d
jne 0x1400148c0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001491d
cmp qword [rax + 0x30], 0
jne 0x140014890
xor eax, eax
mov qword [0x1400227b8], rax
mov rcx, r12
call rax
mov rax, qword [0x1400227b0]
test rax, rax
jne 0x1400149f6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1400149d7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1400149d7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0xd6d213ac
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x1400149d2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x1400149b0
cmp edx, 0x3b71f570
je 0x1400153b1
test r8d, r8d
jne 0x140014990
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x1400149ed
cmp qword [rax + 0x30], 0
jne 0x140014960
xor eax, eax
mov qword [0x1400227b0], rax
mov rcx, qword [rbp - 0x68]
call rax
mov r10, qword [0x1400227a8]
test r10, r10
jne 0x140014ac7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014aa7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014aa7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0x58c636aa
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014aa2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014a80
cmp edx, 0x7739e66d
je 0x1400153cd
test r8d, r8d
jne 0x140014a60
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140014abd
cmp qword [rax + 0x30], 0
jne 0x140014a30
xor r10d, r10d
mov qword [0x1400227a8], r10
mov r8d, dword [rbp + 0x18]
inc r8d
xor edx, edx
mov rcx, r14
call r10
mov rax, qword [0x1400227a0]
test rax, rax
jne 0x140014b96
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014b77
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014b77
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0x2567855a
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014b72
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014b50
cmp edx, 0x134e8278
je 0x1400153ea
test r8d, r8d
jne 0x140014b30
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140014b8d
cmp qword [rax + 0x30], 0
jne 0x140014b00
xor eax, eax
mov qword [0x1400227a0], rax
lea r9, [rbp + 0x1c]
mov r8d, dword [rbp + 0x18]
mov rdx, r14
mov rcx, r15
call rax
test eax, eax
jne 0x140014fcc
movsd xmm0, qword [0x14001d0f0]
movsd qword [rbp - 0x60], xmm0
mov eax, dword [0x14001d0f8]
mov dword [rbp - 0x58], eax
movzx eax, word [0x14001d0fc]
mov word [rbp - 0x54], ax
movzx eax, byte [0x14001d0fe]
mov byte [rbp - 0x52], al
xor ecx, ecx
cmp dword [0x140022020], 2
jl 0x140014cf4
movdqa xmm4, xmmword [0x14001d370]
mov eax, 4
movd xmm6, eax
mov eax, 0x1f
movd xmm5, eax
movdqa xmm2, xmmword [0x14001d310]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001d330]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
mov eax, dword [str.1111111111111111]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x14001d0f0]
xorps xmm2, xmm0
movd dword [rbp - 0x60], xmm2
movdqa xmm3, xmmword [0x14001d320]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14001d330]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x5c]
xorps xmm2, xmm1
movd dword [rbp - 0x5c], xmm2
mov ecx, 8
movsxd rax, ecx
lea r8, [rbp - 0x60]
add r8, rax
nop
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0xf
jl 0x140014d00
lea rdx, [rbp - 0x60]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, r14
call fcn.14001a674
test r14, r14
mov eax, 0x8123
cmovne r14, rax
mov rax, qword [0x140022798]
test rax, rax
jne 0x140014e26
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014e07
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014e07
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0x9ef9bcd2
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014e02
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014de0
cmp edx, 0x9e3918fe
je 0x140015406
test r8d, r8d
jne 0x140014dc0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140014e1d
cmp qword [rax + 0x30], 0
jne 0x140014d90
xor eax, eax
mov qword [0x140022798], rax
mov rcx, r15
call rax
mov rax, qword [0x140022790]
test rax, rax
jne 0x140014ef6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014ed7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014ed7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x8e139905
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014ed2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014eb0
cmp edx, 0xf3dc13d9
je 0x140015422
test r8d, r8d
jne 0x140014e90
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140014eed
cmp qword [rax + 0x30], 0
jne 0x140014e60
xor eax, eax
mov qword [0x140022790], rax
mov rcx, r12
call rax
mov rax, qword [0x140022788]
test rax, rax
jne 0x140014fc6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140014fa7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140014fa7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0xca24ca9f
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140014fa2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140014f80
cmp edx, 0x664e77cb
je 0x14001543e
test r8d, r8d
jne 0x140014f60
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140014fbd
cmp qword [rax + 0x30], 0
jne 0x140014f30
xor eax, eax
mov qword [0x140022788], rax
mov rcx, qword [rbp - 0x68]
call rax
mov rax, qword [0x140022780]
test rax, rax
jne 0x140015096
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140015077
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140015077
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x7163650f
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140015072
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140015050
cmp edx, 0xc96bf85d
je 0x14001545a
test r8d, r8d
jne 0x140015030
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001508d
cmp qword [rax + 0x30], 0
jne 0x140015000
xor eax, eax
mov qword [0x140022780], rax
call rax
mov rbx, rax
sub ebx, r13d
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], 0
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [r14 + r8], 0
jne 0x1400150c0
mov rdx, r14
lea rcx, [rbp + 0x20]
call fcn.140001570
nop
mov r8, qword [rbp - 0x38]
lea rdx, [rbp + 0x20]
mov rcx, qword [rbp - 0x30]
call fcn.140008030
mov edi, dword [0x140022020]
test al, al
je 0x1400154b9
movups xmm0, xmmword [str.r_YTXS]
movups xmmword [rsp + 0x40], xmm0
movzx eax, word [0x14001d110]
mov word [rsp + 0x50], ax
movzx eax, byte [0x14001d112]
mov byte [rsp + 0x52], al
xor ecx, ecx
lea esi, [rcx + 4]
cmp edi, 2
jl 0x140015270
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
movd xmm6, esi
movdqa xmm7, xmmword [0x14001d330]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
nop word [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140015170
cmp ecx, 0x13
jge 0x1400152ac
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x13
jl 0x140015280
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140001060
mov edx, ebx
mov rcx, rax
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___unsigned_long_int____ptr64]
mov r10, rax
mov ecx, dword [str.An4bWRFVV]
mov dword [rbp - 0x78], ecx
cmp byte [0x14001d117], 0
je 0x1400154b0
cmp edi, 2
jl 0x140015476
movdqa xmm3, xmmword [0x14001d310]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14001d370]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14001d370]
shufps xmm2, xmm0, 0xdd
movd xmm0, esi
psrad xmm2, xmm0
mov eax, 0x1f
movd xmm0, eax
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14001d330]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.1111111111111111]
movd xmm0, ecx
xorps xmm2, xmm0
movd dword [rbp - 0x78], xmm2
lea rdx, [rbp - 0x78]
jmp 0x140015784
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001484f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001491f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x1400149ef
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov r10d, dword [rcx + rax*4]
add r10, r9
jmp 0x140014ac0
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140014b8f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140014e1f
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140014eef
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x140014fbf
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001508f
lea r9, [rbp - 0x78]
xor r8d, r8d
nop dword [rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140015480
lea rdx, [rbp - 0x78]
jmp 0x140015784
movups xmm0, xmmword [0x14001d118]
movups xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [0x14001d128]
movsd qword [rsp + 0x50], xmm0
movzx eax, word [0x14001d130]
mov word [rsp + 0x58], ax
cmp byte [0x14001d131], 0
je 0x14001567c
xor ecx, ecx
cmp edi, 2
jl 0x140015640
movdqa xmm5, xmmword [0x14001d310]
movdqa xmm4, xmmword [0x14001d370]
mov eax, 4
movd xmm6, eax
movdqa xmm7, xmmword [0x14001d330]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
nop word [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x18
jl 0x140015540
cmp ecx, 0x1a
jge 0x14001567c
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x36
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x1a
jl 0x140015650
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140001060
mov edx, ebx
mov rcx, rax
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___unsigned_long_int____ptr64]
mov r10, rax
mov ecx, dword [str.An4a]
mov dword [rbp - 0x74], ecx
cmp byte [0x14001d137], 0
je 0x140015780
cmp edi, 2
jl 0x140015747
movdqa xmm3, xmmword [0x14001d310]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14001d370]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14001d370]
shufps xmm2, xmm0, 0xdd
mov eax, 4
movd xmm0, eax
psrad xmm2, xmm0
mov eax, 0x1f
movd xmm0, eax
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14001d330]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14001d350]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.1111111111111111]
movd xmm0, ecx
xorps xmm2, xmm0
movd dword [rbp - 0x74], xmm2
jmp 0x140015780
lea r9, [rbp - 0x74]
xor r8d, r8d
nop
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140015750
lea rdx, [rbp - 0x74]
mov rcx, r10
call fcn.140001060
lea rdx, [0x1400020e0]
mov rcx, rax
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_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword [0x140022778]
test rax, rax
jne 0x140015866
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140015847
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140015847
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0x6e460db1
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140015842
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140015820
cmp edx, 0xfef3ea34
je 0x140015c02
test r8d, r8d
jne 0x140015800
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001585d
cmp qword [rax + 0x30], 0
jne 0x1400157d0
xor eax, eax
mov qword [0x140022778], rax
mov ecx, 0x5dc
call rax
mov rcx, r14
call fcn.14001a674
nop
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x1400158b1
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400158ac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015c9c
call fcn.14001a674
cmp dword [rbp + 0x18], 0
ja 0x140014000
mov rax, qword [0x140022770]
test rax, rax
jne 0x140015986
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140015967
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140015967
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0xd45a52a5
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140015962
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140015940
cmp edx, 0xba8555f9
je 0x140015c1e
test r8d, r8d
jne 0x140015920
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x14001597d
cmp qword [rax + 0x30], 0
jne 0x1400158f0
xor eax, eax
mov qword [0x140022770], rax
mov rcx, r15
call rax
mov rax, qword [0x140022768]
test rax, rax
jne 0x140015a56
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140015a37
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140015a37
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x3d287368
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140015a32
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140015a10
cmp edx, 0x6572ca4
je 0x140015c3a
test r8d, r8d
jne 0x1400159f0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140015a4d
cmp qword [rax + 0x30], 0
jne 0x1400159c0
xor eax, eax
mov qword [0x140022768], rax
mov rcx, r12
call rax
mov rax, qword [0x140022760]
test rax, rax
jne 0x140015b26
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140015b07
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140015b07
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r9 + r8*4]
mov ecx, dword [rax + r11]
add rcx, r9
mov edx, 0x6b398ef8
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140015b02
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140015ae0
cmp edx, 0xdcf5cd4
je 0x140015c56
test r8d, r8d
jne 0x140015ac0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140015b1d
cmp qword [rax + 0x30], 0
jne 0x140015a90
xor eax, eax
mov qword [0x140022760], rax
mov rcx, qword [rbp - 0x68]
call rax
mov rax, qword [0x140022758]
test rax, rax
jne 0x140015bf6
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x140015bd7
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x140015bd7
mov r11d, dword [rbx + 0x20]
nop word [rax + rax]
dec r8d
lea rax, [r11 + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
mov edx, 0xf4cbdfa0
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x140015bd2
nop dword [rax]
movsx eax, al
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
test al, al
jne 0x140015bb0
cmp edx, 0xa7d94673
je 0x140015c72
test r8d, r8d
jne 0x140015b90
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x140015bed
cmp qword [rax + 0x30], 0
jne 0x140015b60
xor eax, eax
mov qword [0x140022758], rax
mov ecx, 0x3e8
call rax
jmp 0x140012405
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rbx + 0x24]
add rax, r9
movzx eax, word [rax + r8*2]
mov eax, dword [rcx + rax*4]
add rax, r9
jmp 0x14001585f
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x14001597f
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x140015a4f
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x140015b1f
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
mov qword [0x140022758], rax
mov ecx, 0x3e8
call rax
jmp 0x140012405
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3