Function at 0x1804c32d0
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x20
mov rsi, qword [rcx]
mov rcx, rsi
add rcx, 0x10
mov eax, dword [0x1807adc18]
imul eax, dword [0x1807adc1c]
or eax, 0x86a9b983
xor eax, 0x1283b429
sub eax, 0x926c5cd9
cmp eax, 0x5673f936
je 0x1804c32a4
mov eax, dword [0x1807adc20]
and eax, dword [0x1807adc24]
and eax, 0x8a4a5485
imul eax, eax, 0xc0d398ed
or eax, 0xe8f081fc
cmp eax, 0x3bac2eca
jb 0x1804c32a4
jmp 0x1804c319f
mov rax, qword [rcx]
lock dec qword [rax]
sete al
test al, 1
je 0x1804c31b4
call fcn.1804c2380
jmp 0x1804c31b4
mov rax, 0xffffffffffffffff
cmp rsi, rax
sete cl
mov eax, dword [0x1807adc28]
add eax, dword [0x1807adc2c]
or eax, 0x97de1ed0
and eax, 0x264fa12f
add eax, 0x6a46ef5a
cmp eax, 0xbf8a61c0
ja 0x1804c32b1
jmp 0x1804c31e9
mov eax, dword [str.Pe_F]
xor eax, dword [0x1807adc34]
mov r8d, 0xba61abc1
xor edx, edx
div r8d
sub eax, 0x67aa6476
xor eax, 0xef526cbf
cmp eax, 0xc6f47feb
ja 0x1804c31e9
test cl, 1
jne 0x1804c329e
jmp 0x1804c321c
mov rcx, 0xffffffffffffffff
lock xadd qword [rsi + 8], rcx
mov eax, dword [0x1807adc38]
xor edx, edx
div dword [0x1807adc3c]
add eax, 0x5cbb35cb
xor eax, 0x48a7e198
mov r8d, 0x831d059f
xor edx, edx
div r8d
cmp eax, 0xccb2b41b
jae 0x1804c32c2
mov eax, dword [0x1807adc40]
imul eax, dword [0x1807adc44]
imul edx, eax, 0x779bb510
sub edx, 0x4a56f0e6
add edx, 0xd085def7
cmp rcx, 1
sete al
cmp edx, 0xe34394ed
ja 0x1804c32c2
jmp 0x1804c3283
test al, 1
jne 0x1804c3289
jmp 0x1804c329e
mov rcx, rsi
mov edx, 0x38
mov r8d, 8
call fcn.1804cafa0
jmp 0x1804c329e
add rsp, 0x20
pop rsi
ret
jo 0x1804c32c8
pop rdx
loopne 0x1804c32fe
mov byte [rcx + rax], 0xe9
invalid
xchg dword [rcx + 0xa7b9e64], edx
pop rax
sbb ax, 0x7da2
notrack jmp 0x1804c31e7
jmp 0x1fb4f725a
mov ss, word [rdi]
sub ch, byte [rax - 0x76]
mov edi, 0x485683eb
push rsi
sub rsp, 0x20
mov rsi, rcx
mov eax, dword [0x1807adc48]
sub eax, dword [0x1807adc4c]
and eax, 0x17c0f4e6
add eax, 0x512c5304
imul eax, eax, 0x9fd69465
cmp eax, 0xf5feba4e
je 0x1804c3466
add byte [rbx + 0x2ea94b05], cl
add byte [rbx], al
add eax, 0x2ea949
mov eax, dword [0x1807adc50]
add eax, dword [0x1807adc54]
or eax, 0x4f78eb96
or eax, 0x6e38ef47
mov ecx, 0x10ce3699
xor edx, edx
div ecx
mov rcx, rsi
add rcx, 0x10
cmp eax, 0xab6bfe78
jae 0x1804c3466
jmp 0x1804c3332
call fcn.1804b6630
mov eax, dword [0x1807adc58]
sub eax, dword [0x1807adc5c]
and eax, 0xe7aafaf8
sub eax, 0x5ac77f3
add eax, 0xcddbe9a6
cmp eax, 0xaee5b1d6
jae 0x1804c3473
mov ecx, dword [0x1807adc60]
or ecx, dword [0x1807adc64]
and ecx, 0x27ea1e85
xor ecx, 0xe97a7e3a
sub ecx, 0xa112c9aa
mov rax, 0xffffffffffffffff
cmp rsi, rax
sete al
cmp ecx, 0xcd795f0c
je 0x1804c3473
test al, 1
jne 0x1804c3413
jmp 0x1804c339a
mov rax, rsi
add rax, 8
lock dec qword [rax]
sete al
test al, 1
jne 0x1804c33ae
jmp 0x1804c3413
mov eax, dword [0x1807adc68]
xor edx, edx
div dword [0x1807adc6c]
xor eax, 0x4a9aedbb
and eax, 0x14b14bf6
add eax, 0x3b756b15
cmp eax, 0xa10f6fef
ja 0x1804c3480
jmp 0x1804c33d8
mov eax, dword [0x1807adc70]
mov ecx, dword [0x1807adc74]
sub eax, ecx
or eax, 0x869e941b
add eax, 0xe7978602
xor eax, 0x25220d78
cmp eax, 0x801b0f0a
jb 0x1804c33d8
jmp 0x1804c33fe
mov rcx, rsi
mov edx, 0x88
mov r8d, 8
call fcn.1804cafa0
jmp 0x1804c3413
mov eax, dword [0x1807adc78]
xor edx, edx
div dword [0x1807adc7c]
add eax, 0x1f1a6b75
mov ecx, 0x41ae9c6d
xor edx, edx
div ecx
and eax, 0xdc6de82d
cmp eax, 0x5bc5738b
ja 0x1804c3491
jmp 0x1804c343d
mov eax, dword [0x1807adc80]
add eax, dword [0x1807adc84]
imul eax, eax, 0x46c3162f
xor eax, 0x161a62da
xor eax, 0xe4950020
cmp eax, 0xe2dee91a
je 0x1804c343d
add rsp, 0x20
pop rsi
ret
xchg edx, eax
mov eax, ds
invalid
or eax, 0x102acd0a
jns 0x1804c34d7
cmp al, 0xe9
invalid
shr dword [rbx + 0x6166cd69], 1
invalid
mov ebp, 0x79296b6a
movabs eax, dword [0xcccccccca0eb5592]
int3
mov ecx, dword [0x1807adc90]
mov eax, dword [0x1807adc94]
sub ecx, eax
xor ecx, 0x10dc7e9f
add byte cs:[rbx + 0x2ea7b505], cl
add byte [rcx], ch
rol dword [rcx - 0x2381600f], 0x10
mov eax, 0xdbcf8039
imul rcx, rax
shr rcx, 0x3d
add ecx, 0x9a7c6222
mov eax, 0x50
call fcn.180698e80
sub rsp, rax
mov rdi, rsp
cmp ecx, 0x90e649ff
je 0x1804c34d3
jmp 0x1804c3514
mov rax, rsi
add rax, 0x18
mov rdx, qword [rax]
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x1804c3559
cmp rdx, 0
sete al
test al, 1
jne 0x1804c3559
jmp 0x1804c353a
mov rax, rsi
add rax, 0x20
mov rcx, qword [rax]
sub rsp, 0x20
mov r8d, 1
call fcn.1804cafa0
add rsp, 0x20
jmp 0x1804c3559
mov rax, rsi
add rax, 0x30
mov rdx, qword [rax]
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x1804c35e5
cmp rdx, 0
sete al
test al, 1
jne 0x1804c35e5
jmp 0x1804c357f
mov eax, dword [0x1807adc98]
or eax, dword [0x1807adc9c]
imul eax, eax, 0x67fa5bdc
and eax, 0x2a50fd39
and eax, 0xb501d3ca
cmp eax, 0x18273433
je 0x1804c390e
jmp 0x1804c35a8
mov eax, dword [0x1807adca0]
or eax, dword [0x1807adca4]
xor eax, 0x5ac6d34c
add eax, 0x5af7d5f7
and eax, 0xdf80ce7c
mov rcx, qword [rsi + 0x38]
cmp eax, 0xf3d626f2
ja 0x1804c35a8
jmp 0x1804c35d0
sub rsp, 0x20
mov r8d, 1
call fcn.1804cafa0
add rsp, 0x20
jmp 0x1804c35e5
mov eax, dword [0x1807adca8]
xor eax, dword [0x1807adcac]
xor eax, 0x229e69d4
sub eax, 0xf3748ec9
xor eax, 0xd93b6490
cmp eax, 0x4e06e768
jbe 0x1804c391f
jmp 0x1804c360d
mov ebx, dword [0x1807adcb0]
xor ebx, dword [0x1807adcb4]
sub ebx, 0x87e8fce1
or ebx, 0x1acfdeb6
xor ebx, 0x8915b44c
mov rcx, rsi
add rcx, 0x68
sub rsp, 0x20
call fcn.180460e70
add rsp, 0x20
mov r9, rsi
add r9, 0x80
cmp ebx, 0x533b125c
jbe 0x1804c360d
jmp 0x1804c3653
mov eax, dword [0x1807adcb8]
xor edx, edx
div dword [0x1807adcbc]
sub eax, 0xd4692fec
xor eax, 0x89689479
add eax, 0xf55d537b
cmp eax, 0xba1e2d62
ja 0x1804c3944
mov eax, dword [0x1807adcc0]
imul eax, dword [0x1807adcc4]
add eax, 0xc4e364c8
imul eax, eax, 0x46a7211c
mov ecx, 0x790c8cb5
xor edx, edx
div ecx
mov rcx, qword [r9]
cmp rcx, 0
sete r8b
cmp eax, 0xd1011c28
ja 0x1804c3944
jmp 0x1804c36b4
mov eax, dword [0x1807adcc8]
xor edx, edx
div dword [0x1807adccc]
mov r9d, 0xaa63d92e
xor edx, edx
div r9d
add eax, 0xaf78a4dd
add eax, 0xb5b5a56b
cmp eax, 0x32dbe4d0
jb 0x1804c3955
mov eax, dword [0x1807adcd0]
add eax, dword [0x1807adcd4]
and eax, 0x95cc8284
and eax, 0xd1a14c6c
add eax, 0xf183a5c6
cmp eax, 0x1b332092
je 0x1804c3955
xor edx, edx
test r8b, 1
mov eax, 0
jne 0x1804c3750
jmp 0x1804c3717
mov r8, rdi
add r8, 8
mov rax, qword [rsi + 0x90]
mov rdx, qword [rsi + 0x88]
mov qword [r8], 0
mov qword [rdi + 0x10], rcx
mov qword [rdi + 0x18], rdx
mov qword [rdi + 0x28], 0
mov qword [rdi + 0x30], rcx
mov qword [rdi + 0x38], rdx
mov edx, 1
mov qword [rdi], rdx
mov qword [rdi + 0x20], rdx
mov qword [rdi + 0x40], rax
sub rsp, 0x20
mov rcx, rdi
call fcn.180456470
add rsp, 0x20
mov rax, 0xffffffffffffffff
cmp rsi, rax
je 0x1804c38f8
mov eax, dword [0x1807adcd8]
add eax, dword [0x1807adcdc]
sub eax, 0x56bd235a
and eax, 0x332372d4
mov ecx, 0xc3fb53fb
xor edx, edx
div ecx
cmp eax, 0xf676ce0a
jae 0x1804c3962
jmp 0x1804c37a7
mov eax, dword [0x1807adce0]
mov ecx, dword [0x1807adce4]
or eax, ecx
and eax, 0x98806533
add eax, 0x22a600a2
mov rcx, 0xffffffffffffffff
lock xadd qword [rsi + 8], rcx
cmp eax, 0x9d38c827
je 0x1804c37a7
jmp 0x1804c37d5
mov eax, dword [0x1807adce8]
xor eax, dword [0x1807adcec]
or eax, 0xb694d81f
or eax, 0x78715150
imul eax, eax, 0x281b6d21
cmp eax, 0x1cce1985
jb 0x1804c3978
jmp 0x1804c37fe
mov eax, dword [0x1807adcf0]
xor edx, edx
div dword [0x1807adcf4]
or eax, 0x3ad597eb
mov r8d, 0x9dc044b3
xor edx, edx
div r8d
or eax, 0xfdbda482
cmp rcx, 1
sete dl
cmp eax, 0x121143c4
je 0x1804c37fe
jmp 0x1804c3831
test dl, 1
jne 0x1804c383b
jmp 0x1804c38f8
mov eax, dword [0x1807adcf8]
sub eax, dword [0x1807adcfc]
imul eax, eax, 0xccc4de7f
sub eax, 0xd22e1960
or eax, 0x570831c0
cmp eax, 0xbe91cc7c
ja 0x1804c3985
jmp 0x1804c3864
mov eax, dword [0x1807add00]
sub eax, dword [0x1807add04]
mov ecx, 0xe7ae95f3
xor edx, edx
div ecx
imul edi, eax, 0x747cebad
sub edi, 0xf182e2d8
sub rsp, 0x20
mov rcx, rsi
mov edx, 0xb0
mov r8d, 8
call fcn.1804cafa0
add rsp, 0x20
cmp edi, 0x62ee63b6
ja 0x1804c3864
jmp 0x1804c38aa
mov eax, dword [0x1807add08]
and eax, dword [0x1807add0c]
imul eax, eax, 0xb79babdd
add eax, 0x31d4b3a1
add eax, 0xe3dc5894
cmp eax, 0x58aad8d2
ja 0x1804c39b1
jmp 0x1804c38d3
mov eax, dword [0x1807add10]
imul eax, dword [0x1807add14]
add eax, 0x7afebee6
xor eax, 0xf094059b
and eax, 0x122c364b
cmp eax, 0x9c854f8b
je 0x1804c38d3
jmp 0x1804c38f8
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop rbp
ret
js 0x1804c3948
invalid
add esi, dword [rcx + rsi]
test al, 0xc4
in eax, 0x4a
invalid
rol edx, 0x47
out dx, eax
mov gs, word fs:[rdi*2 - 0xc4424be]
jmp 0x1804c367b
sbb dword [rsi + 0x3a], 0x73634ac6
xchg ecx, ebp
cmp ch, 0xff
invalid
fmul qword [rax + 0x67]
invalid
invalid
xchg ebp, eax
jmp 0x1d85cf417
retf