Function at 0x140073cd0
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push rbp
push rbx
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
mov rax, qword [0x1400ada20]
xor rax, rsp
mov qword [rbp - 0x19], rax
movzx eax, word [rcx + 0x5d1e0]
mov rbx, rcx
mov rcx, qword [rcx + 0x5d158]
mov r15d, r9d
mov word [rbp - 0x33], ax
mov r13d, r8d
mov edi, edx
mov dword [rbp - 0x25], edx
mov rax, qword [rcx]
call qword [rax + 0x28]
mov rcx, qword [rbx + 0x5d158]
mov rdx, 0xfffffffffffffffe
mov r12, rax
mov r9, qword [rcx]
lea r8d, [rdx + 3]
call qword [r9 + 0x18]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
movzx r14d, ax
cmp r14d, 0x3e8
ja 0x14007402c
movzx eax, word [rbx + 0x5d1e0]
mov word [rbp - 0x35], ax
test r14d, r14d
je 0x140074021
mov qword [rsp + 0xe0], rsi
xor esi, esi
movaps xmmword [rsp + 0x80], xmm6
movsd xmm6, qword [0x14009b2d8]
movaps xmmword [rsp + 0x70], xmm7
movsd xmm7, qword [0x14009b2e8]
movaps xmmword [rsp + 0x60], xmm8
movsd xmm8, qword [0x14009b2e0]
nop dword [rax + rax]
mov word [rbx + 0x5d1e0], ax
lea r9, [rbp - 0x31]
lea rax, [rbp - 0x29]
mov edx, edi
mov qword [rsp + 0x28], rax
lea r8, [rbp - 0x39]
lea rax, [rbp - 0x2d]
mov rcx, rbx
mov qword [rsp + 0x20], rax
dec r14d
call sym.EURawImg.exe_protected:_void___cdecl_LibRaw::tiff_get_unsigned_int__unsigned_int____ptr64__unsigned_int____ptr64__unsigned_int____ptr64__unsigned_int____ptr64____ptr64
mov rcx, qword [rbx + 0x5d158]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov edx, dword [rbp - 0x2d]
cmp edx, 8
jbe 0x140073e08
lea rcx, [rax + rdx]
lea rax, [r12 + r12]
cmp rcx, rax
jle 0x140073e08
mov rcx, qword [rbx + 0x5d158]
xor r8d, r8d
mov edx, dword [rbp - 0x29]
mov rax, qword [rcx]
call qword [rax + 0x18]
jmp 0x140073ff9
mov eax, r13d
shl eax, 0x10
or eax, dword [rbp - 0x39]
mov dword [rbp - 0x39], eax
cmp edx, 0x6400000
ja 0x140073fe1
cmp eax, 0x20b
jne 0x140073e60
mov eax, dword [rbp - 0x31]
cmp eax, 4
jne 0x140073e43
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov word [rbx + 0xba], ax
jmp 0x140073f04
cmp eax, 3
jne 0x140073f04
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
mov word [rbx + 0xba], ax
jmp 0x140073f04
cmp eax, 0x20c
jne 0x140073e99
mov eax, dword [rbp - 0x31]
cmp eax, 4
jne 0x140073e83
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov word [rbx + 0xbc], ax
jmp 0x140073f04
cmp eax, 3
jne 0x140073f04
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
mov word [rbx + 0xbc], ax
jmp 0x140073f04
cmp eax, 0x400
jne 0x140073f04
mov qword [rbp - 0x21], 0
lea rdi, [rbp - 0x21]
mov esi, 4
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
mov word [rdi], ax
lea rdi, [rdi + 2]
sub rsi, 1
jne 0x140073eb1
movzx ecx, word [rbx + 0xba]
movzx eax, word [rbp - 0x1d]
sub eax, ecx
movzx ecx, word [rbp - 0x21]
sub eax, ecx
movzx ecx, word [rbx + 0xbc]
cdq
sub eax, edx
sar eax, 1
mov word [rbx + 0xb6], ax
movzx eax, word [rbp - 0x1b]
sub eax, ecx
movzx ecx, word [rbp - 0x1f]
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
mov word [rbx + 0xb8], ax
test r15d, r15d
jne 0x140073fe1
cmp dword [rbp - 0x39], 0x280
jne 0x140073f38
mov rcx, qword [rbx + 0x5d158]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov qword [rbx + 0x5d180], rax
mov eax, dword [rbp - 0x2d]
mov dword [rbx + 0x2f2d0], eax
jmp 0x140073fe1
cmp dword [rbp - 0x39], 0x401
jne 0x140073f73
mov rdi, rsi
mov esi, 4
nop dword [rax]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov rcx, rdi
shr rcx, 1
xor rcx, rdi
inc rdi
mov dword [rbx + rcx*4 + 0x21510], eax
sub rsi, 1
jne 0x140073f50
jmp 0x140073fe1
cmp dword [rbp - 0x39], 0xe80
jne 0x140073fe1
mov rcx, qword [rbx + 0x5d158]
mov edx, 0x30
mov rax, qword [rcx]
lea r8d, [rdx - 0x2f]
call qword [rax + 0x18]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
movzx eax, ax
mov rcx, rbx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm7
mulsd xmm0, xmm6
cvtpd2ps xmm0, xmm0
movss dword [rbx + 0x255d4], xmm0
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
movzx eax, ax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm8
mulsd xmm0, xmm6
cvtpd2ps xmm0, xmm0
movss dword [rbx + 0x255dc], xmm0
mov rcx, qword [rbx + 0x5d158]
xor r8d, r8d
mov edx, dword [rbp - 0x29]
mov rax, qword [rcx]
call qword [rax + 0x18]
mov edi, dword [rbp - 0x25]
xor esi, esi
movzx eax, word [rbp - 0x35]
test r14d, r14d
jne 0x140073da0
movaps xmm8, xmmword [rsp + 0x60]
movaps xmm7, xmmword [rsp + 0x70]
movaps xmm6, xmmword [rsp + 0x80]
mov rsi, qword [rsp + 0xe0]
movzx eax, word [rbp - 0x33]
mov word [rbx + 0x5d1e0], ax
mov rcx, qword [rbp - 0x19]
xor rcx, rsp
call fcn.14007c510
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret