Function at 0x140052980
Capabilities:
Encode data using base64
Encode data using xor
Encrypt data using speck

Disassembly:
mov r11, rsp
push rbp
push rdi
push r15
lea rbp, [r11 - 0x1a8]
sub rsp, 0x290
mov rax, qword [0x1400e2740]
xor rax, rsp
mov qword [rbp + 0x118], rax
mov rax, qword [0x1400e2bc0]
cmp rax, qword [0x1400e2bc8]
mov qword [r11 + 0x20], r12
mov qword [r11 - 0x20], r13
mov r13, rcx
movaps xmmword [r11 - 0x88], xmm11
je 0x1400529d0
mov qword [0x1400e2bc8], rax
mov rdx, qword [rcx + 0xe0]
mov rcx, qword [0x1400e2a08]
add rdx, 0x117105c8
add rcx, rdx
mov qword [rsp + 0x2b8], rbx
mov qword [rsp + 0x2c0], rsi
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx], rax
lea rcx, [rax + 0x1d8]
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx + 8], rax
lea rcx, [rax + 0x38]
call fcn.1400499e0
mov rcx, rax
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx + 0x18], rax
lea rcx, [rax + 0x30]
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx + 0x20], rax
lea rcx, [rax + 0x338]
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx + 0x28], rax
lea rcx, [rax + 0x318]
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx + 0x30], rax
mov rcx, qword [rcx + 0x28]
add rcx, 0x2b0
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx + 0x38], rax
mov rcx, qword [rcx + 0x28]
add rcx, 0x198
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
lea r8, [rbp + 0xc8]
xor r12d, r12d
mov dword [rbp + 0xc8], 0x83b6fb9
mov qword [rsp + 0x38], r12
xorps xmm0, xmm0
xorps xmm11, xmm11
mov qword [rsp + 0x30], r12
mov qword [rcx + 0x40], rax
mov r9d, 0x28
mov rcx, qword [0x1400e2a10]
add rax, 0x120
mov qword [rbp + 0xd0], rax
mov edx, 0x225d8c
lea rax, [rbp - 0x80]
mov dword [rsp + 0x28], r12d
mov qword [rbp + 0xd8], rax
mov eax, dword [0x1400e2a18]
mov dword [rbp + 0xcc], eax
movsd qword [rbp - 0x70], xmm11
movups xmmword [rbp - 0x80], xmm0
mov dword [rbp + 0xe9], r12d
mov word [rbp + 0xed], r12w
mov byte [rbp + 0xef], r12b
mov qword [rbp + 0xe0], 0x18
mov byte [rbp + 0xe8], r12b
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov rcx, qword [0x1400e2b88]
movups xmm1, xmmword [rbp - 0x80]
movsd xmm0, qword [rbp - 0x70]
movups xmmword [rcx + 0x58], xmm1
movsd qword [rcx + 0x68], xmm0
mov rcx, qword [rcx + 0x38]
add rcx, 0x1211
call fcn.1400496e0
mov rcx, qword [0x1400e2b88]
cmp qword [rcx + 0x28], r12
mov dword [rcx + 0x50], eax
sete byte [0x1400e2c3b]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x14005604f
cmp byte [0x1400e2c2f], r12b
je 0x14005604f
movaps xmmword [rsp + 0x270], xmm6
lea rcx, [rax + 0x9f8]
movaps xmmword [rsp + 0x260], xmm7
movaps xmmword [rsp + 0x250], xmm8
movaps xmmword [rsp + 0x240], xmm9
movaps xmmword [rsp + 0x230], xmm10
call fcn.1400499e0
movabs rbx, 0x7fffffffffbffffe
lea rcx, [rax - 0x400001]
cmp rcx, rbx
ja 0x14005601d
lea rcx, [rax + 0x498]
call fcn.1400499e0
lea rcx, [rax - 0x400001]
cmp rcx, rbx
ja 0x14005601d
lea rcx, [rax + 0x90]
call fcn.1400499e0
mov rcx, rax
mov rbx, rax
call fcn.14004c980
test al, al
je 0x14005601d
lea rcx, [rbx + 0x28]
call fcn.1400499e0
lea rcx, [rbx + 0x30]
mov rsi, rax
call fcn.1400496e0
movsxd rdi, eax
lea ecx, [rdi - 1]
cmp ecx, 0x30
ja 0x14005601d
mov rcx, 0xffffffffffffffff
mov eax, 2
mul rdi
cmovb rax, rcx
mov rcx, rax
call fcn.140066a58
lea r8d, [rdi + rdi]
mov rdx, rax
mov rcx, rsi
mov rbx, rax
call fcn.14004cf20
mov rcx, rbx
call fcn.140066220
cmp word [0x1400c13da], r12w
movups xmm3, xmmword [str.wDKXOWH]
mov ecx, dword [0x1400c13d8]
movsd xmm0, qword [0x1400c13d0]
mov edi, dword [0x1400e2798]
movdqa xmm10, xmmword [0x1400c2150]
movdqa xmm7, xmmword [0x140070170]
movdqa xmm9, xmmword [0x1400c2160]
movdqa xmm6, xmmword [0x1400c2190]
movdqa xmm8, xmmword [0x1400c2180]
movups xmmword [rbp - 0x80], xmm3
mov dword [rbp - 0x68], ecx
movsd qword [rbp - 0x70], xmm0
je 0x140052e04
mov r8d, r12d
cmp edi, 2
jl 0x140052dc0
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckldq xmm2, xmm7
mov r8d, 8
pmuldq xmm2, xmm6
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm2, xmm1, 0xd8
movq xmm1, xmm3
paddw xmm2, xmm8
punpckhdq xmm0, xmm10
xorps xmm2, xmm1
pmuldq xmm0, xmm6
movq qword [rbp - 0x80], xmm2
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp - 0x78]
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmm8
xorps xmm2, xmm0
movq qword [rbp - 0x78], xmm2
movsxd rax, r8d
lea r9, [rbp - 0x80]
lea r9, [r9 + rax*2]
nop dword [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0xe
jl 0x140052dd0
lea rdx, [rbp - 0x80]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov eax, dword [0x1400c1418]
mov r8d, r12d
mov dword [rbp - 8], eax
movzx eax, word [0x1400c141c]
mov word [rbp - 4], ax
movups xmm0, xmmword [str.VNVYeoHNO2_10__f]
movups xmm1, xmmword [0x1400c13f0]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [0x1400c1400]
movups xmmword [rbp - 0x30], xmm1
movups xmmword [rbp - 0x20], xmm0
movsd xmm0, qword [0x1400c1410]
movsd qword [rbp - 0x10], xmm0
cmp edi, 2
jl 0x140052f65
lea rcx, [rbp - 0x40]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x18
jl 0x140052e70
cmp r8d, 0x1f
jge 0x140052fa4
movsxd rax, r8d
lea r9, [rbp - 0x40]
lea r9, [r9 + rax*2]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x1f
jl 0x140052f70
lea rdx, [rbp - 0x40]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov eax, dword [0x1400c1448]
mov r8d, r12d
mov dword [rbp + 0xf0], eax
movups xmm0, xmmword [0x1400c1420]
movups xmm1, xmmword [0x1400c1430]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c1440]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140053105
lea rcx, [rbp + 0xc8]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140053010
cmp r8d, 0x16
jge 0x140053154
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x16
jl 0x140053120
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
movzx eax, word [0x1400c1480]
mov r8d, r12d
mov word [rbp + 0x58], ax
movups xmm0, xmmword [0x1400c1450]
movups xmm1, xmmword [0x1400c1460]
movups xmmword [rbp + 0x28], xmm0
movups xmm0, xmmword [0x1400c1470]
movups xmmword [rbp + 0x38], xmm1
movups xmmword [rbp + 0x48], xmm0
cmp edi, 2
jl 0x1400532a5
lea rcx, [rbp + 0x28]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x18
jl 0x1400531b0
cmp r8d, 0x19
jge 0x1400532e4
movsxd rax, r8d
lea r9, [rbp + 0x28]
lea r9, [r9 + rax*2]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x19
jl 0x1400532b0
lea rdx, [rbp + 0x28]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov r8d, r12d
movups xmm0, xmmword [str.eCJPQN]
movups xmm1, xmmword [str.J226c]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c14a8]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140053435
lea rcx, [rbp + 0xc8]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140053340
cmp r8d, 0x14
jge 0x140053484
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x14
jl 0x140053450
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov r8d, r12d
movups xmm0, xmmword [0x1400c14b0]
movups xmm1, xmmword [0x1400c14c0]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c14d0]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x1400535d5
lea rcx, [rbp + 0xc8]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x1400534e0
cmp r8d, 0x14
jge 0x140053624
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x14
jl 0x1400535f0
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
movzx eax, word [0x1400c1500]
mov r8d, r12d
mov word [rbp + 0xf0], ax
movups xmm0, xmmword [0x1400c14d8]
movups xmm1, xmmword [0x1400c14e8]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c14f8]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140053785
lea rcx, [rbp + 0xc8]
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140053690
cmp r8d, 0x15
jge 0x1400537d4
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x15
jl 0x1400537a0
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov eax, dword [0x1400c1520]
mov r8d, r12d
movsd xmm0, qword [0x1400c1518]
mov dword [rsp + 0x78], eax
movzx eax, word [0x1400c1524]
mov word [rsp + 0x7c], ax
movsd qword [rsp + 0x70], xmm0
movups xmm4, xmmword [str.p_YIPZ_V]
movups xmmword [rsp + 0x60], xmm4
cmp edi, 2
jl 0x1400538fb
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
mov r8d, 8
pmuldq xmm0, xmm6
punpckldq xmm2, xmm7
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm4
paddw xmm3, xmm2
punpckhdq xmm0, xmm10
xorps xmm3, xmm1
pmuldq xmm0, xmm6
movq qword [rsp + 0x60], xmm3
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x68]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rsp + 0x68], xmm3
movsxd rax, r8d
lea r9, [rsp + 0x60]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0xf
jl 0x140053910
lea rdx, [rsp + 0x60]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov r8d, r12d
movups xmm0, xmmword [str.RYOCeNM5_6c]
movups xmm1, xmmword [0x1400c1538]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c1548]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140053a95
lea rcx, [rbp + 0xc8]
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x1400539a0
cmp r8d, 0x14
jge 0x140053ae4
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x14
jl 0x140053ab0
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov eax, dword [0x1400c1578]
mov r8d, r12d
mov dword [rbp + 0xf0], eax
movzx eax, word [0x1400c157c]
mov word [rbp + 0xf4], ax
movups xmm0, xmmword [0x1400c1550]
movups xmm1, xmmword [0x1400c1560]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c1570]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140053c55
lea rcx, [rbp + 0xc8]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140053b60
cmp r8d, 0x17
jge 0x140053ca4
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x17
jl 0x140053c70
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov eax, dword [0x1400c15a8]
mov r8d, r12d
mov dword [rbp + 0xf0], eax
movzx eax, word [0x1400c15ac]
mov word [rbp + 0xf4], ax
movups xmm0, xmmword [0x1400c1580]
movups xmm1, xmmword [0x1400c1590]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c15a0]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140053e15
lea rcx, [rbp + 0xc8]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140053d20
cmp r8d, 0x17
jge 0x140053e64
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x17
jl 0x140053e30
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
movzx eax, word [0x1400c15d8]
mov r8d, r12d
mov word [rbp + 0xf0], ax
movups xmm0, xmmword [0x1400c15b0]
movups xmm1, xmmword [0x1400c15c0]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c15d0]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140053fc5
lea rcx, [rbp + 0xc8]
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140053ed0
cmp r8d, 0x15
jge 0x140054014
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x15
jl 0x140053fe0
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov eax, dword [0x1400c1608]
mov r8d, r12d
mov dword [rbp + 0xf0], eax
movzx eax, word [0x1400c160c]
mov word [rbp + 0xf4], ax
movups xmm0, xmmword [str.bV_MSX_Q]
movups xmm1, xmmword [0x1400c15f0]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400c1600]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140054185
lea rcx, [rbp + 0xc8]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140054090
cmp r8d, 0x17
jge 0x1400541d4
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x17
jl 0x1400541a0
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
movzx eax, word [0x1400c1638]
mov r8d, r12d
mov word [rbp + 0xf0], ax
movups xmm0, xmmword [str.VUT_I]
movups xmm1, xmmword [0x1400c1620]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [str.____J]
movsd qword [rbp + 0xe8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x140054335
lea rcx, [rbp + 0xc8]
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140054240
cmp r8d, 0x15
jge 0x140054384
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x15
jl 0x140054350
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
mov eax, dword [0x1400c1658]
mov r8d, r12d
movsd xmm0, qword [0x1400c1650]
mov dword [rsp + 0x78], eax
movzx eax, word [0x1400c165c]
mov word [rsp + 0x7c], ax
movsd qword [rsp + 0x70], xmm0
movups xmm4, xmmword [str.eMZEN]
movups xmmword [rsp + 0x60], xmm4
cmp edi, 2
jl 0x1400544ab
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
mov r8d, 8
pmuldq xmm0, xmm6
punpckldq xmm2, xmm7
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm4
paddw xmm3, xmm2
punpckhdq xmm0, xmm10
xorps xmm3, xmm1
pmuldq xmm0, xmm6
movq qword [rsp + 0x60], xmm3
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x68]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rsp + 0x68], xmm3
movsxd rax, r8d
lea r9, [rsp + 0x60]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0xf
jl 0x1400544c0
lea rdx, [rsp + 0x60]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054689
movups xmm1, xmmword [0x1400c1670]
movups xmm0, xmmword [str.VSISU_J]
pextrw eax, xmm1, 7
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm1
test ax, ax
je 0x140054674
cmp edi, 2
jl 0x140054630
mov edx, r12d
lea rcx, [rbp - 0x60]
nop
movd xmm2, edx
lea eax, [rdx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add edx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp edx, 0x10
jl 0x140054540
jmp 0x140054674
lea r9, [rbp - 0x60]
mov r8d, r12d
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x10
jl 0x140054640
lea rdx, [rbp - 0x60]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
je 0x14005478e
cmp byte [0x1400e2c30], r12b
movzx eax, byte [0x1400e2661]
movss xmm0, dword [0x1400e2668]
movss xmm1, dword [0x1400e266c]
mov byte [0x1400e2640], al
movzx eax, byte [0x1400e2663]
mov byte [0x1400e2642], al
movzx eax, byte [0x1400e2662]
mov byte [0x1400e2641], al
movzx eax, byte [0x1400e2c3c]
mov byte [0x1400e2c20], al
movzx eax, byte [0x1400e2664]
mov byte [0x1400e2c2c], al
mov eax, dword [0x1400e2c40]
mov dword [0x1400e2c28], eax
mov eax, dword [0x1400e2c44]
mov dword [0x1400e3f60], eax
movss dword [0x1400e2644], xmm0
movss dword [0x1400e265c], xmm1
mov dword [0x1400e2a00], r12d
je 0x14005478e
movzx edx, word [0x1400c1688]
movzx eax, byte [0x1400c168a]
movsd xmm0, qword [0x1400c1680]
xor al, 0x40
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x37
xor byte [rsp + 0x42], 0x38
xor byte [rsp + 0x43], 0x39
xor byte [rsp + 0x44], 0x3a
xor byte [rsp + 0x45], 0x3b
xor byte [rsp + 0x46], 0x3c
xor byte [rsp + 0x47], 0x3d
mov word [rsp + 0x48], dx
xor dl, 0x3e
xor byte [rsp + 0x49], 0x3f
mov byte [rsp + 0x48], dl
lea rdx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x52
mov byte [rsp + 0x4a], al
call fcn.140048bb0
lea rdx, [0x140049660]
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]
movups xmm4, xmmword [str.e_WM_NR]
pextrw eax, xmm4, 7
movups xmmword [rsp + 0x50], xmm4
test ax, ax
je 0x1400548c4
cmp edi, 2
jl 0x140054883
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
punpckldq xmm2, xmm7
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm4
paddw xmm3, xmm2
punpckhdq xmm0, xmm10
xorps xmm3, xmm1
pmuldq xmm0, xmm6
movq qword [rsp + 0x50], xmm3
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x58]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rsp + 0x58], xmm3
jmp 0x1400548c4
lea r9, [rsp + 0x50]
mov r8d, r12d
nop dword [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 8
jl 0x140054890
lea rdx, [rsp + 0x50]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
je 0x140054acd
cmp byte [0x1400e2c30], r12b
movzx eax, byte [0x1400e2670]
movss xmm0, dword [0x1400e2674]
movss xmm1, dword [0x1400e2678]
mov byte [0x1400e2640], al
movzx eax, byte [0x1400e2672]
mov byte [0x1400e2642], al
movzx eax, byte [0x1400e2671]
mov byte [0x1400e2641], al
movzx eax, byte [0x1400e2c48]
mov byte [0x1400e2c20], al
movzx eax, byte [0x1400e2673]
mov byte [0x1400e2c2c], al
mov eax, dword [0x1400e2c4c]
mov dword [0x1400e2c28], eax
mov eax, dword [0x1400e2c50]
mov dword [0x1400e3f60], eax
movss dword [0x1400e2644], xmm0
movss dword [0x1400e265c], xmm1
mov dword [0x1400e2a00], 1
je 0x140054acd
mov eax, dword [0x1400c16a8]
mov ecx, r12d
movsd xmm0, qword [0x1400c16a0]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x1400c16ac]
mov byte [rsp + 0x5c], al
movsd qword [rsp + 0x50], xmm0
cmp edi, 2
jl 0x140054a6d
movdqa xmm1, xmm7
movdqa xmm0, xmm7
punpckldq xmm1, xmm7
mov ecx, 8
pmuldq xmm1, xmm6
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm7
pmulld xmm0, xmm9
psubd xmm1, xmm0
movd xmm0, dword [0x1400c16a0]
andps xmm1, xmmword [0x1400c2170]
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x1400c21c0]
xorps xmm1, xmm0
movdqa xmm0, xmm10
movd dword [rsp + 0x50], xmm1
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
pmuldq xmm1, xmm6
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm10
pmulld xmm0, xmm9
psubd xmm1, xmm0
movd xmm0, dword [rsp + 0x54]
andps xmm1, xmmword [0x1400c2170]
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x1400c21c0]
xorps xmm1, xmm0
movd dword [rsp + 0x54], xmm1
movsxd rax, ecx
lea r8, [rsp + 0x50]
add r8, rax
nop dword [rax + rax]
mov eax, 0x94f2095
lea r8, [r8 + 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x37
movzx eax, cl
inc ecx
sub al, dl
add al, 0x36
xor byte [r8 - 1], al
cmp ecx, 0xd
jl 0x140054a80
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x50]
call fcn.140048bb0
lea rdx, [0x140049660]
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]
cmp word [0x1400c16b6], r12w
mov rax, qword [0x1400c16b0]
mov qword [rsp + 0x40], rax
je 0x140054b94
cmp edi, 2
jl 0x140054b52
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckldq xmm2, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm2, xmm6
pmuldq xmm0, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x40]
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmm8
xorps xmm2, xmm0
movq qword [rsp + 0x40], xmm2
jmp 0x140054b94
lea r9, [rsp + 0x40]
mov r8d, r12d
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 4
jl 0x140054b60
lea rdx, [rsp + 0x40]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
mov esi, 0x43
test rax, rax
jne 0x140054e15
mov eax, dword [0x1400c16d0]
mov r8d, r12d
movsd xmm0, qword [0x1400c16c8]
mov dword [rsp + 0x78], eax
movzx eax, word [0x1400c16d4]
mov word [rsp + 0x7c], ax
movsd qword [rsp + 0x70], xmm0
movups xmm4, xmmword [0x1400c16b8]
movups xmmword [rsp + 0x60], xmm4
cmp edi, 2
jl 0x140054cbe
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
mov r8d, 8
pmuldq xmm0, xmm6
punpckldq xmm2, xmm7
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm4
paddw xmm3, xmm2
punpckhdq xmm0, xmm10
xorps xmm3, xmm1
pmuldq xmm0, xmm6
movq qword [rsp + 0x60], xmm3
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x68]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rsp + 0x68], xmm3
movsxd rax, r8d
lea r9, [rsp + 0x60]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0xf
jl 0x140054cd0
lea rdx, [rsp + 0x60]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054e15
mov ecx, dword [0x1400c16e8]
lea rdx, [rbp + 0x100]
movups xmm0, xmmword [str.uXU__O]
movzx eax, word [0x1400c16ec]
mov dword [rbp + 0x110], ecx
xor ax, 0x40
xor word [rbp + 0x112], 0x3f
xor cx, 0x3e
movups xmmword [rbp + 0x100], xmm0
xor word [rbp + 0x102], 0x37
xor word [rbp + 0x104], 0x38
xor word [rbp + 0x106], 0x39
xor word [rbp + 0x108], 0x3a
xor word [rbp + 0x10a], 0x3b
xor word [rbp + 0x10c], 0x3c
xor word [rbp + 0x10e], 0x3d
mov word [rbp + 0x110], cx
mov rcx, rbx
mov word [rbp + 0x100], si
mov word [rbp + 0x114], ax
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140054e15
mov ecx, dword [0x1400c16f8]
mov edx, 0x50
movsd xmm0, qword [str.fKMUW_]
movzx eax, word [0x1400c16fc]
mov dword [rsp + 0x58], ecx
xor ax, 0x3c
xor word [rsp + 0x5a], 0x3b
xor cx, 0x3a
movsd qword [rsp + 0x50], xmm0
xor word [rsp + 0x52], 0x37
xor word [rsp + 0x54], 0x38
xor word [rsp + 0x56], 0x39
mov word [rsp + 0x58], cx
mov rcx, rbx
mov word [rsp + 0x50], dx
lea rdx, [rsp + 0x50]
mov word [rsp + 0x5c], ax
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
je 0x140054f05
cmp byte [0x1400e2c30], r12b
movzx eax, byte [0x1400e267c]
movss xmm0, dword [0x1400e2680]
movss xmm1, dword [0x1400e2684]
mov byte [0x1400e2640], al
movzx eax, byte [0x1400e267e]
mov byte [0x1400e2642], al
movzx eax, byte [0x1400e267d]
mov byte [0x1400e2641], al
movzx eax, byte [0x1400e2c54]
mov byte [0x1400e2c20], al
movzx eax, byte [0x1400e267f]
mov byte [0x1400e2c2c], al
mov eax, dword [0x1400e2c58]
mov dword [0x1400e2c28], eax
mov eax, dword [0x1400e2c5c]
mov dword [0x1400e3f60], eax
movss dword [0x1400e2644], xmm0
movss dword [0x1400e265c], xmm1
mov dword [0x1400e2a00], 2
je 0x140054f05
movzx eax, byte [0x1400c1708]
lea rdx, [rsp + 0x40]
movsd xmm0, qword [0x1400c1700]
xor al, 0x3e
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movsd qword [rsp + 0x40], xmm0
xor byte [rsp + 0x41], 0x37
xor byte [rsp + 0x42], 0x38
xor byte [rsp + 0x43], 0x39
xor byte [rsp + 0x44], 0x3a
xor byte [rsp + 0x45], 0x3b
xor byte [rsp + 0x46], 0x3c
xor byte [rsp + 0x47], 0x3d
mov byte [rsp + 0x48], al
mov byte [rsp + 0x40], 0x53
call fcn.140048bb0
lea rdx, [0x140049660]
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]
cmp word [0x1400c172a], r12w
movups xmm4, xmmword [str.BVMSU_]
mov eax, dword [0x1400c1728]
movsd xmm0, qword [str.lV_C]
movups xmmword [rsp + 0x60], xmm4
mov dword [rsp + 0x78], eax
movsd qword [rsp + 0x70], xmm0
je 0x140055064
mov r8d, r12d
cmp edi, 2
jl 0x140055016
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
mov r8d, 8
pmuldq xmm0, xmm6
punpckldq xmm2, xmm7
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm4
paddw xmm3, xmm2
punpckhdq xmm0, xmm10
xorps xmm3, xmm1
pmuldq xmm0, xmm6
movq qword [rsp + 0x60], xmm3
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x68]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rsp + 0x68], xmm3
movsxd rax, r8d
lea r9, [rsp + 0x60]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0xe
jl 0x140055030
lea rdx, [rsp + 0x60]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
mov eax, dword [0x1400c1750]
mov r8d, r12d
mov dword [rbp + 0xe8], eax
movzx eax, word [0x1400c1754]
mov word [rbp + 0xec], ax
movups xmm0, xmmword [str.RYOCeoSWO_3b]
movups xmm1, xmmword [0x1400c1740]
movups xmmword [rbp + 0xc8], xmm0
movups xmmword [rbp + 0xd8], xmm1
cmp edi, 2
jl 0x1400551c9
lea rcx, [rbp + 0xc8]
nop dword [rax]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x1400550d0
cmp r8d, 0x13
jge 0x140055214
movsxd rax, r8d
lea r9, [rbp + 0xc8]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x13
jl 0x1400551e0
lea rdx, [rbp + 0xc8]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
movups xmm0, xmmword [str.eBHIHON___]
movups xmm1, xmmword [0x1400c1768]
movups xmmword [rbp + 0x28], xmm0
movups xmm0, xmmword [0x1400c1778]
movups xmmword [rbp + 0x38], xmm1
movups xmmword [rbp + 0x48], xmm0
cmp edi, 2
jl 0x140055350
mov edx, r12d
lea rcx, [rbp + 0x28]
nop dword [rax]
movd xmm2, edx
lea eax, [rdx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add edx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp edx, 0x18
jl 0x140055260
jmp 0x140055394
lea r9, [rbp + 0x28]
mov r8d, r12d
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x18
jl 0x140055360
lea rdx, [rbp + 0x28]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
cmp word [0x1400c179e], r12w
movups xmm4, xmmword [0x1400c1788]
movsd xmm0, qword [0x1400c1798]
movups xmmword [rbp + 0x10], xmm4
movsd qword [rbp + 0x20], xmm0
je 0x1400554f4
mov r8d, r12d
cmp edi, 2
jl 0x1400554ab
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
mov r8d, 8
pmuldq xmm0, xmm6
punpckldq xmm2, xmm7
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm4
paddw xmm3, xmm2
punpckhdq xmm0, xmm10
xorps xmm3, xmm1
pmuldq xmm0, xmm6
movq qword [rbp + 0x10], xmm3
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp + 0x18]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rbp + 0x18], xmm3
movsxd rax, r8d
lea r9, [rbp + 0x10]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0xc
jl 0x1400554c0
lea rdx, [rbp + 0x10]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
movzx eax, word [0x1400c17d0]
mov r8d, r12d
mov word [rbp + 0xc0], ax
movups xmm0, xmmword [0x1400c17a0]
movups xmm1, xmmword [0x1400c17b0]
movups xmmword [rbp + 0x90], xmm0
movups xmm0, xmmword [0x1400c17c0]
movups xmmword [rbp + 0xa0], xmm1
movups xmmword [rbp + 0xb0], xmm0
cmp edi, 2
jl 0x140055659
lea rcx, [rbp + 0x90]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x18
jl 0x140055560
cmp r8d, 0x19
jge 0x1400556a4
movsxd rax, r8d
lea r9, [rbp + 0x90]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x19
jl 0x140055670
lea rdx, [rbp + 0x90]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
mov eax, dword [0x1400c1800]
mov r8d, r12d
mov dword [rbp + 0x88], eax
movzx eax, word [0x1400c1804]
mov word [rbp + 0x8c], ax
movups xmm0, xmmword [str.wBLVWZHT_]
movups xmm1, xmmword [0x1400c17e8]
movups xmmword [rbp + 0x60], xmm0
movsd xmm0, qword [0x1400c17f8]
movsd qword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x70], xmm1
cmp edi, 2
jl 0x140055809
lea rcx, [rbp + 0x60]
nop dword [rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140055710
cmp r8d, 0x17
jge 0x140055854
movsxd rax, r8d
lea r9, [rbp + 0x60]
lea r9, [r9 + rax*2]
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x17
jl 0x140055820
lea rdx, [rbp + 0x60]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
cmp word [0x1400c180e], r12w
mov rax, qword [str.rzj9b__KWZP]
mov qword [rsp + 0x40], rax
je 0x140055934
cmp edi, 2
jl 0x1400558ee
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckldq xmm2, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm2, xmm6
pmuldq xmm0, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x40]
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmm8
xorps xmm2, xmm0
movq qword [rsp + 0x40], xmm2
jmp 0x140055934
lea r9, [rsp + 0x40]
mov r8d, r12d
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 4
jl 0x140055900
lea rdx, [rsp + 0x40]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
cmp word [str.ABVM_I], r12w
movups xmm4, xmmword [0x1400c1810]
movsd xmm0, qword [0x1400c1820]
movups xmmword [rbp - 0x80], xmm4
movsd qword [rbp - 0x70], xmm0
je 0x140055a94
mov r8d, r12d
cmp edi, 2
jl 0x140055a4c
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
mov r8d, 8
pmuldq xmm0, xmm6
punpckldq xmm2, xmm7
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm4
paddw xmm3, xmm2
punpckhdq xmm0, xmm10
xorps xmm3, xmm1
pmuldq xmm0, xmm6
movq qword [rbp - 0x80], xmm3
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp - 0x78]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rbp - 0x78], xmm3
movsxd rax, r8d
lea r9, [rbp - 0x80]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0xc
jl 0x140055a60
lea rdx, [rbp - 0x80]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
mov eax, dword [0x1400c1858]
mov r8d, r12d
mov dword [rbp - 0x10], eax
movups xmm0, xmmword [0x1400c1828]
movups xmm1, xmmword [str.QS4l]
movups xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [0x1400c1848]
movups xmmword [rbp - 0x30], xmm1
movups xmmword [rbp - 0x20], xmm0
cmp edi, 2
jl 0x140055be9
lea rcx, [rbp - 0x40]
nop dword [rax]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x18
jl 0x140055af0
cmp r8d, 0x1a
jge 0x140055c34
movsxd rax, r8d
lea r9, [rbp - 0x40]
lea r9, [r9 + rax*2]
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0x1a
jl 0x140055c00
lea rdx, [rbp - 0x40]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
movups xmm0, xmmword [str.uEWJIYSJ_]
movzx eax, word [0x1400c1870]
lea rdx, [rbp + 0x100]
xor ax, 0x3e
mov rcx, rbx
movups xmmword [rbp + 0x100], xmm0
xor word [rbp + 0x102], 0x37
xor word [rbp + 0x104], 0x38
xor word [rbp + 0x106], 0x39
xor word [rbp + 0x108], 0x3a
xor word [rbp + 0x10a], 0x3b
xor word [rbp + 0x10c], 0x3c
xor word [rbp + 0x10e], 0x3d
mov word [rbp + 0x100], si
mov word [rbp + 0x110], ax
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
jne 0x140055e29
mov eax, dword [0x1400c1890]
mov r8d, r12d
movsd xmm0, qword [0x1400c1888]
mov dword [rbp - 0x48], eax
movzx eax, word [0x1400c1894]
mov word [rbp - 0x44], ax
movsd qword [rbp - 0x50], xmm0
movups xmm4, xmmword [str.R_Q_UU_S_]
movups xmmword [rbp - 0x60], xmm4
cmp edi, 2
jl 0x140055dc8
movdqa xmm2, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
mov r8d, 8
pmuldq xmm0, xmm6
punpckldq xmm2, xmm7
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm7
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movdqa xmm0, xmm10
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm4
paddw xmm3, xmm2
punpckhdq xmm0, xmm10
xorps xmm3, xmm1
pmuldq xmm0, xmm6
movq qword [rbp - 0x60], xmm3
movdqa xmm2, xmm10
punpckldq xmm2, xmm10
pmuldq xmm2, xmm6
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 1
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
movq xmm2, xmm8
pmulld xmm1, xmm9
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp - 0x58]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rbp - 0x58], xmm3
movsxd rax, r8d
lea r9, [rbp - 0x60]
lea r9, [r9 + rax*2]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
lea r9, [r9 + 2]
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x37
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x36
xor word [r9 - 2], ax
cmp r8d, 0xf
jl 0x140055de0
lea rdx, [rbp - 0x60]
mov rcx, rbx
call sub.VCRUNTIME140.dll_wcsstr
test rax, rax
je 0x14005601d
cmp byte [0x1400e2c30], r12b
movzx eax, byte [0x1400e2688]
movss xmm0, dword [0x1400e268c]
movss xmm1, dword [0x1400e2690]
mov byte [0x1400e2640], al
movzx eax, byte [0x1400e268a]
mov byte [0x1400e2642], al
movzx eax, byte [0x1400e2689]
mov byte [0x1400e2641], al
movzx eax, byte [0x1400e2c60]
mov byte [0x1400e2c20], al
movzx eax, byte [0x1400e268b]
mov byte [0x1400e2c2c], al
mov eax, dword [0x1400e2c64]
mov dword [0x1400e2c28], eax
mov eax, dword [0x1400e2c68]
mov dword [0x1400e3f60], eax
movss dword [0x1400e2644], xmm0
movss dword [0x1400e265c], xmm1
mov dword [0x1400e2a00], 3
je 0x14005601d
cmp byte [0x1400c18a3], r12b
movsd xmm0, qword [str.eyqi]
mov eax, dword [0x1400c18a0]
movsd qword [rsp + 0x50], xmm0
mov dword [rsp + 0x58], eax
je 0x140055ffc
mov ecx, r12d
cmp edi, 2
jl 0x140055fc2
mov eax, dword [0x1400c21c0]
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
mov ecx, 8
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm10
pmulld xmm0, xmm9
psubd xmm7, xmm0
punpckldq xmm1, xmm10
andps xmm7, xmmword [0x1400c2170]
packuswb xmm7, xmm7
pmuldq xmm1, xmm6
packuswb xmm7, xmm7
movd xmm0, eax
paddb xmm7, xmm0
movd xmm0, dword [str.eyqi]
xorps xmm7, xmm0
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm6
movd dword [rsp + 0x50], xmm7
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rsp + 0x54]
pmulld xmm0, xmm9
psubd xmm10, xmm0
movd xmm0, eax
andps xmm10, xmmword [0x1400c2170]
packuswb xmm10, xmm10
packuswb xmm10, xmm10
paddb xmm10, xmm0
xorps xmm10, xmm1
movd dword [rsp + 0x54], xmm10
movsxd rax, ecx
lea r8, [rsp + 0x50]
add r8, rax
nop dword [rax]
mov eax, 0x94f2095
lea r8, [r8 + 1]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x37
movzx eax, cl
inc ecx
sub al, dl
add al, 0x36
xor byte [r8 - 1], al
cmp ecx, 0xc
jl 0x140055fd0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x50]
call fcn.140048bb0
lea rdx, [0x140049660]
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, qword [0x1400e2b88]
movaps xmm9, xmmword [rsp + 0x240]
movaps xmm8, xmmword [rsp + 0x250]
movaps xmm7, xmmword [rsp + 0x260]
movaps xmm6, xmmword [rsp + 0x270]
movaps xmm10, xmmword [rsp + 0x230]
mov rcx, qword [rcx]
add rcx, 0x160
mov qword [rsp + 0x280], r14
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx + 0x10], rax
lea rcx, [rax + 0x2a8]
call fcn.1400499e0
mov rcx, qword [0x1400e2b88]
mov qword [rcx + 0x48], rax
mov rcx, qword [rcx + 0x10]
add rcx, 0x2b0
call fcn.1400496e0
mov r8, qword [0x1400e2b88]
mov edi, r12d
lea rcx, [0x1400e2bc0]
mov dword [r8 + 0x54], eax
test eax, eax
jle 0x14005638a
nop word [rax + rax]
mov rax, qword [r8 + 0x48]
movsxd rcx, edi
lea rcx, [rax + rcx*8]
call fcn.1400499e0
mov rsi, rax
lea rcx, [rax + 0x308]
call fcn.1400499e0
mov rbx, rax
lea rcx, [rax + 0x198]
call fcn.1400499e0
mov r14, rax
mov qword [rsp + 0x38], r12
xorps xmm0, xmm0
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], r12d
lea r8, [rbp + 0xc8]
lea rcx, [rax + 0x120]
movsd qword [rbp + 0x110], xmm11
lea rax, [rbp + 0x100]
mov qword [rbp + 0xd0], rcx
mov rcx, qword [0x1400e2a10]
mov r9d, 0x28
mov qword [rbp + 0xd8], rax
mov edx, 0x225d8c
mov eax, dword [0x1400e2a18]
mov dword [rbp + 0xcc], eax
movups xmmword [rbp + 0x100], xmm0
mov dword [rbp + 0xe9], r12d
mov word [rbp + 0xed], r12w
mov byte [rbp + 0xef], r12b
mov dword [rbp + 0xc8], 0x83b6fb9
mov qword [rbp + 0xe0], 0x18
mov byte [rbp + 0xe8], r12b
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movups xmm0, xmmword [rbp + 0x100]
lea r8, [rbp - 0x80]
mov rcx, r13
movsd xmm1, qword [rbp + 0x110]
lea rdx, [rsp + 0x50]
movaps xmmword [rbp - 0x80], xmm0
movsd qword [rbp - 0x70], xmm1
call fcn.140060550
movsd xmm2, qword [rax]
comisd xmm2, xmm11
movsd xmm1, qword [rax + 8]
jbe 0x140056370
movd xmm0, dword [0x1400e2c6c]
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm2
jbe 0x140056370
comisd xmm1, xmm11
jbe 0x140056370
movd xmm0, dword [0x1400e2c70]
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jbe 0x140056370
lea rcx, [rbx + 0x318]
call fcn.1400499e0
lea rcx, [rbx + 0x750]
mov qword [rsp + 0x38], r12
mov qword [rbp + 0xd0], rcx
lea r8, [rbp + 0xc8]
mov ecx, dword [0x1400e2a18]
mov r15, rax
mov dword [rbp + 0xcc], ecx
lea rax, [rbp + 0xf8]
mov rcx, qword [0x1400e2a10]
mov r9d, 0x28
mov qword [rsp + 0x30], r12
mov edx, 0x225d8c
mov dword [rsp + 0x28], r12d
mov byte [rbp + 0xf8], r12b
mov dword [rbp + 0xe9], r12d
mov word [rbp + 0xed], r12w
mov byte [rbp + 0xef], r12b
mov dword [rbp + 0xc8], 0x83b6fb9
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0xe0], 1
mov byte [rbp + 0xe8], r12b
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
lea rcx, [rsi + 0x1211]
call fcn.1400496e0
mov r8, qword [0x1400e2b88]
cmp dword [r8 + 0x50], eax
jne 0x1400562cf
cmp qword [r8 + 0x28], r12
jne 0x140056377
mov rdx, qword [0x1400e2bc8]
xor ecx, ecx
cmp rdx, qword [0x1400e2bd0]
movsd xmm0, qword [rbp + 0x100]
movsd xmm2, qword [rbp + 0x108]
movsd xmm3, qword [rbp + 0x110]
movsd qword [rbp - 0x18], xmm0
movsd qword [rbp - 0x10], xmm2
movsd qword [rbp - 8], xmm3
mov dword [rbp - 0x1c], r12d
mov qword [rbp], rcx
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], rsi
mov dword [rbp - 0x20], eax
je 0x140056360
movups xmm0, xmmword [rbp - 0x40]
movups xmm1, xmmword [rbp - 0x30]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rbp - 0x20]
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx + 0x20], xmm0
movsd xmm0, qword [rbp]
movaps xmm1, xmm2
unpcklpd xmm1, xmm3
movups xmmword [rdx + 0x30], xmm1
movsd qword [rdx + 0x40], xmm0
add qword [0x1400e2bc8], 0x48
jmp 0x140056377
lea r8, [rbp - 0x40]
lea rcx, [0x1400e2bc0]
call fcn.140049170
mov r8, qword [0x1400e2b88]
inc edi
cmp edi, dword [r8 + 0x54]
jl 0x1400560c0
lea rcx, [0x1400e2bc0]
mov r9, qword [0x1400e2be0]
lea r11, [0x1400e2bd8]
mov r15, qword [0x1400e2bd8]
movaps xmm11, xmmword [rsp + 0x220]
mov r13, qword [rsp + 0x288]
mov r12, qword [rsp + 0x2c8]
cmp r15, r9
je 0x1400563d0
mov qword [0x1400e2be0], r15
mov r9, r15
jmp 0x1400563d9
cmp r11, rcx
je 0x14005652a
mov rdi, qword [0x1400e2bc0]
movabs r10, 0xe38e38e38e38e39
mov rcx, qword [0x1400e2bc8]
mov rax, r10
mov r8, qword [0x1400e2be8]
sub rcx, rdi
imul rcx
sub r8, r15
mov rsi, rdx
sar rsi, 2
mov rax, rsi
shr rax, 0x3f
add rsi, rax
mov rax, r10
imul r8
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rsi, rdx
jbe 0x14005648b
mov rdx, rsi
mov rcx, r11
call fcn.14004d9a0
mov rax, qword [0x1400e2bd8]
test rsi, rsi
je 0x140056523
nop dword [rax]
movups xmm0, xmmword [rdi]
lea rdi, [rdi + 0x48]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rdi - 0x38]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rdi - 0x28]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rdi - 0x18]
movups xmmword [rax + 0x30], xmm1
movsd xmm0, qword [rdi - 8]
movsd qword [rax + 0x40], xmm0
add rax, 0x48
sub rsi, 1
jne 0x140056450
jmp 0x140056523
sub r9, r15
mov rax, r10
imul r9
mov rcx, r15
mov r14, rdx
mov rdx, rdi
sar r14, 2
mov rax, r14
shr rax, 0x3f
add r14, rax
cmp rsi, r14
jbe 0x14005650b
lea rbx, [r14 + r14*8]
shl rbx, 3
mov r8, rbx
call sub.VCRUNTIME140.dll_memmove
mov rax, qword [0x1400e2be0]
add rdi, rbx
sub rsi, r14
je 0x140056523
nop
movups xmm0, xmmword [rdi]
lea rdi, [rdi + 0x48]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rdi - 0x38]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rdi - 0x28]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rdi - 0x18]
movups xmmword [rax + 0x30], xmm1
movsd xmm0, qword [rdi - 8]
movsd qword [rax + 0x40], xmm0
add rax, 0x48
sub rsi, 1
jne 0x1400564d0
jmp 0x140056523
lea rax, [rsi + rsi*8]
lea rbx, [rax*8]
mov r8, rbx
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + r15]
mov qword [0x1400e2be0], rax
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x40], 0x96
call fcn.140049a80
mov r14, qword [rsp + 0x280]
mov rsi, qword [rsp + 0x2c0]
mov rbx, qword [rsp + 0x2b8]
mov rcx, qword [rbp + 0x118]
xor rcx, rsp
call fcn.140066340
add rsp, 0x290
pop r15
pop rdi
pop rbp
ret