Function at 0x180385f80
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov rsi, rcx
mov al, byte [rsi + 0x710]
movzx eax, al
test eax, eax
je 0x180385ff4
jmp 0x180385f98
sub eax, 3
je 0x18038600a
jmp 0x180385f9f
mov eax, dword [0x18078d3e0]
xor edx, edx
div dword [0x18078d3e4]
add eax, 0x374a8183
add eax, 0xee2005f8
sub eax, 0x61591e57
cmp eax, 0x259858a7
jb 0x18038624d
mov eax, dword [0x18078d3e8]
sub eax, dword [0x18078d3ec]
or eax, 0x43ef30fb
or eax, 0xfa455894
xor eax, 0x463b51d
cmp eax, 0x83aca30c
jb 0x18038624d
add rsp, 0x28
pop rdi
pop rsi
ret
mov rcx, rsi
call fcn.1803879c0
add rsi, 0x28
mov rcx, rsi
call fcn.1803881e0
jmp 0x180385f9f
mov rax, rsi
add rax, 0x2a0
mov cl, byte [rax]
movzx eax, cl
test cl, cl
je 0x180386039
jmp 0x18038601e
mov ecx, eax
sub ecx, 3
je 0x1803860ad
jmp 0x18038602b
sub eax, 4
je 0x180386187
jmp 0x180385f9f
mov eax, dword [0x18078d3f0]
add eax, dword [0x18078d3f4]
and eax, 0x3d1a2549
or eax, 0x2678e320
imul eax, eax, 0xff712a2b
cmp eax, 0x7e3a2e2d
ja 0x18038625e
jmp 0x180386062
mov edi, dword [0x18078d3f8]
add edi, dword [0x18078d3fc]
and edi, 0x9506bfb0
add edi, 0xacf2555b
and edi, 0xa3bf83de
mov rcx, rsi
add rcx, 0x150
call fcn.1803879c0
cmp edi, 0x245386f6
je 0x180386062
jmp 0x180386099
add rsi, 0x178
mov rcx, rsi
call fcn.1803881e0
jmp 0x180385f9f
mov rcx, rsi
add rcx, 0x2a8
mov eax, dword [0x18078d400]
xor eax, dword [0x18078d404]
mov r8d, 0xab70ad86
xor edx, edx
div r8d
add eax, 0x3c39bcde
add eax, 0x97c9851a
cmp eax, 0xa46f8e02
jb 0x18038627a
jmp 0x1803860e5
mov edx, dword [0x18078d408]
sub edx, dword [0x18078d40c]
and edx, 0xe2fc737a
sub edx, 0x4ac1afc7
add edx, 0x4ba23f34
cmp qword [rcx], 3
sete al
cmp edx, 0xe94537f0
je 0x1803860e5
jmp 0x180386114
test al, 1
jne 0x180385f9f
jmp 0x18038611e
call fcn.1803881e0
add rsi, 0x3d0
mov eax, dword [0x18078d410]
sub eax, dword [0x18078d414]
xor eax, 0x237df66b
and eax, 0x8d7b1a81
or eax, 0xbf8a9bcf
cmp eax, 0x455fc80e
je 0x180386287
mov edi, dword [0x18078d418]
or edi, dword [0x18078d41c]
or edi, 0x56d29f9b
xor edi, 0xd930b966
xor edi, 0xb32f907
mov rcx, rsi
call fcn.1803879c0
cmp edi, 0xd9d5e0b0
ja 0x180386287
jmp 0x180385f9f
mov eax, dword [0x18078d420]
sub eax, dword [0x18078d424]
add eax, 0xbc27c790
mov ecx, 0x781fd219
xor edx, edx
div ecx
sub eax, 0xb9a08159
cmp eax, 0x13c1c0e3
je 0x1803862a0
jmp 0x1803861b3
mov eax, dword [0x18078d428]
or eax, dword [0x18078d42c]
and eax, 0x44c524d6
or eax, 0xce1322de
xor eax, 0x375f7590
mov rcx, rsi
add rcx, 0x2a8
cmp eax, 0xfcb07a7d
ja 0x1803861b3
jmp 0x1803861e1
cmp qword [rcx], 3
sete al
mov edx, dword [0x18078d430]
imul edx, dword [0x18078d434]
sub edx, 0x5aa58886
imul edx, edx, 0xbd354eaa
imul edx, edx, 0x8751ef1f
cmp edx, 0x3ad0fecb
je 0x1803862ad
mov edx, dword [0x18078d438]
add edx, dword [str.._f_tm]
add edx, 0xf58905c0
imul edx, edx, 0xf70267de
xor edx, 0x753bd7d2
cmp edx, 0x6513d96a
jbe 0x1803862ad
test al, 1
jne 0x180385f9f
jmp 0x180386243
call fcn.180385640
jmp 0x180385f9f
mov ch, 0xeb
or dl, dl
mov ecx, 0xecb09fe0
xchg al, bh
call fcn.18035cc46
invalid
fcmovbe st(0), st(4)
stosb byte [rdi], al
lea eax, [rsi]
lodsb al, byte [rsi]
movabs al, byte ds:[0x150c18148f18948]
add byte [rax], al
call fcn.1803879c0
jmp 0x180386060
sub dword [rax], 0x465e7cc7
sub eax, 0xfe5ce9cc
invalid
iretd
mov esp, 0xa6fc898f
pop rsp
mov ebx, 0xff04e9fe
invalid
adc dword [rsp + rax*8 - 0x70], ecx
adc al, 0x61
test esi, eax
movabs eax, dword [0xffffff55e9340c42]
int3