Function at 0x14000f7c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [0x1401b66f8]
xor rax, rsp
mov qword [rbp + 0x38], rax
mov rdi, rdx
mov qword [rsp + 0x28], rdx
mov r15, rcx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x30], rdx
xor r12d, r12d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp], rax
lea rdx, [rbp - 0x10]
call fcn.14000dc30
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], rax
lea r8, [0x1401bb9f0]
lea rdx, [rsp + 0x70]
mov rcx, r15
call fcn.14000d1f0
nop
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x78]
call fcn.14000e650
nop
mov r9d, r12d
mov r10, qword [rbp - 8]
mov r8, qword [rbp - 0x10]
cmp r8, r10
je 0x14000f88d
nop dword [rax + rax]
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
sub rax, rdx
dec rax
mov rcx, r12
cmp r9, rax
cmovne rcx, r9
movzx eax, byte [rdx + rcx]
xor byte [r8], al
lea r9, [rcx + 1]
inc r8
cmp r8, r10
jne 0x14000f860
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], rax
lea r8, [rbp - 0x10]
lea rdx, [rbp + 8]
call fcn.14000e2f0
nop
mov rbx, qword [rbp + 8]
cmp rbx, qword [rbp + 0x10]
jne 0x14000fa83
mov byte [rsp + 0x20], 0
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], r12
lea rax, [rsp + 0x20]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14000f8d5
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.14001fd20
nop
test rbx, rbx
je 0x14000f94a
mov rcx, qword [rbp + 0x18]
sub rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, rbx
cmp rdx, 0x1000
jb 0x14000f941
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400105d9
mov rcx, rbx
call fcn.14012e950
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x14000f990
mov rdx, qword [rbp - 0x50]
sub rdx, rcx
cmp rdx, 0x1000
mov rax, rcx
jb 0x14000f97f
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001065c
call fcn.14012e950
xorps xmm0, xmm0
mov qword [rbp - 0x60], r12
movdqu xmmword [rbp - 0x58], xmm0
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x14000f9d6
mov rdx, qword [rbp - 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000f9c5
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001065c
call fcn.14012e950
xorps xmm0, xmm0
mov qword [rbp - 0x78], r12
movdqu xmmword [rbp - 0x70], xmm0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14000fa1f
mov rdx, qword [rbp - 0x80]
sub rdx, rcx
cmp rdx, 0x1000
mov rax, rcx
jb 0x14000fa0c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400106a6
call fcn.14012e950
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], r12
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x14000fa59
mov rdx, qword [rbp]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000fa54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400106fd
call fcn.14012e950
mov rax, rdi
mov rcx, qword [rbp + 0x38]
xor rcx, rsp
call fcn.14012e5c0
mov rbx, qword [rsp + 0x198]
add rsp, 0x140
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xor r9d, r9d
lea r8, [rbp - 0x60]
lea rdx, [rbp + 8]
call fcn.14000e800
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov r9, r12
mov qword [rsp + 0x58], r12
mov r8, r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
mov ebx, r12d
mov dword [rsp + 0x24], ebx
mov r13, qword [rbp + 0x10]
mov rcx, r13
mov r14, qword [rbp + 8]
sub rcx, r14
movabs rsi, 0x2aaaaaaaaaaaaaab
mov rax, rsi
imul rcx
mov rcx, rdx
sar rcx, 2
mov rax, rcx
shr rax, 0x3f
add rcx, rax
mov qword [rsp + 0x30], rcx
je 0x14000ff06
mov rax, r12
mov rdi, rsi
nop word [rax + rax]
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], rcx
lea rax, [rax + rax*2]
lea rdx, [r14 + rax*8]
lea rcx, [rbp + 0x20]
call fcn.14001b500
nop
mov rcx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x20]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14000fec8
xor r15d, r15d
nop word [rax + rax]
xorps xmm0, xmm0
xor eax, eax
lea rsi, [r8 + r15]
movdqu xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], rax
mov rbx, qword [rsi + 8]
sub rbx, qword [rsi]
sar rbx, 2
test rbx, rbx
je 0x14000fbcd
movabs rax, 0x3fffffffffffffff
cmp rbx, rax
ja 0x140010704
mov rdx, rbx
call fcn.14000c3e0
mov rdi, rax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], rax
lea rax, [rax + rbx*4]
mov qword [rbp - 0x38], rax
mov rbx, qword [rsi + 8]
mov rdx, qword [rsi]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
sar rbx, 2
lea rax, [rdi + rbx*4]
mov qword [rbp - 0x40], rax
movabs rdi, 0x2aaaaaaaaaaaaaab
jmp 0x14000fbd1
mov rax, qword [rbp - 0x40]
sub rax, qword [rbp - 0x48]
sar rax, 2
cmp rax, 4
jne 0x140010010
xor r9d, r9d
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x48]
call fcn.14000dfe0
xor eax, eax
mov dword [rsp + 0x50], eax
xor r9d, r9d
mov r8d, 8
nop dword [rax]
nop word [rax + rax]
lea rcx, [r8 - 8]
mov rax, rcx
shr rax, 5
lea r10, [rsp + 0x50]
lea r10, [r10 + rax*4]
and cl, 0x1f
mov edx, 1
shl edx, cl
mov ecx, dword [r10]
mov rax, qword [rbp - 0x48]
test byte [rax + r9], 8
je 0x14000fc40
or ecx, edx
jmp 0x14000fc44
not edx
and ecx, edx
mov dword [r10], ecx
lea rcx, [r8 - 4]
mov rax, rcx
shr rax, 5
lea r10, [rsp + 0x50]
lea r10, [r10 + rax*4]
and cl, 0x1f
mov edx, 1
shl edx, cl
mov ecx, dword [r10]
mov rax, qword [rbp - 0x48]
test byte [rax + r9], 4
je 0x14000fc77
or ecx, edx
jmp 0x14000fc7b
not edx
and ecx, edx
mov dword [r10], ecx
mov rax, r8
shr rax, 5
lea r10, [rsp + 0x50]
lea r10, [r10 + rax*4]
movzx ecx, r8b
and cl, 0x1f
mov eax, 1
shl eax, cl
mov edx, dword [r10]
mov rcx, qword [rbp - 0x48]
test byte [rcx + r9], 2
je 0x14000fcae
or eax, edx
jmp 0x14000fcb2
not eax
and eax, edx
mov dword [r10], eax
lea rcx, [r8 + 4]
mov rax, rcx
shr rax, 5
lea r10, [rsp + 0x50]
lea r10, [r10 + rax*4]
and cl, 0x1f
mov edx, 1
shl edx, cl
mov ecx, dword [r10]
mov rax, qword [rbp - 0x48]
test byte [rax + r9], 1
je 0x14000fce5
or ecx, edx
jmp 0x14000fce9
not edx
and ecx, edx
mov dword [r10], ecx
lea rcx, [r8 - 7]
mov rax, rcx
shr rax, 5
lea r10, [rsp + 0x50]
lea r10, [r10 + rax*4]
and cl, 0x1f
mov edx, 1
shl edx, cl
mov ecx, dword [r10]
mov rax, qword [rbp - 0x48]
test byte [rax + r9 + 4], 8
je 0x14000fd1d
or ecx, edx
jmp 0x14000fd21
not edx
and ecx, edx
mov dword [r10], ecx
lea rcx, [r8 - 3]
mov rax, rcx
shr rax, 5
lea r10, [rsp + 0x50]
lea r10, [r10 + rax*4]
and cl, 0x1f
mov edx, 1
shl edx, cl
mov ecx, dword [r10]
mov rax, qword [rbp - 0x48]
test byte [rax + r9 + 4], 4
je 0x14000fd55
or ecx, edx
jmp 0x14000fd59
not edx
and ecx, edx
mov dword [r10], ecx
lea rcx, [r8 + 1]
mov rax, rcx
shr rax, 5
lea r10, [rsp + 0x50]
lea r10, [r10 + rax*4]
and cl, 0x1f
mov edx, 1
shl edx, cl
mov ecx, dword [r10]
mov rax, qword [rbp - 0x48]
test byte [rax + r9 + 4], 2
je 0x14000fd8d
or ecx, edx
jmp 0x14000fd91
not edx
and ecx, edx
mov dword [r10], ecx
mov rax, qword [rbp - 0x48]
movzx edx, byte [rax + r9 + 4]
lea rcx, [r8 + 5]
mov rax, rcx
shr rax, 5
lea r10, [rsp + 0x50]
lea r10, [r10 + rax*4]
and cl, 0x1f
mov eax, 1
shl eax, cl
mov ecx, dword [r10]
test dl, 1
je 0x14000fdc8
or ecx, eax
jmp 0x14000fdcc
not eax
and ecx, eax
mov dword [r10], ecx
add r8, 2
add r9, 8
lea rax, [r8 - 8]
cmp rax, 4
jb 0x14000fc10
mov eax, dword [rsp + 0x50]
movzx ecx, al
shr rax, 8
movzx ebx, al
mov byte [rsp + 0x20], cl
mov rdx, qword [rsp + 0x60]
cmp rdx, qword [rsp + 0x68]
je 0x14000fe14
mov byte [rdx], cl
mov rdx, qword [rsp + 0x60]
inc rdx
mov qword [rsp + 0x60], rdx
jmp 0x14000fe28
lea r8, [rsp + 0x20]
lea rcx, [rsp + 0x58]
call fcn.140025200
mov rdx, qword [rsp + 0x60]
mov byte [rsp + 0x20], bl
cmp rdx, qword [rsp + 0x68]
je 0x14000fe3c
mov byte [rdx], bl
inc qword [rsp + 0x60]
jmp 0x14000fe4c
lea r8, [rsp + 0x20]
lea rcx, [rsp + 0x58]
call fcn.140025200
nop
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14000fe92
mov rax, qword [rbp - 0x38]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000fe8d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140010095
call fcn.14012e950
inc r12d
add r15, 0x18
mov rcx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x20]
sub rcx, r8
mov rax, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r12d
cmp rax, rdx
jb 0x14000fb50
mov ebx, dword [rsp + 0x24]
lea rcx, [rbp + 0x20]
call fcn.14001d260
inc ebx
mov dword [rsp + 0x24], ebx
movsxd rax, ebx
xor r12d, r12d
cmp rax, qword [rsp + 0x30]
jb 0x14000fb00
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x28]
movabs rsi, 0x2aaaaaaaaaaaaaab
mov r15, qword [rsp + 0x40]
movzx ecx, byte [r8 - 1]
mov rax, r12
test rcx, rcx
je 0x14000ff2c
cmp r9, r8
je 0x1400102b0
dec r8
mov qword [rsp + 0x60], r8
inc rax
cmp rax, rcx
jb 0x14000ff13
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x30]
mov rcx, r15
call fcn.14000d4c0
nop
mov rdx, qword [rbp - 0x20]
test rdx, rdx
jne 0x1400103a5
mov byte [rsp + 0x20], dl
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], r12
lea rax, [rsp + 0x20]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14000ff70
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.14001fd20
nop
lea rcx, [rbp - 0x30]
call fcn.14000c460
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14000ffdd
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000ffc9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001055c
call fcn.14012e950
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
test r14, r14
je 0x14000f94a
mov rbx, r14
cmp r14, r13
je 0x140010355
mov rcx, rbx
call fcn.14001d260
add rbx, 0x18
cmp rbx, r13
jne 0x14000fff2
jmp 0x140010355
mov byte [rsp + 0x20], 0
xorps xmm0, xmm0
mov rdi, qword [rsp + 0x28]
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], 0
mov qword [rdi + 0x18], 0
lea rax, [rsp + 0x20]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140010040
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.14001fd20
nop
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x1400100b2
mov rax, qword [rbp - 0x38]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001009c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001009c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14012e950
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
xor r15d, r15d
mov qword [rbp - 0x38], r15
jmp 0x1400100b5
xor r15d, r15d
lea rcx, [rbp + 0x20]
call fcn.14001d260
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14001010d
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400100f9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400100f9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14012e950
mov qword [rsp + 0x58], r15
jl 0x140010126
pop rax
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
test r14, r14
je 0x14001018c
mov rbx, r14
cmp r14, r13
je 0x140010131
nop word [rax + rax]
mov rcx, rbx
call fcn.14001d260
add rbx, 0x18
cmp rbx, r13
jne 0x140010120
mov rcx, qword [rbp + 0x18]
sub rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r14
cmp rdx, 0x1000
jb 0x140010183
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010183
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.14012e950
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x1400101ce
mov rdx, qword [rbp - 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400101bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400101ff
call fcn.14012e950
mov qword [rbp - 0x60], r15
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x58], xmm0
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x140010217
mov rdx, qword [rbp - 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010206
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010206
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14012e950
mov qword [rbp - 0x78], r15
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140010263
mov rdx, qword [rbp - 0x80]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010250
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010250
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14012e950
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r15
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x14000fa59
mov rdx, qword [rbp]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000fa54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000fa54
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
nop word [rax + rax]
mov byte [rsp + 0x20], 0
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], r12
lea rax, [rsp + 0x20]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1400102d0
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.14001fd20
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140010333
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001031f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001055c
call fcn.14012e950
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
test r14, r14
je 0x14000f94a
mov rbx, r14
cmp r14, r13
je 0x140010355
mov rcx, rbx
call fcn.14001d260
add rbx, 0x18
cmp rbx, r13
jne 0x140010344
mov rcx, qword [rbp + 0x18]
sub rcx, r14
mov rax, rsi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r14
cmp rdx, 0x1000
jb 0x14001039d
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400105d9
mov rcx, r14
jmp 0x14000f944
lea rax, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
dec rdx
movzx r10d, byte [rdx + rax]
lea rax, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
mov qword [rbp - 0x20], rdx
mov byte [rax + rdx], 0
mov rdx, qword [rbp - 0x20]
test rdx, rdx
jne 0x140010498
mov byte [rsp + 0x20], dl
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], r12
lea rax, [rsp + 0x20]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140010400
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.14001fd20
nop
lea rcx, [rbp - 0x30]
call fcn.14000c460
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14001046d
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010459
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001055c
call fcn.14012e950
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
test r14, r14
je 0x14000f94a
mov rbx, r14
cmp r14, r13
je 0x140010355
mov rcx, rbx
call fcn.14001d260
add rbx, 0x18
cmp rbx, r13
jne 0x140010482
jmp 0x140010355
lea rax, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
dec rdx
movzx r9d, byte [rax + rdx]
lea rax, [rbp - 0x30]
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
mov qword [rbp - 0x20], rdx
mov byte [rax + rdx], 0
mov rcx, r12
cmp qword [rbp - 0x20], 0
jbe 0x140010500
nop
lea rax, [rbp - 0x30]
test cl, 1
jne 0x1400104e9
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
xor byte [rax + rcx], r9b
jmp 0x1400104f7
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
xor byte [rax + rcx], r10b
inc rcx
cmp rcx, qword [rbp - 0x20]
jb 0x1400104d0
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x20]
movups xmmword [rdi + 0x10], xmm1
mov qword [rbp - 0x20], r12
mov qword [rbp - 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x30], 0
lea rcx, [rbp - 0x30]
call fcn.14000c460
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140010577
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010563
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010563
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14012e950
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
test r14, r14
je 0x1400105e9
mov rbx, r14
cmp r14, r13
je 0x140010595
mov rcx, rbx
call fcn.14001d260
add rbx, 0x18
cmp rbx, r13
jne 0x140010584
mov rcx, qword [rbp + 0x18]
sub rcx, r14
mov rax, rsi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, r14
cmp rdx, 0x1000
jb 0x1400105e0
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400105e0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.14012e950
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x14001062b
mov rdx, qword [rbp - 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001061a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001065c
call fcn.14012e950
mov qword [rbp - 0x60], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x58], xmm0
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x140010674
mov rdx, qword [rbp - 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010663
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010663
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14012e950
mov qword [rbp - 0x78], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x1400106c0
mov rdx, qword [rbp - 0x80]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400106ad
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400106ad
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14012e950
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], r12
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x14000fa59
mov rdx, qword [rbp]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000fa54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000fa54
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.14000c360
int3