Function at 0x140074fe0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rdi, r9
mov r14, r8
mov rbx, rdx
mov rsi, rcx
cmp dword [rcx + 0x4824], 0xf
jg 0x14007501e
mov rcx, rsi
call fcn.1400755c0
cmp dword [rsi + 0x4824], 0xf
jg 0x14007501e
mov rcx, rsi
call fcn.1400755c0
mov edx, dword [rsi + 0x4820]
mov eax, edx
shr eax, 0x17
movzx eax, byte [r14 + rax]
cmp rax, 0xff
je 0x140075173
movzx ecx, byte [r14 + rax + 0x500]
mov r8d, dword [rsi + 0x4824]
sub r8d, ecx
jl 0x1400751df
shl edx, cl
mov dword [rsi + 0x4820], edx
mov dword [rsi + 0x4824], r8d
movzx ebp, byte [r14 + rax + 0x400]
cmp ebp, 0x10
jae 0x1400751df
mov r15d, dword [rsp + 0x98]
xorps xmm0, xmm0
movups xmmword [rbx + 0x70], xmm0
movups xmmword [rbx + 0x60], xmm0
movups xmmword [rbx + 0x50], xmm0
movups xmmword [rbx + 0x40], xmm0
movups xmmword [rbx + 0x30], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx], xmm0
xor r14d, r14d
test ebp, ebp
je 0x140075109
mov eax, dword [rsi + 0x4824]
cmp eax, ebp
jge 0x1400750bd
mov rcx, rsi
call fcn.1400755c0
mov eax, dword [rsi + 0x4824]
sub eax, ebp
jl 0x140075109
mov edx, dword [rsi + 0x4820]
mov r14d, edx
mov ecx, ebp
rol edx, cl
shr r14d, 0x1f
mov ecx, ebp
lea r8, [0x1401055b0]
mov r8d, dword [r8 + rcx*4]
mov r9d, r8d
not r9d
and r9d, edx
mov dword [rsi + 0x4820], r9d
and edx, r8d
mov dword [rsi + 0x4824], eax
lea rax, [0x140105600]
dec r14d
and r14d, dword [rax + rcx*4]
add r14d, edx
movsxd rax, r15d
lea rax, [rax + rax*2]
shl rax, 5
mov ecx, dword [rsi + rax + 0x46b8]
mov edx, ecx
xor edx, r14d
js 0x140075248
mov edx, 0x80000000
sub edx, r14d
xor r8d, r8d
cmp edx, ecx
setg r8b
mov edx, r14d
xor edx, 0x7fffffff
xor r9d, r9d
cmp edx, ecx
setl r9b
test ecx, r14d
cmovs r9d, r8d
cmp r9b, 1
jne 0x140075248
cmp byte [0x1401866c2], 0
je 0x14007550d
lea r8, [0x1401866b8]
jmp 0x14007521b
mov eax, edx
shr eax, 0x10
xor r8d, r8d
nop dword [rax + rax]
mov rcx, r8
inc r8
cmp eax, dword [r14 + rcx*4 + 0x62c]
jae 0x140075180
mov r9d, dword [rsi + 0x4824]
cmp r8d, 8
jne 0x1400751aa
add r9d, 0xfffffff0
mov dword [rsi + 0x4824], r9d
jmp 0x1400751df
lea rax, [r8 + 9]
cmp r9d, eax
jl 0x1400751df
mov cl, reloc.WS2_32.dll_socket
sub cl, r8b
mov r10d, edx
shr r10d, cl
lea rcx, [0x1401055b0]
and r10d, dword [rcx + r8*4 + 0x24]
add r10d, dword [r14 + r8*4 + 0x670]
cmp r10d, 0xff
jbe 0x140075296
cmp byte [0x1401866b1], 0
je 0x1400751f1
lea r8, [0x1401866a0]
jmp 0x14007521b
movaps xmm0, xmmword [0x140107660]
movaps xmmword [0x1401866a0], xmm0
lea r8, [0x1401866a0]
lea r9, [0x1401866b1]
lea rax, [0x1401866b0]
mov byte [rax], 0
mov byte [r9], 1
mov eax, dword [0x14019f7f0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov qword [rax + 8], r8
xor eax, eax
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, qword [rsp + 0xa0]
add rax, rsi
add rax, 0x46b8
add ecx, r14d
mov r14, rdx
mov dword [rax], ecx
movzx r8d, word [rdx]
test r8w, r8w
je 0x1400752c9
test ecx, ecx
js 0x1400752b6
mov ax, 0x7fff
xor edx, edx
div r8w
movzx eax, ax
cmp ecx, eax
jbe 0x1400752c9
cmp byte [0x1401866d9], 0
je 0x14007553f
lea r8, [0x1401866c3]
jmp 0x14007521b
sub r9d, r8d
mov ecx, eax
shl edx, cl
add r9d, 0xfffffff7
mov dword [rsi + 0x4824], r9d
mov dword [rsi + 0x4820], edx
mov eax, r10d
jmp 0x140075062
mov ax, 0x8000
xor edx, edx
div r8w
movzx eax, ax
neg eax
cmp ecx, eax
jl 0x140075280
mov r12, qword [rsp + 0x90]
imul r8d, ecx
mov word [rbx], r8w
mov r13d, 1
lea rbp, [0x140105550]
jmp 0x140075310
inc r13d
mov r14, qword [rsp + 0xa0]
imul ax, word [r14 + r15*2]
mov word [rbx + r15*2], ax
cmp r13d, 0x40
jge 0x140075503
cmp dword [rsi + 0x4824], 0xf
jg 0x140075321
mov rcx, rsi
call fcn.1400755c0
mov edx, dword [rsi + 0x4820]
mov eax, edx
shr eax, 0x17
movzx r8d, word [r12 + rax*2]
test r8d, r8d
je 0x140075390
mov ecx, r8d
and ecx, 0xf
mov eax, dword [rsi + 0x4824]
sub eax, ecx
jl 0x1400751df
movsx r9d, r8w
shr r8d, 4
and r8d, 0xf
movsxd r10, r13d
add r10, r8
shl edx, cl
mov dword [rsi + 0x4820], edx
mov dword [rsi + 0x4824], eax
lea r13d, [r10 + 1]
movzx eax, byte [rbp + r10]
shr r9d, 8
imul r9w, word [r14 + rax*2]
mov word [rbx + rax*2], r9w
jmp 0x140075306
cmp dword [rsi + 0x4824], 0xf
jg 0x1400753ac
mov rcx, rsi
call fcn.1400755c0
mov edx, dword [rsi + 0x4820]
mov eax, edx
shr eax, 0x17
movzx eax, byte [rdi + rax]
cmp rax, 0xff
je 0x1400753e4
movzx ecx, byte [rdi + rax + 0x500]
mov r8d, dword [rsi + 0x4824]
sub r8d, ecx
jl 0x1400751df
shl edx, cl
mov dword [rsi + 0x4820], edx
mov dword [rsi + 0x4824], r8d
jmp 0x140075464
mov eax, edx
shr eax, 0x10
xor r9d, r9d
nop dword [rax]
mov rcx, r9
inc r9
cmp eax, dword [rdi + rcx*4 + 0x62c]
jae 0x1400753f0
mov r8d, dword [rsi + 0x4824]
cmp r9d, 8
je 0x1400755af
lea rax, [r9 + 9]
cmp r8d, eax
jl 0x1400751df
mov cl, reloc.WS2_32.dll_socket
sub cl, r9b
mov r10d, edx
shr r10d, cl
lea rcx, [0x1401055b0]
and r10d, dword [rcx + r9*4 + 0x24]
add r10d, dword [rdi + r9*4 + 0x670]
cmp r10d, 0xff
ja 0x1400751df
sub r8d, r9d
mov ecx, eax
shl edx, cl
add r8d, 0xfffffff7
mov dword [rsi + 0x4824], r8d
mov dword [rsi + 0x4820], edx
mov eax, r10d
movzx eax, byte [rdi + rax + 0x400]
mov r14d, eax
and r14d, 0xf
je 0x1400754eb
shr eax, 4
movsxd r13, r13d
add r13, rax
movzx r15d, byte [rbp + r13]
cmp r8d, r14d
jge 0x140075498
mov rcx, rsi
call fcn.1400755c0
mov r8d, dword [rsi + 0x4824]
xor eax, eax
sub r8d, r14d
jl 0x1400752f0
mov edx, dword [rsi + 0x4820]
mov eax, edx
mov ecx, r14d
rol edx, cl
shr eax, 0x1f
lea rcx, [0x1401055b0]
mov ecx, dword [rcx + r14*4]
mov r9d, ecx
not r9d
and r9d, edx
mov dword [rsi + 0x4820], r9d
and edx, ecx
mov dword [rsi + 0x4824], r8d
dec eax
lea rcx, [0x140105600]
and eax, dword [rcx + r14*4]
add eax, edx
jmp 0x1400752f0
cmp eax, 0xf0
jne 0x140075503
add r13d, 0x10
mov r14, qword [rsp + 0xa0]
jmp 0x140075306
mov eax, 1
jmp 0x140075237
movabs rax, 0x746c656420646162
mov qword [0x1401866b8], rax
lea r8, [0x1401866b8]
mov byte [0x1401866c0], 0x61
lea r9, [0x1401866c2]
lea rax, [0x1401866c1]
jmp 0x140075214
xor ecx, ecx
movabs r10, 0xcccccccccccccccd
lea r11, [0x1401059a0]
lea r8, [0x1401866c3]
lea r9, [0x1401866d9]
mov rax, rcx
mul r10
shr rdx, 2
and rdx, 0xfffffffffffffffc
lea rax, [rdx + rdx*4]
lea rdx, [r11 + rcx]
sub rdx, rax
movzx eax, byte [rdx + 0x1516]
movzx edx, byte [rdx + 0x1517]
xor al, byte [rcx + r11 + 0x152a]
xor dl, byte [rcx + r11 + 0x152b]
mov byte [rcx + r8], al
mov byte [rcx + r8 + 1], dl
add rcx, 2
cmp rcx, 0x16
jne 0x140075560
jmp 0x140075217
add r8d, 0xfffffff0
mov dword [rsi + 0x4824], r8d
jmp 0x1400751df