Function at 0x140077f30
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0xa0
mov rax, qword [0x1400ada20]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov rbx, rcx
cmp r8d, 2
jne 0x140077fb7
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov dword [rbx + 0x11c0], eax
cmp eax, 0x2000
jne 0x140077f72
mov dword [rbx + 0x548], 0x260001
jmp 0x140078628
lea rcx, [rbx + 0x10c]
mov r8d, 7
lea rdx, str.NX_mini
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x140077f9f
mov dword [rbx + 0x548], 0x250005
jmp 0x140078628
mov eax, 0x2b
mov word [rbx + 0x54a], ax
mov word [rbx + 0x53a], ax
jmp 0x140078628
cmp r8d, 3
jne 0x140077fd7
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov eax, eax
mov qword [rbx + 0x5d1c0], rax
mov qword [rbx + 0x540], rax
jmp 0x140078628
cmp r8d, 0x43
jne 0x140078027
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
test eax, eax
je 0x140078628
movd xmm0, eax
mov rcx, rbx
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x11f0], xmm0
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
cmp eax, 0xa
jne 0x140078628
movss xmm0, dword [rbx + 0x11f0]
divss xmm0, dword [0x14009a364]
movss dword [rbx + 0x11f0], xmm0
jmp 0x140078628
cmp r8d, 0xa002
jne 0x140078069
cmp dword [rsp + 0xd8], 2
je 0x140078628
mov eax, dword [rsp + 0xd0]
mov edx, eax
cmp eax, 0x40
jb 0x140078051
mov edx, 0x40
mov r8, qword [rbx + 0x5d158]
add rcx, 0x1326
call sym.EURawImg.exe_protected:_static_int___cdecl_LibRaw::stread_char____ptr64__unsigned_long_long_unsigned___int64___class_LibRaw_abstract_datastream____ptr64_
jmp 0x140078628
cmp r8d, 0xa003
jne 0x14007809b
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
movzx eax, ax
mov qword [rbx + 0x4b0], rax
test rax, rax
je 0x140078628
mov eax, 0x26
mov word [rbx + 0x53a], ax
jmp 0x140078628
cmp r8d, 0xa004
jne 0x1400780cf
mov eax, dword [rsp + 0xd0]
mov edx, eax
cmp eax, 0x20
jb 0x1400780b7
mov edx, 0x20
mov r8, qword [rbx + 0x5d158]
add rcx, 0x11c4
call sym.EURawImg.exe_protected:_static_int___cdecl_LibRaw::stread_char____ptr64__unsigned_long_long_unsigned___int64___class_LibRaw_abstract_datastream____ptr64_
jmp 0x140078628
cmp r8d, 0xa005
jne 0x140078102
mov eax, dword [rsp + 0xd0]
mov edx, 0x80
cmp eax, edx
jae 0x1400780ea
mov edx, eax
mov r8, qword [rbx + 0x5d158]
add rcx, 0x414
call sym.EURawImg.exe_protected:_static_int___cdecl_LibRaw::stread_char____ptr64__unsigned_long_long_unsigned___int64___class_LibRaw_abstract_datastream____ptr64_
jmp 0x140078628
mov qword [rsp + 0xb8], rbp
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0x98], rdi
cmp r8d, 0xa010
jne 0x140078169
mov esi, 4
lea rdi, [rcx + 0x1160]
mov ebp, esi
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov dword [rdi], eax
lea rdi, [rdi + 4]
sub rbp, 1
jne 0x140078131
lea rdi, [rbx + 0x1170]
nop dword [rax]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov dword [rdi], eax
lea rdi, [rdi + 4]
sub rsi, 1
jne 0x140078150
jmp 0x140078610
cmp r8d, 0xa011
jne 0x1400781df
mov edi, dword [rsp + 0xd0]
lea eax, [rdi - 1]
cmp eax, 1
ja 0x140078610
cmp r9d, 3
jne 0x140078610
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
movzx ecx, ax
mov dword [rbx + 0x1180], ecx
test ecx, ecx
je 0x1400781b4
cmp ecx, 1
je 0x1400781ad
mov eax, 0xff
jmp 0x1400781b9
mov eax, 2
jmp 0x1400781b9
mov eax, 1
mov word [rbx + 0x1228], ax
cmp edi, 2
jne 0x140078610
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_short_int___cdecl_LibRaw::get2_void____ptr64
movzx eax, ax
mov dword [rbx + 0x1184], eax
jmp 0x140078610
cmp r8d, 0xa019
jne 0x140078204
mov edx, r9d
call sym.EURawImg.exe_protected:_double___cdecl_LibRaw::getreal_int____ptr64
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss dword [rbx + 0x5d4], xmm1
jmp 0x140078610
cmp r8d, 0xa01a
jne 0x14007828c
cmp qword [rcx + 0x5d1c0], 0x5000000
je 0x140078610
cmp word [rcx + 0x494], 0
jne 0x140078610
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov eax, eax
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
comiss xmm0, dword [0x14009b6cc]
movss dword [rbx + 0x78c], xmm0
jb 0x14007825c
divss xmm0, dword [0x14009a364]
movss dword [rbx + 0x78c], xmm0
cmp word [rbx + 0x54a], 0x25
jne 0x140078610
cmp byte [rbx + 0x11ce], 0x36
jge 0x140078610
mulss xmm0, dword [0x14009b6c8]
movss dword [rbx + 0x78c], xmm0
jmp 0x140078610
cmp r8d, 0xa020
jne 0x1400782ba
lea rdi, [rcx + 0x1188]
mov esi, ntohl
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
mov dword [rdi], eax
lea rdi, [rdi + 4]
sub rsi, 1
jne 0x1400782a1
jmp 0x140078610
cmp r8d, 0xa021
jne 0x140078317
cmp dword [rsp + 0xd8], 0
jne 0x140078610
xor edi, edi
lea rbp, [rcx + 0x1188]
lea esi, [rdi + 4]
nop dword [rax]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
sub eax, dword [rbp]
lea rbp, [rbp + 4]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mov rax, rdi
sar rax, 1
xor rax, rdi
inc rdi
movss dword [rbx + rax*4 + 0x255d4], xmm0
sub rsi, 1
jne 0x1400782e0
jmp 0x140078610
cmp r8d, 0xa022
jne 0x140078383
xor edi, edi
lea rbp, [rcx + 0x1198]
lea esi, [rdi + 4]
nop dword [rax]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
sub eax, dword [rbp]
lea rbp, [rbp + 4]
mov rcx, rdi
sar rcx, 1
xor rcx, rdi
inc rdi
mov dword [rbx + rcx*4 + 0x2df74], eax
sub rsi, 1
jne 0x140078330
mov ecx, dword [rbx + 0x2df78]
mov eax, ecx
sar eax, 1
cmp dword [rbx + 0x2df74], eax
jge 0x140078610
sar ecx, 4
sar dword [rbx + 0x2df80], 4
mov dword [rbx + 0x2df78], ecx
jmp 0x140078610
cmp r8d, 0xa023
jne 0x140078401
xor edi, edi
mov dword [rsp + 0x70], 0x90008
mov dword [rsp + 0x74], 0xa
lea rbp, [rsp + 0x70]
lea esi, [rdi + 4]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
movzx ecx, word [rbp]
lea rbp, [rbp + 2]
sub eax, dword [rbx + rcx*4 + 0x1188]
mov rcx, rdi
sar rcx, 1
xor rcx, rdi
inc rdi
mov dword [rbx + rcx*4 + 0x2db64], eax
sub rsi, 1
jne 0x1400783a6
mov ecx, dword [rbx + 0x2db68]
mov eax, ecx
sar eax, 1
cmp dword [rbx + 0x2db64], eax
jge 0x140078610
sar ecx, 4
sar dword [rbx + 0x2db70], 4
mov dword [rbx + 0x2db68], ecx
jmp 0x140078610
cmp r8d, 0xa024
jne 0x140078469
xor edi, edi
lea rbp, [rcx + 0x118c]
lea esi, [rdi + 4]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
sub eax, dword [rbp]
lea rbp, [rbp + 4]
mov rcx, rdi
sar rcx, 1
xor rcx, rdi
inc rdi
mov dword [rbx + rcx*4 + 0x2dba4], eax
sub rsi, 1
jne 0x140078416
mov ecx, dword [rbx + 0x2dba8]
mov eax, ecx
sar eax, 1
cmp dword [rbx + 0x2dba4], eax
jge 0x140078610
sar ecx, 4
sar dword [rbx + 0x2dbb0], 4
mov dword [rbx + 0x2dba8], ecx
jmp 0x140078610
cmp r8d, 0xa025
jne 0x1400784b6
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
add eax, dword [rbx + 0x1188]
cmp eax, 0x1000
jne 0x140078499
movsd xmm0, qword [0x140080e20]
movsd qword [rbx + 0x11b8], xmm0
jmp 0x140078610
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [0x14009b6c0]
movsd qword [rbx + 0x11b8], xmm0
jmp 0x140078610
cmp r8d, 0xa028
jne 0x14007850d
cmp dword [rsp + 0xd8], 0
jne 0x140078610
xor edi, edi
lea rbp, [rcx + 0x1188]
lea esi, [rdi + 4]
nop dword [rax]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
sub eax, dword [rbp]
lea rbp, [rbp + 4]
mov rcx, rdi
sar rcx, 1
xor rcx, rdi
inc rdi
mov dword [rbx + rcx*4 + 0x21510], eax
sub rsi, 1
jne 0x1400784e0
jmp 0x140078610
movaps xmmword [rsp + 0x80], xmm6
cmp r8d, 0xa030
jne 0x14007859f
cmp dword [rsp + 0xd0], 9
jne 0x140078608
movsd xmm6, qword [0x1400966b0]
mov rsi, 0xfffffffffffdbb64
mov qword [rsp + 0x90], r14
lea r14, [rcx + 0x25624]
nop
mov rdi, r14
mov ebp, 3
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
add ax, word [rsi + rdi]
lea rdi, [rdi + 4]
cwde
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm6
cvtpd2ps xmm0, xmm0
movss dword [rdi - 4], xmm0
sub rbp, 1
jne 0x140078558
add r14, 0x10
sub rsi, 4
cmp rsi, 0xfffffffffffdbb58
jg 0x140078550
mov r14, qword [rsp + 0x90]
jmp 0x140078608
cmp r8d, 0xa032
jne 0x140078608
cmp dword [rsp + 0xd0], 9
jne 0x140078608
cmp dword [rsp + 0xd8], 0
jne 0x140078608
movsd xmm6, qword [0x1400966b0]
lea rsi, [rcx + 0x1188]
xor edi, edi
nop dword [rax]
mov rcx, rbx
call sym.EURawImg.exe_protected:_unsigned_int___cdecl_LibRaw::get4_void____ptr64
add ax, word [rsi]
lea rsi, [rsi + 4]
cwde
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm6
movsd qword [rsp + rdi*8 + 0x20], xmm0
inc rdi
cmp rdi, 9
jl 0x1400785d0
lea rdx, [rsp + 0x20]
mov rcx, rbx
call sym.EURawImg.exe_protected:_void___cdecl_LibRaw::aRGB_coeff_double___const__3____ptr64____ptr64
movaps xmm6, xmmword [rsp + 0x80]
mov rsi, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.14007c510
add rsp, 0xa0
pop rbx
ret