Function at 0x14004b300
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 [0x1401b06f8]
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.140049770
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], rax
lea r8, [0x1401cdbc0]
lea rdx, [rsp + 0x70]
mov rcx, r15
call fcn.140048d30
nop
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x78]
call fcn.14004a190
nop
mov r9d, r12d
mov r10, qword [rbp - 8]
mov r8, qword [rbp - 0x10]
cmp r8, r10
je 0x14004b3cd
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 0x14004b3a0
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.140049e30
nop
mov rbx, qword [rbp + 8]
cmp rbx, qword [rbp + 0x10]
jne 0x14004b5c3
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 0x14004b415
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.140016340
nop
test rbx, rbx
je 0x14004b48a
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 0x14004b481
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c119
mov rcx, rbx
call fcn.140129630
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x14004b4d0
mov rdx, qword [rbp - 0x50]
sub rdx, rcx
cmp rdx, 0x1000
mov rax, rcx
jb 0x14004b4bf
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c19c
call fcn.140129630
xorps xmm0, xmm0
mov qword [rbp - 0x60], r12
movdqu xmmword [rbp - 0x58], xmm0
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x14004b516
mov rdx, qword [rbp - 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b505
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c19c
call fcn.140129630
xorps xmm0, xmm0
mov qword [rbp - 0x78], r12
movdqu xmmword [rbp - 0x70], xmm0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14004b55f
mov rdx, qword [rbp - 0x80]
sub rdx, rcx
cmp rdx, 0x1000
mov rax, rcx
jb 0x14004b54c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c1e6
call fcn.140129630
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], r12
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x14004b599
mov rdx, qword [rbp]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b594
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c23d
call fcn.140129630
mov rax, rdi
mov rcx, qword [rbp + 0x38]
xor rcx, rsp
call fcn.1401292a0
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.14004a340
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 0x14004ba46
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.140077ea0
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 0x14004ba08
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 0x14004b70d
movabs rax, 0x3fffffffffffffff
cmp rbx, rax
ja 0x14004c244
mov rdx, rbx
call fcn.14000cb70
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 0x14004b711
mov rax, qword [rbp - 0x40]
sub rax, qword [rbp - 0x48]
sar rax, 2
cmp rax, 4
jne 0x14004bb50
xor r9d, r9d
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x48]
call fcn.140049b20
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 0x14004b780
or ecx, edx
jmp 0x14004b784
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 0x14004b7b7
or ecx, edx
jmp 0x14004b7bb
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 0x14004b7ee
or eax, edx
jmp 0x14004b7f2
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 0x14004b825
or ecx, edx
jmp 0x14004b829
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 0x14004b85d
or ecx, edx
jmp 0x14004b861
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 0x14004b895
or ecx, edx
jmp 0x14004b899
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 0x14004b8cd
or ecx, edx
jmp 0x14004b8d1
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 0x14004b908
or ecx, eax
jmp 0x14004b90c
not eax
and ecx, eax
mov dword [r10], ecx
add r8, 2
add r9, 8
lea rax, [r8 - 8]
cmp rax, 4
jb 0x14004b750
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 0x14004b954
mov byte [rdx], cl
mov rdx, qword [rsp + 0x60]
inc rdx
mov qword [rsp + 0x60], rdx
jmp 0x14004b968
lea r8, [rsp + 0x20]
lea rcx, [rsp + 0x58]
call fcn.1400751e0
mov rdx, qword [rsp + 0x60]
mov byte [rsp + 0x20], bl
cmp rdx, qword [rsp + 0x68]
je 0x14004b97c
mov byte [rdx], bl
inc qword [rsp + 0x60]
jmp 0x14004b98c
lea r8, [rsp + 0x20]
lea rcx, [rsp + 0x58]
call fcn.1400751e0
nop
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14004b9d2
mov rax, qword [rbp - 0x38]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b9cd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004bbd5
call fcn.140129630
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 0x14004b690
mov ebx, dword [rsp + 0x24]
lea rcx, [rbp + 0x20]
call fcn.140079630
inc ebx
mov dword [rsp + 0x24], ebx
movsxd rax, ebx
xor r12d, r12d
cmp rax, qword [rsp + 0x30]
jb 0x14004b640
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 0x14004ba6c
cmp r9, r8
je 0x14004bdf0
dec r8
mov qword [rsp + 0x60], r8
inc rax
cmp rax, rcx
jb 0x14004ba53
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x30]
mov rcx, r15
call fcn.140049000
nop
mov rdx, qword [rbp - 0x20]
test rdx, rdx
jne 0x14004bee5
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 0x14004bab0
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.140016340
nop
lea rcx, [rbp - 0x30]
call fcn.14000d220
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14004bb1d
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004bb09
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c09c
call fcn.140129630
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
test r14, r14
je 0x14004b48a
mov rbx, r14
cmp r14, r13
je 0x14004be95
mov rcx, rbx
call fcn.140079630
add rbx, 0x18
cmp rbx, r13
jne 0x14004bb32
jmp 0x14004be95
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 0x14004bb80
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.140016340
nop
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x14004bbf2
mov rax, qword [rbp - 0x38]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004bbdc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004bbdc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x48], xmm0
xor r15d, r15d
mov qword [rbp - 0x38], r15
jmp 0x14004bbf5
xor r15d, r15d
lea rcx, [rbp + 0x20]
call fcn.140079630
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14004bc4d
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004bc39
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004bc39
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
test r14, r14
je 0x14004bccc
mov rbx, r14
cmp r14, r13
je 0x14004bc71
nop word [rax + rax]
mov rcx, rbx
call fcn.140079630
add rbx, 0x18
cmp rbx, r13
jne 0x14004bc60
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 0x14004bcc3
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004bcc3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.140129630
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x14004bd0e
mov rdx, qword [rbp - 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004bcfd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004bd3f
call fcn.140129630
mov qword [rbp - 0x60], r15
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x58], xmm0
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x14004bd57
mov rdx, qword [rbp - 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004bd46
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004bd46
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
mov qword [rbp - 0x78], r15
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14004bda3
mov rdx, qword [rbp - 0x80]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004bd90
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004bd90
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r15
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x14004b599
mov rdx, qword [rbp]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b594
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004b594
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 0x14004be10
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.140016340
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14004be73
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004be5f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c09c
call fcn.140129630
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
test r14, r14
je 0x14004b48a
mov rbx, r14
cmp r14, r13
je 0x14004be95
mov rcx, rbx
call fcn.140079630
add rbx, 0x18
cmp rbx, r13
jne 0x14004be84
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 0x14004bedd
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c119
mov rcx, r14
jmp 0x14004b484
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 0x14004bfd8
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 0x14004bf40
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.140016340
nop
lea rcx, [rbp - 0x30]
call fcn.14000d220
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14004bfad
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004bf99
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c09c
call fcn.140129630
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
test r14, r14
je 0x14004b48a
mov rbx, r14
cmp r14, r13
je 0x14004be95
mov rcx, rbx
call fcn.140079630
add rbx, 0x18
cmp rbx, r13
jne 0x14004bfc2
jmp 0x14004be95
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 0x14004c040
nop
lea rax, [rbp - 0x30]
test cl, 1
jne 0x14004c029
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
xor byte [rax + rcx], r9b
jmp 0x14004c037
cmp qword [rbp - 0x18], 0x10
cmovae rax, qword [rbp - 0x30]
xor byte [rax + rcx], r10b
inc rcx
cmp rcx, qword [rbp - 0x20]
jb 0x14004c010
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.14000d220
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14004c0b7
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004c0a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004c0a3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
test r14, r14
je 0x14004c129
mov rbx, r14
cmp r14, r13
je 0x14004c0d5
mov rcx, rbx
call fcn.140079630
add rbx, 0x18
cmp rbx, r13
jne 0x14004c0c4
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 0x14004c120
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004c120
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r14
call fcn.140129630
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x14004c16b
mov rdx, qword [rbp - 0x50]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004c15a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004c19c
call fcn.140129630
mov qword [rbp - 0x60], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x58], xmm0
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x14004c1b4
mov rdx, qword [rbp - 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004c1a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004c1a3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
mov qword [rbp - 0x78], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14004c200
mov rdx, qword [rbp - 0x80]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004c1ed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004c1ed
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], r12
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x14004b599
mov rdx, qword [rbp]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b594
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004b594
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.14000caf0
int3