Function at 0x140048654
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
nop
sub rsp, 0x20e7469c
add rsp, 0x20e7467c
xor edi, edi
lea rsi, [rcx + 0x280]
mov rbx, rcx
cmp qword [rsi], rdi
jbe 0x14003d874
cmp qword [rbx + 0x78], 0x78
jbe 0x14003d852
mov rcx, qword [rbx]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rbx]
call fcn.1400b9840
jmp 0x14003d863
cmp qword [rbx + 0x78], 0
jbe 0x14003d863
mov rax, qword [rbx]
xor edx, edx
mov rcx, rbx
call qword [rax]
and qword [rbx + 0x78], 0
inc rdi
sub rbx, 0xffffffffffffff80
cmp rdi, qword [rsi]
jb 0x14003d837
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
neg rsp
add rsp, 0xffffffffffffffe0
neg rsp
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
neg rsp
sub rsp, 0xffffffffffffffa0
neg rsp
mov rbx, rcx
xor r15d, r15d
mov rcx, qword [rcx + 0x588]
mov r12d, 0x50bcf688
add r12d, 0x17149c13
add r12d, 0xee720d5
sub r12d, 0x76b8b36f
test rcx, rcx
je 0x1400486c3
dec dword [rcx + 8]
cmp dword [rcx + 8], r15d
jg 0x1400486bc
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov qword [rbx + 0x588], r15
mov r8, qword [rbx + 0x520]
movabs r13, 0x7839482a774388da
sub r13, 0x2b4cafaa
sub r13, 0x2ff87d53
cmp r8, r13
je 0x140048790
cmp byte [rbx + 0x528], r15b
jne 0x140048790
mov rax, qword [0x14012f290]
movabs rdx, 0xda4818d453a792c4
sub rdx, 0x217ef935
add rdx, 0x4dc3cdf0
add rdx, 0x1fc3c1c
mov rcx, qword [rbx + 0x530]
xor r8, r13
ror rax, 8
xor rcx, r13
add rax, rdx
movabs rdx, 0x65a4ea494d055edd
sub rdx, 0x351add0a
add rdx, 0xd039ea3
add rdx, 0x7fffffff
xor rdx, 0x7490005b
xor rax, rdx
movabs rdx, 0x43b1816b6e59949c
sub rdx, 0x46e96eae
sub rdx, 0xf71cf89
xor rdx, 0x4b468a93
add rax, rdx
mov edx, 0x565c20a7
sub edx, 0x3520e9e1
add edx, 0xdec4c936
call rax
mov rax, qword gs:[0x30]
mov rdi, qword [rax + 0x48]
mov eax, r12d
lock xadd dword [rbx + 0x6b0], eax
add eax, r12d
je 0x1400487cf
cmp rdi, qword [rbx + 0x6a0]
je 0x1400487fd
mov rcx, qword [rbx + 0x6a8]
xor r8d, r8d
xor edx, edx
call fcn.1400a1c40
mov qword [rbx + 0x6a0], rdi
mov dword [rbx + 0x6b4], r12d
mov rax, qword [rbx + 0x5c0]
mov rdi, qword [rbx + 0x5b8]
test rax, rax
je 0x14004882c
lea rsi, [rdi + rax*8]
jmp 0x140048823
add dword [rbx + 0x6b4], r12d
jmp 0x1400487dd
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.140049d48
nop
add rdi, 0x6cd39680
sub rdi, 0x6cd39678
cmp rdi, rsi
jne 0x140048809
mov rax, qword [rbx + 0x5a0]
mov rdi, qword [rbx + 0x598]
test rax, rax
je 0x140048878
lea rsi, [rdi + rax*8]
jmp 0x14004886f
mov rcx, qword [rdi]
test rcx, rcx
je 0x140048860
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
nop
sub rdi, 0x1a1a6188
add rdi, 0x1a1a6190
cmp rdi, rsi
jne 0x14004884c
mov rax, qword [rbx + 0x660]
mov rdi, qword [rbx + 0x658]
test rax, rax
je 0x1400488c4
lea rsi, [rdi + rax*8]
jmp 0x1400488bb
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400488ac
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
nop
sub rdi, 0x60253fd4
add rdi, 0x60253fdc
cmp rdi, rsi
jne 0x140048898
mov esi, 0x7aa2df00
sub esi, 0x798ed48
sub esi, 0x7309f188
cmp dword [rbx + 0x518], r12d
jne 0x140048a68
cmp qword [rbx + 0x578], r15
je 0x140048a68
mov rbp, qword [rbx + 0x578]
lea rax, [rsp + 0x28]
mov r14, qword [rbx + 0x538]
lea rcx, [rsp + 0x20]
mov rsi, qword [rbx + 0x540]
xorps xmm0, xmm0
xor r14, r13
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 1]
movups xmmword [rsp + 0x28], xmm0
movups xmmword [rsp + 0x38], xmm0
movups xmmword [rsp + 0x48], xmm0
call fcn.14001739c
mov edx, 0x7061df83
xor edx, 0x3d9795fb
xor edx, 0x49a2466b
xor edx, 0x35670a21
test rbp, rbp
je 0x140048993
mov rdi, rax
sub rsi, rax
mov r8, rbp
movzx ecx, dx
mov r9d, 0x3359fdf2
sub r9d, 0xef2ef3c
add r9d, 0x31354775
xor r9d, 0x559c56d4
and cx, r9w
ror edx, 8
xor cx, word [rsi + rdi]
mov word [rdi], cx
lea rdi, [rdi + 2]
sub r8, r12
jne 0x14004895a
mov word [rax + rbp*2], r15w
movabs rcx, 0x340b957e278630ff
add rcx, 0x166bded1
xor rcx, 0x14160c24
add rcx, qword [0x14012f028]
movabs rax, 0x2a9dcb4f4faae28f
xor rax, 0x442a5fc7
xor rax, 0x1cd5739b
add rax, 0x7fffffff
add rax, 0x46bedc1c
rol rcx, 0x3b
mov rdx, r14
xor rcx, rax
movabs rax, 0x1918f8fd5262f093
add rax, 0x1ca99e84
sub rax, 0x1e5f9c30
sub rcx, rax
movabs rax, 0xe063624e4fc5660f
sub rax, 0x1a871f7b
xor rax, 0x1e34b277
add rax, 0x7fffffff
xor rax, 0x6c1b3d9b
ror rcx, 6
add rax, rcx
mov rcx, qword [rsp + 0x20]
call rax
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x140048a52
xor eax, eax
lea rdi, [rsp + 0x28]
lea esi, [rax + 0x30]
mov ecx, esi
rep stosb byte [rdi], al
jmp 0x140048a68
call fcn.1400b9840
mov esi, 0x48dbae84
sub esi, 0x38d773dc
sub esi, 0x10043a78
mov rcx, qword [rbx + 0x768]
cmp rcx, r13
je 0x140048a80
xor rcx, r13
call fcn.1400b3120
mov rcx, qword [rbx + 0x760]
cmp rcx, r13
je 0x140048a98
xor rcx, r13
call fcn.1400b3120
mov rcx, qword [rbx + 0x510]
test rcx, rcx
je 0x140048ab0
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov rdi, qword [rbx + 0x738]
test rdi, rdi
je 0x140048ad3
mov rcx, rdi
call fcn.14003d690
mov rdx, r12
mov rcx, rdi
call fcn.1400b96f0
sub dword [rbx + 0x6b4], r12d
jne 0x140048b10
mov qword [rbx + 0x6a0], r15
or eax, 0xffffffff
lock xadd dword [rbx + 0x6b0], eax
dec eax
cmp eax, 0xffffffff
je 0x140048b17
mov rcx, qword [rbx + 0x6a8]
xor edx, edx
call fcn.1400a1be0
jmp 0x140048b17
lock dec dword [rbx + 0x6b0]
mov rcx, qword [rbx + 0x740]
test rcx, rcx
je 0x140048b33
call fcn.1400b9840
mov qword [rbx + 0x740], r15
lea rdi, [rbx + 0x6b8]
cmp qword [rdi + 0x78], 0x78
jbe 0x140048b5c
mov rcx, qword [rdi]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rdi]
call fcn.1400b9840
jmp 0x140048b70
cmp qword [rdi + 0x78], r15
jbe 0x140048b70
mov rax, qword [rdi]
xor edx, edx
mov rcx, rdi
call qword [rax]
mov qword [rdi + 0x78], r15
mov rcx, qword [rbx + 0x6a8]
call fcn.1400a19e0
mov rcx, qword [rbx + 0x658]
test rcx, rcx
je 0x140048b9c
call fcn.1400b9840
mov qword [rbx + 0x658], r15
mov rcx, qword [rbx + 0x618]
lea rdi, [rbx + 0x620]
cmp rcx, rdi
jne 0x140048bbf
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x140048bc4
call fcn.1400b9840
mov rcx, qword [rbx + 0x5d8]
lea rdi, [rbx + 0x5e0]
cmp rcx, rdi
jne 0x140048be7
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x140048bec
call fcn.1400b9840
mov rcx, qword [rbx + 0x5b8]
test rcx, rcx
je 0x140048c08
call fcn.1400b9840
mov qword [rbx + 0x5b8], r15
mov rcx, qword [rbx + 0x598]
test rcx, rcx
je 0x140048c24
call fcn.1400b9840
mov qword [rbx + 0x598], r15
mov rcx, qword [rbx + 0x540]
lea rdi, [rbx + 0x548]
cmp rcx, rdi
jne 0x140048c47
xor eax, eax
mov rcx, rsi
rep stosb byte [rdi], al
jmp 0x140048c4c
call fcn.1400b9840
lea rcx, [rbx + 0x288]
call fcn.140049f6c
mov rcx, rbx
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
jmp 0x14003d80c