Function at 0x1803c3e00
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rcx
mov al, byte [rsi + 0x710]
movzx ecx, al
mov eax, dword [0x180792fc0]
xor eax, dword [0x180792fc4]
sub eax, 0xafd25429
mov r8d, 0x4e0e0d6e
xor edx, edx
div r8d
mov r8d, 0x24d7eb9b
xor edx, edx
div r8d
cmp eax, 0x14ab58c4
je 0x1803c41a7
mov eax, dword [0x180792fc8]
and eax, dword [0x180792fcc]
mov r8d, 0x3c31a6b0
xor edx, edx
div r8d
or eax, 0x5329a978
mov r8d, 0x4c87ce2
xor edx, edx
div r8d
cmp eax, 0x1c4f17e0
ja 0x1803c41a7
test ecx, ecx
je 0x1803c3e8c
jmp 0x1803c3e7d
sub ecx, 3
je 0x1803c3ef6
jmp 0x1803c3e84
add rsp, 0x20
pop rbx
pop rdi
pop rsi
ret
mov rcx, rsi
call fcn.1803c5780
add rsi, 0x28
mov eax, dword [0x180792fd0]
or eax, dword [0x180792fd4]
or eax, 0xe6ba1b25
imul eax, eax, 0xaa49fad7
imul eax, eax, 0xec98ac6f
cmp eax, 0x45dae6ad
jbe 0x1803c41b8
mov eax, dword [0x180792fd8]
xor edx, edx
div dword [0x180792fdc]
add eax, 0x4e2cd780
or eax, 0x5835b6f7
imul edi, eax, 0x25bac572
mov rcx, rsi
call fcn.1803c6050
cmp edi, 0x5a06e111
jbe 0x1803c41b8
jmp 0x1803c3ef4
jmp 0x1803c3e84
mov eax, dword [0x180792fe0]
and eax, dword [0x180792fe4]
mov ecx, 0xa9da5ff2
xor edx, edx
div ecx
or eax, 0x72295db5
mov ecx, 0xc1fd1e7d
xor edx, edx
div ecx
cmp eax, 0x4e7488a6
jae 0x1803c41cd
mov ecx, dword [0x180792fe8]
add ecx, dword [0x180792fec]
or ecx, 0xb9d62c2b
sub ecx, 0x374a0b06
or ecx, 0xc0b42d7
mov rax, rsi
add rax, 0x2a0
cmp ecx, 0xe6cd8cab
ja 0x1803c41cd
jmp 0x1803c3f59
mov ecx, dword [0x180792ff0]
xor ecx, dword [0x180792ff4]
imul ecx, ecx, 0xedd47bea
xor ecx, 0xfd3f94eb
xor ecx, 0x49d7fdd9
cmp ecx, 0x6efb44c2
je 0x1803c41de
jmp 0x1803c3f85
mov ecx, dword [0x180792ff8]
sub ecx, dword [0x180792ffc]
sub ecx, 0xa2a3b45f
imul edx, ecx, 0xae0b6876
sub edx, 0xa6995643
movzx ecx, byte [rax]
cmp edx, 0xf47559a1
ja 0x1803c3f85
jmp 0x1803c3fb0
test ecx, ecx
je 0x1803c3fd1
jmp 0x1803c3fb6
mov eax, ecx
sub eax, 3
je 0x1803c404a
jmp 0x1803c3fc3
sub ecx, 4
je 0x1803c4132
jmp 0x1803c3e84
mov rdi, rsi
add rdi, 0x150
mov eax, dword [0x180793000]
sub eax, dword [0x180793004]
xor eax, 0x19cc1bd2
imul eax, eax, 0x16851a99
sub eax, 0xfbd44145
cmp eax, 0x37767c3d
jae 0x1803c41eb
mov ebx, dword [0x180793008]
and ebx, dword [0x18079300c]
or ebx, 0x72a369d9
and ebx, 0x3fc5b68c
xor ebx, 0xb2a3f1b7
mov rcx, rdi
call fcn.1803c5780
mov rcx, rsi
add rcx, 0x178
call fcn.1803c6050
cmp ebx, 0x1a18dca4
jbe 0x1803c41eb
jmp 0x1803c4045
jmp 0x1803c3e84
mov rdi, rsi
add rdi, 0x2a8
cmp qword [rdi], 3
sete cl
mov eax, dword [0x180793010]
imul eax, dword [0x180793014]
sub eax, 0x39def907
xor eax, 0x671e57a2
mov r8d, 0x87c20e78
xor edx, edx
div r8d
cmp eax, 0xf8e51d3b
je 0x1803c420f
mov eax, dword [0x180793018]
xor edx, edx
div dword [0x18079301c]
xor eax, 0x6bec81b1
or eax, 0xa35f053a
add eax, 0x39a8cc7d
cmp eax, 0xc3a3c8a0
ja 0x1803c420f
test cl, 1
jne 0x1803c3e84
jmp 0x1803c40bb
mov eax, dword [0x180793020]
and eax, dword [0x180793024]
or eax, 0x65def3c9
mov ecx, 0x5b3208f
xor edx, edx
div ecx
and eax, 0xb29f7b99
cmp eax, 0xa516614d
jae 0x1803c421c
mov eax, dword [0x180793028]
sub eax, dword [0x18079302c]
mov ecx, 0x2cab4c1e
xor edx, edx
div ecx
mov ebx, eax
add ebx, 0xa4d195bf
xor ebx, 0x25289c41
mov rcx, rdi
call fcn.1803c6050
mov rcx, rsi
add rcx, 0x3d0
cmp ebx, 0x4f3bd3bd
jbe 0x1803c421c
jmp 0x1803c4128
call fcn.1803c5780
jmp 0x1803c3e84
add rsi, 0x2a8
mov eax, dword [0x180793030]
add eax, dword [0x180793034]
mov ecx, 0xa8625e01
xor edx, edx
div ecx
or eax, 0x680c16e9
and eax, 0xc7a5efaf
cmp eax, 0x836ed110
jae 0x1803c4231
jmp 0x1803c4165
mov eax, dword [0x180793038]
sub eax, dword [0x18079303c]
xor eax, 0x63d4fb2d
mov ecx, 0x91492829
xor edx, edx
div ecx
or eax, 0xdaa36647
mov rcx, qword [rsi]
cmp eax, 0x13d0c9b
jbe 0x1803c4165
jmp 0x1803c4190
cmp rcx, 3
je 0x1803c3e84
mov rcx, rsi
call fcn.1803c3570
jmp 0x1803c3e84
wait
xor dword [rsi + rbp*4 + 0x744112f8], eax
test dword [rcx - 0x7216e7eb], eax
cld
invalid
jmp 0x132bb7225
mov esp, 0xaaadaafe
jrcxz 0x1803c4221
fbstp tbyte [rcx - 0x16cf0686]
std
invalid
invalid
and esi, dword [rbp + 0x459b094]
invalid
iretd
invalid
sbb al, 0xba
mov rcx, rdi
call fcn.1803c6050
jmp 0x1803c40e5
push 0x42
movsd dword [rdi], dword [rsi]
enter 0xffffffffffff958a, 0xffffffffffffffa8
jmp 0x1803c4163