Function at 0x140004ad0
Capabilities:
Encode data using xor
Query environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x70]
sub rsp, 0x170
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x14000c008]
xor rax, rsp
mov qword [rbp + 0x30], rax
xor ecx, ecx
movups xmm0, xmmword [str.____frq__v_b]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [0x1400094f8]
movups xmmword [rbp + 0x10], xmm1
movsd xmm0, qword [str.__759:S]
movsd qword [rbp + 0x20], xmm0
movzx eax, word [0x140009510]
mov word [rbp + 0x28], ax
movzx eax, byte [0x140009512]
mov byte [rsp + 0x31], al
mov byte [rbp + 0x2a], al
mov eax, dword [str.y:8._]
mov dword [rbp - 0x30], eax
movzx eax, byte [0x140009550]
mov byte [rsp + 0x30], al
mov byte [rbp - 0x2c], al
mov eax, dword [0x140009498]
mov dword [rbp - 0x64], eax
movzx eax, byte [0x14000949c]
mov byte [rbp - 0x60], al
movzx eax, word [0x140009514]
mov word [rbp - 0x68], ax
movzx edi, byte [rbp - 0x67]
cmp byte [0x140009515], cl
jne 0x140004b9f
mov r14b, 0x2d
mov byte [rbp - 0x68], r14b
xor dil, 0x58
mov byte [rbp - 0x67], dil
jmp 0x140004ba4
movzx r14d, byte [rbp - 0x68]
movzx eax, word [0x14000948c]
mov word [rbp - 0x5c], ax
movzx r12d, byte [rbp - 0x5b]
cmp byte [0x14000948d], cl
jne 0x140004bc8
mov byte [rbp - 0x5c], 0x5c
xor r12b, 0x58
mov byte [rbp - 0x5b], r12b
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], rcx
mov qword [rbp - 0x40], 0xf
mov byte [rbp - 0x58], cl
mov edx, 0x540be3ff
mov ecx, 0x423a35c7
call fcn.140001320
mov edx, eax
lea rcx, [rsp + 0x38]
call fcn.140006de0
nop
lea r9, [rsp + 0x38]
mov rsi, qword [rsp + 0x38]
mov r13, qword [rsp + 0x50]
cmp r13, 0x10
cmovae r9, rsi
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x40]
mov rax, rdx
sub rax, rcx
mov r15, qword [rsp + 0x48]
cmp r15, rax
ja 0x140004c56
lea rax, [rcx + r15]
mov qword [rbp - 0x48], rax
lea rbx, [rbp - 0x58]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x58]
add rbx, rcx
mov r8, r15
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + r15], 0
jmp 0x140004c71
mov qword [rsp + 0x20], r15
mov rdx, r15
lea rcx, [rbp - 0x58]
call fcn.140007250
mov r13, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x38]
cmp r13, 0x10
jb 0x140004ca8
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140004ca0
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400057c2
mov rcx, rsi
call fcn.14000793c
test dil, dil
je 0x140004cbd
xor r14b, 0x57
mov byte [rbp - 0x68], r14b
xor dil, 0x58
mov byte [rbp - 0x67], dil
lea rax, [rbp - 0x68]
mov rsi, 0xffffffffffffffff
mov r15, rsi
nop dword [rax + rax]
inc r15
cmp byte [rax + r15], 0
jne 0x140004cd0
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x40]
mov rax, rdx
sub rax, rcx
cmp r15, rax
ja 0x140004d1b
lea rax, [rcx + r15]
mov qword [rbp - 0x48], rax
lea rbx, [rbp - 0x58]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x58]
add rbx, rcx
mov r8, r15
lea rdx, [rbp - 0x68]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + r15], 0
jmp 0x140004d39
mov qword [rsp + 0x20], r15
lea r9, [rbp - 0x68]
mov rdx, r15
lea rcx, [rbp - 0x58]
call fcn.140007250
movzx edi, byte [rbp - 0x67]
movzx r14d, byte [rbp - 0x68]
test dil, dil
jne 0x140004d4d
xor r14b, 0x57
mov byte [rbp - 0x68], r14b
mov dil, 0x58
mov byte [rbp - 0x67], dil
mov edx, 0x540be3ff
mov ecx, 0x423a35c7
call fcn.140001320
mov edx, eax
lea rcx, [rsp + 0x38]
call fcn.140006de0
nop
lea r9, [rsp + 0x38]
mov r15, qword [rsp + 0x38]
cmp qword [rsp + 0x50], 0x10
cmovae r9, r15
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x40]
mov rax, rdx
sub rax, rcx
mov r13, qword [rsp + 0x48]
cmp r13, rax
ja 0x140004dc2
lea rax, [rcx + r13]
mov qword [rbp - 0x48], rax
lea rbx, [rbp - 0x58]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x58]
add rbx, rcx
mov r8, r13
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + r13], 0
jmp 0x140004dd8
mov qword [rsp + 0x20], r13
mov rdx, r13
lea rcx, [rbp - 0x58]
call fcn.140007250
mov r15, qword [rsp + 0x38]
mov rax, qword [rsp + 0x50]
cmp rax, 0x10
jb 0x140004e14
lea rdx, [rax + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x140004e0c
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400057c2
mov rcx, r15
call fcn.14000793c
test dil, dil
je 0x140004e29
xor r14b, 0x57
mov byte [rbp - 0x68], r14b
xor dil, 0x58
mov byte [rbp - 0x67], dil
lea rax, [rbp - 0x68]
mov r15, rsi
inc r15
cmp byte [rax + r15], 0
jne 0x140004e30
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x40]
mov rax, rdx
sub rax, rcx
cmp r15, rax
ja 0x140004e7b
lea rax, [r15 + rcx]
mov qword [rbp - 0x48], rax
lea rbx, [rbp - 0x58]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x58]
add rbx, rcx
mov r8, r15
lea rdx, [rbp - 0x68]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + r15], 0
jmp 0x140004e99
mov qword [rsp + 0x20], r15
lea r9, [rbp - 0x68]
mov rdx, r15
lea rcx, [rbp - 0x58]
call fcn.140007250
movzx edi, byte [rbp - 0x67]
movzx r14d, byte [rbp - 0x68]
test dil, dil
jne 0x140004ead
xor r14b, 0x57
mov byte [rbp - 0x68], r14b
mov dil, 0x58
mov byte [rbp - 0x67], dil
mov edx, 0x5f5e0ff
mov ecx, 0xa98ac7
call fcn.140001320
mov edx, eax
lea rcx, [rsp + 0x38]
call fcn.140006de0
nop
lea r9, [rsp + 0x38]
mov r15, qword [rsp + 0x38]
cmp qword [rsp + 0x50], 0x10
cmovae r9, r15
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x40]
mov rax, rdx
sub rax, rcx
mov r13, qword [rsp + 0x48]
cmp r13, rax
ja 0x140004f22
lea rax, [rcx + r13]
mov qword [rbp - 0x48], rax
lea rbx, [rbp - 0x58]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x58]
add rbx, rcx
mov r8, r13
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + r13], 0
jmp 0x140004f38
mov qword [rsp + 0x20], r13
mov rdx, r13
lea rcx, [rbp - 0x58]
call fcn.140007250
mov r15, qword [rsp + 0x38]
mov rax, qword [rsp + 0x50]
cmp rax, 0x10
jb 0x140004f74
lea rdx, [rax + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x140004f6c
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400057c2
mov rcx, r15
call fcn.14000793c
test dil, dil
je 0x140004f89
xor r14b, 0x57
mov byte [rbp - 0x68], r14b
xor dil, 0x58
mov byte [rbp - 0x67], dil
lea rax, [rbp - 0x68]
mov rdi, rsi
inc rdi
cmp byte [rax + rdi], 0
jne 0x140004f90
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x40]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x140004fd9
lea rax, [rdi + rcx]
mov qword [rbp - 0x48], rax
lea rbx, [rbp - 0x58]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x58]
add rbx, rcx
mov r8, rdi
lea rdx, [rbp - 0x68]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rbx], 0
jmp 0x140004fee
mov qword [rsp + 0x20], rdi
lea r9, [rbp - 0x68]
mov rdx, rdi
lea rcx, [rbp - 0x58]
call fcn.140007250
mov edx, 0x540be3ff
mov ecx, 0x423a35c7
call fcn.140001320
mov edx, eax
lea rcx, [rsp + 0x38]
call fcn.140006de0
nop
lea r9, [rsp + 0x38]
mov rdi, qword [rsp + 0x38]
mov r15, qword [rsp + 0x50]
cmp r15, 0x10
cmovae r9, rdi
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x40]
mov rax, rdx
sub rax, rcx
mov r14, qword [rsp + 0x48]
cmp r14, rax
ja 0x140005066
lea rax, [rcx + r14]
mov qword [rbp - 0x48], rax
lea rbx, [rbp - 0x58]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x58]
add rbx, rcx
mov r8, r14
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + r14], 0
jmp 0x140005081
mov qword [rsp + 0x20], r14
mov rdx, r14
lea rcx, [rbp - 0x58]
call fcn.140007250
mov r15, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x38]
cmp r15, 0x10
jb 0x1400050b8
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x1400050b0
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400057c2
mov rcx, rdi
call fcn.14000793c
movzx eax, byte [rsp + 0x30]
test al, al
je 0x1400050d6
xor byte [rbp - 0x30], 0x57
xor byte [rbp - 0x2f], 0x58
xor byte [rbp - 0x2e], 0x59
xor byte [rbp - 0x2d], 0x5a
xor al, 0x5b
mov byte [rbp - 0x2c], al
lea rax, [rbp - 0x30]
nop word [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x1400050e0
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x40]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x140005129
lea rax, [rcx + rsi]
mov qword [rbp - 0x48], rax
lea rbx, [rbp - 0x58]
cmp rdx, 0x10
cmovae rbx, qword [rbp - 0x58]
add rbx, rcx
mov r8, rsi
lea rdx, [rbp - 0x30]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rsi], 0
jmp 0x14000513e
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x30]
mov rdx, rsi
lea rcx, [rbp - 0x58]
call fcn.140007250
test r12b, r12b
je 0x14000514f
xor byte [rbp - 0x5c], 0x57
xor r12b, 0x58
mov byte [rbp - 0x5b], r12b
lea rdx, [rbp - 0x5c]
lea rcx, [rsp + 0x78]
call fcn.140006990
mov rbx, rax
movzx ecx, byte [rbp - 0x60]
test cl, cl
je 0x14000517e
xor byte [rbp - 0x64], 0x57
xor byte [rbp - 0x63], 0x58
xor byte [rbp - 0x62], 0x59
xor byte [rbp - 0x61], 0x5a
xor cl, 0x5b
mov byte [rbp - 0x60], cl
lea rcx, [rbp - 0x64]
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov rdx, rax
mov r8, rbx
lea rcx, [rsp + 0x58]
call fcn.140007120
mov rdi, rax
lea r9, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae r9, qword [rbp - 0x58]
mov rsi, qword [rbp - 0x48]
mov rcx, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
mov rax, rdx
sub rax, rcx
cmp rsi, rax
ja 0x1400051ec
lea rax, [rcx + rsi]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0x10
jb 0x1400051d4
mov rax, qword [rdi]
lea rbx, [rax + rcx]
mov r8, rsi
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + rsi], 0
jmp 0x1400051ff
mov qword [rsp + 0x20], rsi
mov rdx, rsi
mov rcx, rdi
call fcn.140007250
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
xor r14d, r14d
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], r14
movups xmm0, xmmword [rdi]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbp - 0x10], xmm1
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], 0xf
mov byte [rdi], r14b
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x14000526f
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000526a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000526a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000793c
movdqa xmm0, xmmword [0x140009630]
movdqu xmmword [rsp + 0x68], xmm0
mov byte [rsp + 0x58], 0
mov rdx, qword [rbp - 0x70]
cmp rdx, 0x10
jb 0x1400052c1
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400052bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400052bc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000793c
movdqa xmm0, xmmword [0x140009630]
movdqu xmmword [rbp - 0x78], xmm0
mov byte [rsp + 0x78], 0
cmp byte [rbp - 0x60], 0
jne 0x1400052ed
xor byte [rbp - 0x64], 0x57
xor byte [rbp - 0x63], 0x58
xor byte [rbp - 0x62], 0x59
xor byte [rbp - 0x61], 0x5a
mov byte [rbp - 0x60], 0x5b
lea r10, [rbp - 0x20]
cmp qword [rbp - 8], 0x10
cmovae r10, qword [rbp - 0x20]
mov edi, 6
lea esi, [rdi + 0x19]
mov ebx, dword [0x14000c018]
cmp byte [rsp + 0x31], 0
je 0x1400054b3
mov r8d, r14d
cmp ebx, 2
jl 0x14000546b
movdqa xmm5, xmmword [0x140009640]
movdqa xmm4, xmmword [0x140009690]
movd xmm6, edi
movdqa xmm7, xmmword [0x140009660]
movd xmm8, esi
movdqa xmm0, xmmword [str.WWWWWWWWWWWWWWWW]
movdqa xmmword [rbp - 0x30], xmm0
lea rcx, [rbp + 4]
mov edx, dword [rbp - 0x30]
nop word [rax + rax]
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
paddd xmm1, xmm2
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 [0x140009670]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 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
paddd xmm1, xmm3
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 [0x140009670]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x28
jl 0x140005360
cmp r8d, 0x2b
jge 0x1400054b3
movsxd rax, r8d
lea r9, [rbp]
add r9, rax
nop word [rax + rax]
mov eax, 0xe070381d
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x49
movzx eax, r8b
sub al, cl
add al, 0x57
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2b
jl 0x140005480
mov rdx, r10
lea rcx, [rbp]
call fcn.1400031f0
cmp byte [rbp + 0x2a], 0
jne 0x140005663
mov r8d, r14d
cmp ebx, 2
jl 0x14000561b
movdqa xmm5, xmmword [0x140009640]
movdqa xmm4, xmmword [0x140009690]
movd xmm6, edi
movdqa xmm7, xmmword [0x140009660]
movd xmm8, esi
movdqa xmm0, xmmword [str.WWWWWWWWWWWWWWWW]
movdqa xmmword [rbp - 0x30], xmm0
lea rcx, [rbp + 4]
mov edx, dword [rbp - 0x30]
nop word [rax + rax]
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
paddd xmm1, xmm2
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 [0x140009670]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 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
paddd xmm1, xmm3
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 [0x140009670]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x28
jl 0x140005510
cmp r8d, 0x2b
jge 0x140005663
movsxd rax, r8d
lea r9, [rbp]
add r9, rax
nop word [rax + rax]
mov eax, 0xe070381d
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x49
movzx eax, r8b
sub al, cl
add al, 0x57
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2b
jl 0x140005630
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], r14
lea rsi, [rbp - 0x20]
cmp qword [rbp - 8], 0x10
cmovae rsi, qword [rbp - 0x20]
mov rdi, qword [rbp - 0x10]
movabs rbx, 0x7fffffffffffffff
cmp rdi, rbx
ja 0x140005858
mov qword [rsp + 0x50], 0xf
cmp rdi, 0x10
jae 0x1400056bb
mov qword [rsp + 0x48], rdi
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x38], xmm0
jmp 0x140005752
mov rax, rdi
or rax, 0xf
cmp rax, rbx
jbe 0x1400056f3
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140007900
mov rcx, rax
test rax, rax
je 0x14000571e
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140005734
mov rbx, rax
mov ecx, 0x16
cmp rax, rcx
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140005725
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14000585e
jmp 0x1400056d5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rcx, rcx
je 0x140005731
call fcn.140007900
jmp 0x140005734
mov rax, r14
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x50], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x38]
call fcn.140002230
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 0x10
cmovae rcx, qword [rbp - 0x20]
call fcn.140002160
xor r8d, r8d
lea rcx, [rbp - 0x20]
call fcn.140006c50
mov qword [rbp - 0x10], r14
lea rax, [rbp - 0x20]
cmp qword [rbp - 8], 0x10
cmovae rax, qword [rbp - 0x20]
mov byte [rax], 0
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x1400057ce
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400057c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400057c9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000793c
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x14000581c
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005817
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140005817
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000793c
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.1400078e0
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400011a0
nop
call fcn.140001100
int3