Function at 0x140036d00
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r9
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rbx, rdx
mov r15, rcx
mov edx, r8d
lea rcx, [rbp - 0x28]
call fcn.1400a3b50
mov rdx, rbx
lea rcx, [rbp - 0x28]
call 0x1400a5410
test al, al
je 0x140037069
mov r8d, 0x35af512
add r8d, 0x5f1d5c2f
sub r8d, 0x62785121
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x28]
xor r13b, r13b
call fcn.1400a68e0
test al, al
je 0x140037069
xor ebx, ebx
cmp dword [rbp - 0x48], 0x32484346
jne 0x140036e40
cmp dword [rbp - 0x44], 0x20
jne 0x140036e40
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x3c]
cmp ecx, 0x40
jne 0x140036da9
cmp eax, ecx
je 0x140036e21
cmp ecx, 0x80
jne 0x140036dbd
cmp eax, ecx
je 0x140036e21
cmp ecx, 0x100
jne 0x140036dd1
cmp eax, ecx
je 0x140036e21
cmp ecx, 0x200
jne 0x140036de5
cmp eax, ecx
je 0x140036e21
cmp ecx, 0x400
jne 0x140036df9
cmp eax, ecx
je 0x140036e21
cmp ecx, 0x800
jne 0x140036e0d
cmp eax, ecx
je 0x140036e21
cmp ecx, 0x1000
jne 0x140037069
cmp eax, ecx
jne 0x140037069
mov edx, dword [rbp - 0x34]
test edx, edx
jle 0x140037069
mov r8d, dword [rbp - 0x38]
mov r13b, 0x1e
add r13b, 0xf
sub r13b, 0x2c
jmp 0x140036f16
xor edx, edx
lea rcx, [rbp - 0x28]
call fcn.1400a6b70
mov r8d, 0x255c073e
sub r8d, 0x2d4a9c1
sub r8d, 0x22875d6d
mov qword [rbp - 0x58], rbx
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x28]
call fcn.1400a68e0
test al, al
je 0x140037069
mov ecx, dword [rbp - 0x58]
mov eax, dword [rbp - 0x54]
cmp ecx, 0x40
jne 0x140036e8f
cmp eax, ecx
je 0x140036f07
cmp ecx, 0x80
jne 0x140036ea3
cmp eax, ecx
je 0x140036f07
cmp ecx, 0x100
jne 0x140036eb7
cmp eax, ecx
je 0x140036f07
cmp ecx, 0x200
jne 0x140036ecb
cmp eax, ecx
je 0x140036f07
cmp ecx, 0x400
jne 0x140036edf
cmp eax, ecx
je 0x140036f07
cmp ecx, 0x800
jne 0x140036ef3
cmp eax, ecx
je 0x140036f07
cmp ecx, 0x1000
jne 0x140037069
cmp eax, ecx
jne 0x140037069
mov edx, dword [rbp - 0x4c]
test edx, edx
jle 0x140037069
mov r8d, dword [rbp - 0x50]
xor eax, 0x2ed57f6f
xor ecx, 0x2ed57f6f
xor r8d, 0x2ed57f6f
xor edx, 0x2ed57f6f
mov r9d, 0x4ccc530f
add r9d, 0x21124ddc
sub r9d, 0x58d469e
xor r9d, 0x685158a5
mov esi, 0x3e60dd0
xor esi, 0xc7fe30a
sub esi, 0x83394fa
sub esi, 0x76559e1
add r9, r15
mov r10, r15
mov qword [rbp - 0x58], r9
mov dword [r9], ecx
mov dword [r9 + 4], eax
mov eax, 0x77dae3f3
xor eax, 0x105a5fe8
sub eax, 0x1a4b0b86
xor eax, 0x4d35b06a
mov dword [r15 + 0x2f4], r8d
mov dword [r15 + 0x30c], edx
mov r14d, dword [r15 + 0x2d8]
and r14d, 0x2000
mov dword [rbp - 0x60], r14d
cmovne esi, eax
mov r12d, esi
shl r12, 4
cmp qword [r15 + 0x300], rbx
jne 0x140037007
mov edx, 0x53f483a6
xor edx, 0x6ef4fb78
xor edx, 0x5772171b
sub edx, 0x6a726fb5
mov rcx, r12
call fcn.1400bbff0
mov rcx, rax
mov edx, esi
nop dword [rax + rax]
movaps xmm0, xmmword [0x1404e1530]
movups xmmword [rcx], xmm0
lea rcx, [rcx + 0x10]
sub rdx, 1
jne 0x140036fe8
mov qword [r15 + 0x300], rax
mov edx, 0x1c321ff6
add edx, 0x473f0133
xor edx, 0x63712139
mov rcx, r12
call fcn.1400bbff0
mov rdi, rax
test rax, rax
je 0x140037069
test r13b, r13b
je 0x1400371cb
movsxd rcx, dword [rbp - 0x30]
call fcn.1400bbf80
mov r8d, dword [rbp - 0x30]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov r14, rax
call fcn.1400a68e0
test al, al
jne 0x140037098
mov rcx, rdi
call fcn.1400bbfa0
mov rcx, r14
call fcn.1400bbf90
xor bl, bl
lea rcx, [rbp - 0x28]
call fcn.1400a3c00
lea r11, [rsp + 0x80]
movzx eax, bl
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
cmp dword [rbp - 0x60], ebx
pushf
mov eax, 0x353563a1
sub eax, 0x331fa02c
xor eax, 0x215cc85
popf
mov r8d, dword [rbp - 0x30]
pushf
mov r9d, 0x70da1a71
sub r9d, 0x2d4ec3b1
sub r9d, 0x437b56d0
popf
cmovne r9d, eax
mov rdx, rdi
mov rcx, r14
call fcn.1400a97c0
movsxd rcx, eax
cmp rcx, r12
jne 0x140037059
mov rcx, r14
call fcn.1400bbf90
nop dword [rax]
movups xmm0, xmmword [rbx + rdi]
lea rbx, [rbx + 0x10]
mov rax, qword [r15 + 0x300]
xorps xmm0, xmmword [0x1404e1530]
movups xmmword [rbx + rax - 0x10], xmm0
sub rsi, 1
jne 0x1400370f4
mov rcx, rdi
call fcn.1400bbfa0
mov rax, qword [rbp - 0x58]
nop
movabs rcx, 0xffffffff2da6f000
add rcx, 0xfa4a9ff
add rcx, 0x7fffffff
add rcx, 0x42b46601
mov esi, dword [r15 + 0x2ec]
xor esi, 0x2ed57f6f
mov eax, dword [rax]
xor eax, 0x2ed57f6f
imul esi, eax
mov eax, 0x669e0ef7
xor eax, 0x46517031
add eax, 0x3c97ff0e
xor eax, 0x5d677dd0
movsxd r14, esi
mul r14
cmovo rax, rcx
mov rcx, rax
call fcn.1400bbf80
mov rbx, rax
test rax, rax
je 0x140037069
test r13b, r13b
je 0x140037264
movsxd rcx, dword [rbp - 0x2c]
call fcn.1400bbf80
mov r8d, dword [rbp - 0x2c]
lea rcx, [rbp - 0x28]
mov rdx, rax
mov rdi, rax
call fcn.1400a68e0
mov rcx, rdi
test al, al
jne 0x14003721d
call fcn.1400bbf90
mov rcx, rbx
jmp 0x140037064
mov eax, 0x6381bb28
xor eax, 0x740340a8
sub eax, 0x1782eb90
lea rcx, [rbp - 0x28]
mov r8d, 0x18298c16
xor r8d, 0x23ee7c58
sub r8d, 0x34d1fdd
xor r8d, 0x38752f81
test r14d, r14d
mov rdx, rdi
cmovne r8d, eax
call fcn.1400a68e0
test al, al
jne 0x1400370f4
mov rcx, rdi
call fcn.1400bbfa0
jmp 0x140037069
mov r8d, dword [rbp - 0x2c]
lea r9d, [rsi*4]
mov rdx, rbx
call fcn.1400a97c0
movsxd rcx, eax
lea rax, [r14*4]
cmp rcx, rax
mov rcx, rdi
jne 0x1400371be
call fcn.1400bbf90
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x3c
add bl, 0x1d
add bl, 2
sub bl, 0x5a
jmp 0x14003706b
lea r8d, [rsi*4]
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.1400a68e0
test al, al
je 0x1400371c3
mov rax, qword [rbp + 0x48]
mov qword [rax], rbx
mov bl, 0x11
add bl, 0x1f
add bl, 0x32
xor bl, 0x63
jmp 0x14003706b