Function at 0x14004c830
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x380
lea rbp, [rsp + 0x30]
mov qword [rbp + 0x380], rbx
mov qword [rbp + 0x388], rsi
mov qword [rbp + 0x390], rdi
movaps xmmword [rbp + 0x340], xmm6
movaps xmmword [rbp + 0x330], xmm7
movaps xmmword [rbp + 0x320], xmm8
mov rax, qword [0x14010e410]
xor rax, rbp
mov qword [rbp + 0x310], rax
xor r15d, r15d
mov dword [rbp + 0x1d8], r15d
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x200]
call fcn.1400a0d20
movups xmm0, xmmword [0x1400f53a8]
movups xmmword [rbp + 0x88], xmm0
movups xmm1, xmmword [0x1400f53b8]
movups xmmword [rbp + 0x98], xmm1
mov eax, dword [0x1400f53c8]
mov dword [rbp + 0xa8], eax
movzx eax, byte [0x1400f53cc]
mov byte [rbp + 0xac], al
mov r8d, r15d
lea r12d, [r15 + 4]
lea r14d, [r15 + 0x1f]
mov edi, dword [0x14010e418]
cmp edi, 2
jl 0x14004ca33
movdqa xmm5, xmmword [0x1400f8810]
movdqa xmm4, xmmword [0x1400f8930]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400f8870]
movd xmm8, r14d
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rbp + 0x10], xmm0
lea rcx, [rbp + 0x8c]
mov edx, dword [rbp + 0x10]
nop dword [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
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 [0x1400f8910]
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
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 [0x1400f8910]
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, 0x20
jl 0x14004c930
cmp r8d, 0x25
jge 0x14004ca70
movsxd rax, r8d
lea r9, [rbp + 0x88]
add r9, 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, 0x25
jl 0x14004ca40
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x30], xmm1
lea rax, [rbp + 0x88]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], r15b
jne 0x14004ca90
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x20]
call fcn.14003dfb0
nop
lea rdx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0x10
cmovae rdx, qword [rbp + 0x20]
mov r8d, 0x22
lea rcx, [rbp + 0x200]
call fcn.140048160
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea r13, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x200], r13
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x1fc], edx
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x14004cb37
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004cb32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dc34
call fcn.14009e5b8
movdqa xmm0, xmmword [0x1400f8800]
movdqu xmmword [rbp + 0x30], xmm0
mov byte [rbp + 0x20], 0
xorps xmm1, xmm1
xor eax, eax
movups xmmword [rbp + 0x1e0], xmm1
mov qword [rbp + 0x1f0], rax
lea rdx, [0x140118bc0]
lea rcx, [rbp + 0x1e0]
call fcn.14003c150
nop
mov r8, qword [rbp + 0x1e8]
mov rdx, qword [rbp + 0x1e0]
sub r8, rdx
lea rcx, [rbp + 0x200]
call fcn.140047910
lea rcx, [rbp + 0x208]
call fcn.140048520
test rax, rax
jne 0x14004cbde
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
mov eax, 6
mov edx, 2
cmp qword [rbp + rcx + 0x248], 0
cmovne eax, edx
or eax, dword [rbp + rcx + 0x210]
and eax, 0x17
mov dword [rbp + rcx + 0x210], eax
mov edx, dword [rbp + rcx + 0x214]
and edx, eax
jne 0x14004dc3a
mov byte [rbp], 0xa
movups xmm0, xmmword [0x1400f5348]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [0x1400f5358]
movups xmmword [rbp + 0x70], xmm1
mov eax, dword [0x1400f5368]
mov dword [rbp + 0x80], eax
movzx eax, byte [0x1400f536c]
mov byte [rbp + 0x84], al
mov r8d, r15d
cmp edi, 2
jl 0x14004cd63
movdqa xmm5, xmmword [0x1400f8810]
movdqa xmm4, xmmword [0x1400f8930]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400f8870]
movd xmm8, r14d
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rbp + 0x10], xmm0
lea rcx, [rbp + 0x64]
mov edx, dword [rbp + 0x10]
nop dword [rax]
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
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 [0x1400f8910]
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
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 [0x1400f8910]
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, 0x20
jl 0x14004cc60
cmp r8d, 0x25
jge 0x14004cda0
movsxd rax, r8d
lea r9, [rbp + 0x60]
add r9, rax
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, 0x25
jl 0x14004cd70
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x50], xmm1
lea rax, [rbp + 0x60]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14004cdc0
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x40]
call fcn.14003dfb0
nop
mov dword [rbp + 0x1d8], 1
movups xmm0, xmmword [0x1400f5370]
movups xmmword [rbp + 0x1a0], xmm0
movups xmm1, xmmword [0x1400f5380]
movups xmmword [rbp + 0x1b0], xmm1
movups xmm0, xmmword [0x1400f5390]
movups xmmword [rbp + 0x1c0], xmm0
mov eax, dword [0x1400f53a0]
mov dword [rbp + 0x1d0], eax
movzx eax, word [0x1400f53a4]
mov word [rbp + 0x1d4], ax
mov r8d, r15d
cmp edi, 2
jl 0x14004cf73
movdqa xmm5, xmmword [0x1400f8810]
movdqa xmm4, xmmword [0x1400f8930]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400f8870]
movd xmm8, r14d
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rbp + 0x10], xmm0
lea rcx, [rbp + 0x1a4]
mov edx, dword [rbp + 0x10]
nop dword [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
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 [0x1400f8910]
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
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 [0x1400f8910]
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, 0x30
jl 0x14004ce70
cmp r8d, 0x36
jge 0x14004cfb0
movsxd rax, r8d
lea r9, [rbp + 0x1a0]
add r9, 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, 0x36
jl 0x14004cf80
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x180]
call fcn.14004b840
nop
mov dword [rbp + 0x1d8], 3
lea r8, [rbp]
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.14004b970
mov rsi, rax
mov dword [rbp + 0x1d8], 7
movups xmm0, xmmword [str.msCDqWCYehT_PWQ]
movups xmmword [rbp + 0x128], xmm0
movups xmm1, xmmword [0x1400f5538]
movups xmmword [rbp + 0x138], xmm1
movups xmm0, xmmword [0x1400f5548]
movups xmmword [rbp + 0x148], xmm0
mov ecx, dword [0x1400f5558]
mov dword [rbp + 0x158], ecx
movzx eax, word [0x1400f555c]
mov word [rbp + 0x15c], ax
movzx eax, byte [0x1400f555e]
mov byte [rbp + 0x15e], al
mov r8d, r15d
cmp edi, 2
jl 0x14004d193
movdqa xmm5, xmmword [0x1400f8810]
movdqa xmm4, xmmword [0x1400f8930]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400f8870]
movd xmm8, r14d
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rbp + 0x10], xmm0
lea rcx, [rbp + 0x12c]
mov edx, dword [rbp + 0x10]
nop dword [rax]
nop dword [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
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 [0x1400f8910]
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
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 [0x1400f8910]
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, 0x30
jl 0x14004d090
cmp r8d, 0x37
jge 0x14004d1d0
movsxd rax, r8d
lea r9, [rbp + 0x128]
add r9, 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, 0x37
jl 0x14004d1a0
xorps xmm0, xmm0
movups xmmword [rbp + 0x108], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x118], xmm1
lea rax, [rbp + 0x128]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14004d1f3
lea rdx, [rbp + 0x128]
lea rcx, [rbp + 0x108]
call fcn.14003dfb0
nop
mov dword [rbp + 0x1d8], 0xf
lea rcx, [rbp + 0x160]
call fcn.140056900
mov rbx, rax
mov dword [rbp + 0x1d8], r14d
movsd xmm0, qword [str.r_boaFSEKe:]
movsd qword [rbp + 0x10], xmm0
movzx ecx, word [0x1400f3ad8]
mov word [rbp + 0x18], cx
cmp byte [0x1400f3ad9], 0
je 0x14004d27a
mov byte [rbp + 0x10], 0x43
xor byte [rbp + 0x11], 0x32
xor byte [rbp + 0x12], 0x33
xor byte [rbp + 0x13], 0x34
xor byte [rbp + 0x14], 0x35
xor byte [rbp + 0x15], 0x36
xor byte [rbp + 0x16], 0x37
xor byte [rbp + 0x17], 0x38
xor byte [rbp + 0x18], 0x39
xor byte [rbp + 0x19], 0x3a
xorps xmm0, xmm0
movups xmmword [rbp + 0xe8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xf8], xmm1
lea rax, [rbp + 0x10]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14004d2a0
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0xe8]
call fcn.14003dfb0
nop
mov dword [rbp + 0x1d8], 0x3f
mov r9, rbx
lea r8, [rbp + 0xe8]
movzx edx, byte [rbp]
lea rcx, [rbp + 0x88]
call fcn.14003fb40
nop
mov dword [rbp + 0x1d8], 0x27f
lea r9, [rbp + 0x108]
lea r8, [rbp + 0x88]
movzx edx, byte [rbp]
lea rcx, [rbp + 0xc8]
call fcn.14003fb40
nop
mov dword [rbp + 0x1d8], 0x6ff
mov r8, qword [rsi]
mov rdx, r8
cmp qword [r8 + 0x18], 0x10
jb 0x14004d323
mov rdx, qword [r8]
mov r8, qword [r8 + 0x10]
lea rcx, [rbp + 0xc8]
call fcn.14003dba0
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x30], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x30], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov dword [rbp + 0x1d8], 0xfff
lea rdx, [rbp + 0x40]
cmp qword [rbp + 0x58], 0x10
cmovae rdx, qword [rbp + 0x40]
lea rcx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0x10
cmovae rcx, qword [rbp + 0x20]
call fcn.14004bee0
movzx ebx, al
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x14004d3c9
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d3c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dc8b
call fcn.14009e5b8
movdqa xmm0, xmmword [0x1400f8800]
movdqu xmmword [rbp + 0x30], xmm0
mov byte [rbp + 0x20], 0
mov rdx, qword [rbp + 0xe0]
cmp rdx, 0x10
jb 0x14004d41b
inc rdx
mov rcx, qword [rbp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d416
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dc91
call fcn.14009e5b8
movdqa xmm0, xmmword [0x1400f8800]
movdqu xmmword [rbp + 0xd8], xmm0
mov byte [rbp + 0xc8], 0
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0x10
jb 0x14004d474
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d46e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dc97
call fcn.14009e5b8
nop
mov rdx, qword [rbp + 0x100]
cmp rdx, 0x10
jb 0x14004d4b6
inc rdx
mov rcx, qword [rbp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d4b0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dc9d
call fcn.14009e5b8
nop
mov rdx, qword [rbp + 0x178]
cmp rdx, 0x10
jb 0x14004d4f7
inc rdx
mov rcx, qword [rbp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d4f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dca3
call fcn.14009e5b8
movdqa xmm0, xmmword [0x1400f8800]
movdqu xmmword [rbp + 0x170], xmm0
mov byte [rbp + 0x160], 0
mov rdx, qword [rbp + 0x120]
cmp rdx, 0x10
jb 0x14004d550
inc rdx
mov rcx, qword [rbp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d54a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dca9
call fcn.14009e5b8
nop
lea rcx, [rbp + 0xb0]
call fcn.140048960
nop
mov rdx, qword [rbp + 0x198]
cmp rdx, 0x10
jb 0x14004d59e
inc rdx
mov rcx, qword [rbp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d599
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dcaf
call fcn.14009e5b8
movdqa xmm0, xmmword [0x1400f8800]
movdqu xmmword [rbp + 0x190], xmm0
mov byte [rbp + 0x180], 0
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x14004d5f0
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d5eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dcb5
call fcn.14009e5b8
test bl, bl
jne 0x14004d7c3
movups xmm0, xmmword [str.fS_XEWG_K]
movups xmmword [rbp + 0xb0], xmm0
movsd xmm0, qword [0x1400f5730]
movsd qword [rbp + 0xc0], xmm0
cmp byte [0x1400f5737], bl
je 0x14004d7b0
cmp edi, 2
jl 0x14004d76d
movdqa xmm5, xmmword [0x1400f8810]
mov edx, r15d
movdqa xmm4, xmmword [0x1400f8930]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400f8870]
movd xmm8, r14d
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rbp + 0x10], xmm0
lea rcx, [rbp + 0xb4]
mov r8d, dword [rbp + 0x10]
nop dword [rax + 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 [0x1400f8910]
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 [0x1400f8910]
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 0x14004d670
jmp 0x14004d7b0
lea r9, [rbp + 0xb0]
mov r8d, r15d
nop word [rax + 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, 0x18
jl 0x14004d780
lea rdx, [rbp + 0xb0]
lea rcx, [0x1401137e0]
call fcn.1400501b0
mov rbx, r15
mov qword [rbp + 0x1d8], rbx
movups xmm0, xmmword [0x1400f53a8]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [0x1400f53b8]
movups xmmword [rbp + 0x70], xmm1
mov eax, dword [0x1400f53c8]
mov dword [rbp + 0x80], eax
movzx eax, byte [0x1400f53cc]
mov byte [rbp + 0x84], al
mov r8d, r15d
cmp edi, 2
jl 0x14004d943
movdqa xmm5, xmmword [0x1400f8810]
movdqa xmm4, xmmword [0x1400f8930]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400f8870]
movd xmm8, r14d
movdqa xmm0, xmmword [str.1111111111111111]
movdqa xmmword [rbp + 0x10], xmm0
lea rcx, [rbp + 0x64]
mov edx, dword [rbp + 0x10]
nop
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 xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400f8910]
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
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 [0x1400f8910]
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, 0x20
jl 0x14004d840
cmp r8d, 0x25
jge 0x14004d980
movsxd rax, r8d
lea r9, [rbp + 0x60]
add r9, rax
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, 0x25
jl 0x14004d950
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x50], xmm1
lea rax, [rbp + 0x60]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14004d9a0
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x40]
call fcn.14003dfb0
nop
lea r14, [rbp + 0x40]
cmp qword [rbp + 0x58], 0x10
jb 0x14004d9d0
mov r14, qword [rbp + 0x40]
test r14, r14
je 0x14004daa3
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp byte [r14 + rax], 0
jne 0x14004d9e0
inc eax
cdqe
lea rcx, [rax + rax]
mov eax, 0x80000000
add rax, rcx
mov edx, 0xffffffff
cmp rax, rdx
ja 0x14004daa3
movsxd rsi, ecx
cmp ecx, 0x400
jg 0x14004da45
mov rcx, rsi
call fcn.14004b790
test al, al
je 0x14004da45
lea rax, [rsi + 0xf]
cmp rax, rsi
ja 0x14004da32
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.14009ec90
sub rsp, rax
lea rdi, [rsp + 0x30]
jmp 0x14004da72
mov rax, rsi
not rax
cmp rax, 0x10
jb 0x14004dcbb
lea rcx, [rsi + 0x10]
call fcn.1400b3110
test rax, rax
jne 0x14004da68
mov rdi, r15
jmp 0x14004da72
mov qword [rax], r15
mov rbx, rax
lea rdi, [rax + 0x10]
shr rsi, 1
test rdi, rdi
je 0x14004daa3
mov word [rdi], r15w
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rdi
mov r9d, 0xffffffff
mov r8, r14
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
cmove rdi, r15
jmp 0x14004daa6
mov rdi, r15
mov r9d, 1
mov r8, rdi
xor edx, edx
lea ecx, [rdx + 0x14]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
nop
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x14004daf7
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004daf1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dcc6
call fcn.14009e5b8
nop
test rbx, rbx
je 0x14004db10
nop dword [rax]
mov rcx, rbx
mov rbx, qword [rbx]
call fcn.1400ad8e0
test rbx, rbx
jne 0x14004db00
mov rcx, qword [rbp + 0x1e0]
test rcx, rcx
je 0x14004db62
mov rdx, qword [rbp + 0x1f0]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004db4b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dc2e
call fcn.14009e5b8
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1e0], xmm0
mov qword [rbp + 0x1f0], r15
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x200], r13
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x1fc], edx
lea rcx, [rbp + 0x208]
call fcn.140047340
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x200], rax
mov rax, qword [rbp + 0x200]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x1fc], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x2a8], rax
lea rcx, [rbp + 0x2a8]
call fcn.14009d254
nop
mov rcx, qword [rbp + 0x310]
xor rcx, rbp
call fcn.14009df90
mov rbx, qword [rbp + 0x380]
mov rsi, qword [rbp + 0x388]
mov rdi, qword [rbp + 0x390]
movaps xmm6, xmmword [rbp + 0x340]
movaps xmm7, xmmword [rbp + 0x330]
movaps xmm8, xmmword [rbp + 0x320]
lea rsp, [rbp + 0x350]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400ad3d4
nop
call fcn.1400ad3d4
nop
test dl, 4
je 0x14004dc48
lea rbx, str.ios_base::badbit_set
jmp 0x14004dc5d
test dl, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rbp + 0x10]
call fcn.14003fde0
mov r8, rax
mov rdx, rbx
lea rcx, [rbp + 0x60]
call fcn.140040810
lea rdx, [0x14010bef0]
lea rcx, [rbp + 0x60]
call fcn.1400a059c
nop
call fcn.1400ad3d4
nop
call fcn.1400ad3d4
nop
call fcn.1400ad3d4
nop
call fcn.1400ad3d4
nop
call fcn.1400ad3d4
nop
call fcn.1400ad3d4
nop
call fcn.1400ad3d4
nop
call fcn.1400ad3d4
nop
mov ecx, 0x80070216
call fcn.14003ed90
nop
call fcn.1400ad3d4
int3