Function at 0x1804c2000
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
mov eax, dword [0x1807ad9f8]
or eax, dword [0x1807ad9fc]
and eax, 0x8acb0f11
xor eax, 0x5893b38
mov r8d, 0xdffe6da6
xor edx, edx
div r8d
cmp eax, 0x37fc0a30
ja 0x1804c22f6
mov eax, dword [0x1807ada00]
add eax, dword [0x1807ada04]
imul eax, eax, 0x3f442faa
xor eax, 0x9a548c3e
and eax, 0xb6cf478e
mov rsi, qword [rcx]
cmp eax, 0xf98e697f
ja 0x1804c22f6
jmp 0x1804c2061
mov eax, dword [0x1807ada08]
and eax, dword [0x1807ada0c]
imul eax, eax, 0x8a854f7c
and eax, 0x7a553497
add eax, 0x2380b778
cmp eax, 0x28f99159
jb 0x1804c2307
jmp 0x1804c208a
mov eax, dword [0x1807ada10]
or eax, dword [0x1807ada14]
add eax, 0xb64a88aa
add eax, 0x4c40e575
mov ecx, 0x40f69687
xor edx, edx
div ecx
mov edi, eax
mov rcx, rsi
add rcx, 0x80
call fcn.18064bcb0
mov rax, rsi
add rax, 0xb0
cmp edi, 0x24fc2fb3
jae 0x1804c208a
jmp 0x1804c20cd
mov r14, qword [rax]
cmp r14, 0
je 0x1804c2193
mov eax, dword [0x1807ada18]
xor edx, edx
div dword [0x1807ada1c]
or eax, 0xb36ad02
and eax, 0x86e8352f
sub eax, 0xca16a498
cmp eax, 0x16f33bf5
jbe 0x1804c2327
jmp 0x1804c2104
mov eax, dword [0x1807ada20]
sub eax, dword [0x1807ada24]
imul eax, eax, 0x21f0ace7
xor eax, 0x4a755d0
add eax, 0xb76b661c
mov rdi, qword [rsi + 0xb8]
cmp eax, 0x119170ce
je 0x1804c2104
jmp 0x1804c2130
mov eax, dword [0x1807ada28]
add eax, dword [0x1807ada2c]
xor eax, 0x1cc838b3
xor eax, 0x4ae5a4e0
mov ecx, 0x28ffcc92
xor edx, edx
div ecx
cmp eax, 0x924dbada
jae 0x1804c2338
mov eax, dword [0x1807ada30]
xor edx, edx
div dword [0x1807ada34]
mov ebx, eax
add ebx, 0x45eb3ff3
or ebx, 0x7589519a
or ebx, 0xe309f7b8
mov rcx, rdi
call qword [r14 + 0x18]
cmp ebx, 0xce5e3da4
je 0x1804c2338
jmp 0x1804c2191
jmp 0x1804c2193
mov rax, rsi
add rax, 0xc0
mov r8, qword [rax]
mov eax, dword [0x1807ada38]
or eax, dword [0x1807ada3c]
mov ecx, 0x878bb0d1
xor edx, edx
div ecx
add eax, 0xd5e2b748
and eax, 0x6f3dc67a
cmp eax, 0xb112e70f
je 0x1804c234c
jmp 0x1804c21cb
mov ecx, dword [0x1807ada40]
sub ecx, dword [0x1807ada44]
and ecx, 0xa5c2820b
xor ecx, 0x76aa03f7
xor ecx, 0x387e3c2f
cmp r8, 0
sete al
cmp ecx, 0x1c477b37
jbe 0x1804c21cb
test al, 1
jne 0x1804c225e
jmp 0x1804c21fe
mov rcx, qword [rsi + 0xc8]
mov eax, dword [0x1807ada48]
and eax, dword [0x1807ada4c]
sub eax, 0x2c4d560f
and eax, 0x94eef547
sub eax, 0x43690496
cmp eax, 0x4c060117
jbe 0x1804c235d
mov edx, dword [0x1807ada50]
imul edx, dword [0x1807ada54]
add edx, 0xab7e89af
sub edx, 0xbe6ff17e
sub edx, 0x82e74cbd
mov rax, qword [r8 + 0x18]
cmp edx, 0x5a8c60bf
je 0x1804c235d
jmp 0x1804c225c
call rax
mov rax, 0xffffffffffffffff
cmp rsi, rax
sete cl
mov eax, dword [str.D_a2]
or eax, dword [0x1807ada5c]
mov r8d, 0x564aff8c
xor edx, edx
div r8d
or eax, 0xf421d3dd
sub eax, 0x674ed391
cmp eax, 0xdf760897
je 0x1804c236e
jmp 0x1804c2299
mov eax, dword [0x1807ada60]
add eax, dword [0x1807ada64]
imul eax, eax, 0x72e06cf6
add eax, 0xb9511b9f
and eax, 0x2d0f375f
cmp eax, 0x26895fee
ja 0x1804c2299
test cl, 1
jne 0x1804c22ec
jmp 0x1804c22c3
mov rax, rsi
add rax, 8
lock dec qword [rax]
sete al
test al, 1
jne 0x1804c22d7
jmp 0x1804c22ec
mov rcx, rsi
mov edx, 0x100
mov r8d, 0x80
call fcn.1804cafa0
jmp 0x1804c22ec
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
xor dl, cl
xor ecx, dword [rbx + 0x34ea5ef9]
or cl, byte [rdx - 0xa]
out dx, eax
jmp 0x1804c2035
mov dl, 0x2c
invalid
invalid
leave
invalid
lea ebx, [rdx + 0x4d9b0698]
movabs byte [0xfe6ce91940cf0c70], al
invalid
invalid
jno 0x1804c239d
invalid
add ecx, 0x38
mov r9, qword [rcx]
cmp r9, 0
je 0x1804c24d4
mov eax, dword [0x1807ada68]
xor eax, dword [0x1807ada6c]
xor eax, 0xdd13fb30
mov r8d, 0xf62ba4a1
xor edx, edx
div r8d
or eax, 0xca1aa6ee
cmp eax, 0x24cd4b29
je 0x1804c299b
jmp 0x1804c23db
mov eax, dword [0x1807ada70]
mov edx, dword [0x1807ada74]
imul eax, edx
or eax, 0x9e8e4820
imul eax, eax, 0x4e6341ae
add eax, 0x3fdeaed
mov r8, 0xffffffffffffffff
lock xadd qword [r9], r8
cmp eax, 0x8941be2d
jbe 0x1804c23db
jmp 0x1804c240f
mov eax, dword [0x1807ada78]
or eax, dword [str._uJ_r_a]
add eax, 0xdd4d547a
sub eax, 0x9ec5847f
mov r9d, 0x3a9d45a1
xor edx, edx
div r9d
cmp eax, 0xe10e4cd4
je 0x1804c29ac
jmp 0x1804c243d
mov eax, dword [0x1807ada80]
and eax, dword [0x1807ada84]
mov r9d, 0x88217288
xor edx, edx
div r9d
imul eax, eax, 0xe2bb5afb
mov r9d, 0xa280d548
xor edx, edx
div r9d
cmp r8, 1
sete dl
cmp eax, 0x41e73b49
ja 0x1804c243d
jmp 0x1804c2475
test dl, 1
jne 0x1804c247c
jmp 0x1804c24d4
mov eax, dword [0x1807ada88]
add eax, dword [0x1807ada8c]
or eax, 0x7a884a09
xor eax, 0x71f8c73c
imul eax, eax, 0x1d6354da
cmp eax, 0x8c4b5dfa
ja 0x1804c29bd
mov eax, dword [0x1807ada90]
mov edx, dword [0x1807ada94]
xor eax, edx
add eax, 0x88eec913
or eax, 0x9326d365
xor eax, 0x8ee254dd
cmp eax, 0x2b54f01c
jbe 0x1804c29bd
jmp 0x1804c24cd
call fcn.1804c40d0
jmp 0x1804c24d4
mov eax, dword [0x1807ada98]
sub eax, dword [0x1807ada9c]
or eax, 0xc05211c5
xor eax, 0x23b048
xor eax, 0x9c402689
cmp eax, 0xb7da3afd
ja 0x1804c29ce
jmp 0x1804c24fc
mov eax, dword [0x1807adaa0]
or eax, dword [0x1807adaa4]
mov ecx, 0x82b4d98
xor edx, edx
div ecx
or eax, 0x8bd10b97
mov ecx, 0xbe185041
xor edx, edx
div ecx
mov rcx, qword [rdi]
cmp eax, 0x6458d264
je 0x1804c24fc
jmp 0x1804c252b
mov eax, dword [0x1807adaa8]
and eax, dword [0x1807adaac]
and eax, 0xaf9039c5
and eax, 0x5f1d9485
imul eax, eax, 0xa3873699
cmp eax, 0xdc1367d5
jae 0x1804c29df
mov eax, dword [0x1807adab0]
xor edx, edx
div dword [0x1807adab4]
or eax, 0x10637edf
add eax, 0x7c787786
or eax, 0x8505170
lock dec qword [rcx]
sete dl
cmp eax, 0x4d531e22
je 0x1804c29df
test dl, 1
jne 0x1804c2588
jmp 0x1804c25e0
mov rcx, rdi
call fcn.1804c8610
mov eax, dword [0x1807adab8]
add eax, dword [0x1807adabc]
sub eax, 0x6ddd8469
or eax, 0xd783087d
xor eax, 0x59e8ff45
cmp eax, 0x54606922
je 0x1804c29f7
mov eax, dword [0x1807adac0]
xor edx, edx
div dword [0x1807adac4]
sub eax, 0x4e42a03d
sub eax, 0x5e4bd31e
add eax, 0x8ba99d7
cmp eax, 0x2dde47fb
je 0x1804c29f7
jmp 0x1804c25e0
mov rbx, rsi
add rbx, 0x18
mov eax, dword [0x1807adac8]
xor eax, dword [0x1807adacc]
sub eax, 0x8095085f
xor eax, 0x89fec62a
imul eax, eax, 0x8c7ea797
cmp eax, 0x68f04565
je 0x1804c2a08
jmp 0x1804c2610
mov eax, dword [0x1807adad0]
sub eax, dword [0x1807adad4]
imul ecx, eax, 0xcf10529a
add ecx, 0xa2a6264e
or ecx, 0x1910225f
mov r14, rsi
add r14, 0x20
mov r15, qword [rsi + 0x20]
mov r12, qword [rsi + 0x28]
cmp r12, 0
sete al
cmp ecx, 0xf006adfe
ja 0x1804c2610
jmp 0x1804c264e
test al, 1
jne 0x1804c2826
jmp 0x1804c2658
xor eax, eax
jmp 0x1804c265c
mov ecx, dword [0x1807adad8]
imul ecx, dword [0x1807adadc]
add ecx, 0x30cb5d8a
or ecx, 0x97787720
and ecx, 0xf0898545
cmp ecx, 0x8a7456aa
jb 0x1804c2a15
mov ecx, dword [0x1807adae0]
add ecx, dword [0x1807adae4]
add ecx, 0x7d534954
and ecx, 0x846257fb
imul r9d, ecx, 0x5731f788
mov rcx, rax
shl rcx, 4
mov rdi, r15
add rdi, rcx
mov r13, rax
add r13, 1
mov rcx, rdi
add rcx, 8
mov rdx, qword [rdi + 8]
cmp rdx, 0
sete r8b
cmp r9d, 0x2a2f3ee6
jb 0x1804c2a15
test r8b, 1
jne 0x1804c2749
jmp 0x1804c26e2
lock dec qword [rdx]
sete al
jmp 0x1804c26eb
test al, 1
jne 0x1804c26f1
jmp 0x1804c2749
call fcn.1804c40d0
mov eax, dword [0x1807adae8]
xor edx, edx
div dword [0x1807adaec]
mov ecx, 0x37a76ffe
xor edx, edx
div ecx
imul eax, eax, 0x829fcf5c
and eax, 0xb1e31cc5
cmp eax, 0xb68da05d
ja 0x1804c2a26
jmp 0x1804c2725
mov eax, dword [0x1807adaf0]
and eax, dword [0x1807adaf4]
and eax, 0xe91d05a
sub eax, 0x6d4ab334
and eax, 0xcbe31910
cmp eax, 0xd7214fdd
je 0x1804c2725
jmp 0x1804c2749
mov rax, qword [rdi]
mov rcx, 0xffffffffffffffff
lock xadd qword [rax], rcx
mov eax, dword [0x1807adaf8]
xor eax, dword [0x1807adafc]
mov r8d, 0x753b4ede
xor edx, edx
div r8d
imul eax, eax, 0x6e399eb6
and eax, 0x8b75cf73
cmp eax, 0x5a8e1a75
jae 0x1804c2a37
mov edx, dword [0x1807adb00]
add edx, dword [0x1807adb04]
sub edx, 0x7a627b86
and edx, 0xd922ded0
xor edx, 0xd7bc8281
cmp rcx, 1
sete al
cmp edx, 0x7760c2c6
je 0x1804c2a37
test al, 1
jne 0x1804c27bc
jmp 0x1804c2812
mov rcx, rdi
call fcn.1804c8610
mov eax, dword [0x1807adb08]
xor eax, dword [str.wxf]
or eax, 0x6f020936
xor eax, 0xfe52fd71
or eax, 0x26f6e582
cmp eax, 0x92e0fe2c
je 0x1804c2a44
mov eax, dword [0x1807adb10]
sub eax, dword [0x1807adb14]
and eax, 0x5db7e38a
sub eax, 0xd101b766
sub eax, 0x72269850
cmp eax, 0xea241baf
jae 0x1804c2a44
jmp 0x1804c2812
cmp r13, r12
sete al
test al, 1
mov rax, r13
jne 0x1804c2824
jmp 0x1804c265c
jmp 0x1804c2826
mov eax, dword [0x1807adb18]
sub eax, dword [0x1807adb1c]
add eax, 0x970761eb
imul eax, eax, 0x7556b344
and eax, 0x5bbba563
cmp eax, 0x947619c8
je 0x1804c2a51
mov eax, dword [0x1807adb20]
xor edx, edx
div dword [0x1807adb24]
sub eax, 0xba03d0e7
mov ecx, 0x1da8baf7
xor edx, edx
div ecx
mov ecx, 0x1197a6c9
xor edx, edx
div ecx
cmp eax, 0x3e4e460f
ja 0x1804c2a51
jmp 0x1804c287f
mov eax, dword [0x1807adb28]
add eax, dword [0x1807adb2c]
and eax, 0xa9f58811
and eax, 0x75d0eb9a
imul eax, eax, 0xb5e4a27b
cmp eax, 0x3e4b054
jb 0x1804c2a62
mov eax, dword [0x1807adb30]
and eax, dword [0x1807adb34]
or eax, 0xf1b0edee
xor eax, 0x72a311c3
mov ecx, 0xd0f582f6
xor edx, edx
div ecx
mov rdx, qword [rbx]
cmp rdx, 0
sete cl
cmp eax, 0xf3069983
ja 0x1804c2a62
jmp 0x1804c28dc
test cl, 1
jne 0x1804c294d
jmp 0x1804c28e3
mov rcx, qword [r14]
shl rdx, 4
mov r8d, 8
call fcn.1804cafa0
mov eax, dword [0x1807adb38]
xor edx, edx
div dword [0x1807adb3c]
mov ecx, 0x9f687f69
xor edx, edx
div ecx
xor eax, 0xd137e7a7
or eax, 0x73a9e1c6
cmp eax, 0x5d58d294
je 0x1804c2a6f
mov eax, dword [0x1807adb40]
or eax, dword [0x1807adb44]
add eax, 0xecece438
and eax, 0xbd6a4ec5
mov ecx, 0x96aa2fab
xor edx, edx
div ecx
cmp eax, 0xe525a849
jae 0x1804c2a6f
jmp 0x1804c294d
mov rax, 0xffffffffffffffff
cmp rsi, rax
sete al
test al, 1
jne 0x1804c298b
jmp 0x1804c2960
mov rax, rsi
add rax, 8
lock dec qword [rax]
sete al
jmp 0x1804c2970
test al, 1
jne 0x1804c2976
jmp 0x1804c298b
mov rcx, rsi
mov edx, 0x40
mov r8d, 8
call fcn.1804cafa0
jmp 0x1804c298b
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
add esp, dword [0x14eba4800]
invalid
cwde
adc dl, dl
mov bl, dh
jrcxz 0x1804c29a1
rcl byte [rax - 0x16ea7358]
jle 0x1804c29b5
test al, 0x8c
adc eax, 0xfffa7ee9
call qword [rdx + 0x68]
mov edi, 0x2a07cea6
sbb eax, 0x57a220c3
invalid
push rdx
push 0x7cea6bf
sub bl, byte [0x1d7ee4a8c]
jmp 0x1804c24a3
in al, 0xbb
popfq
test dword [rcx], ecx
sub byte [rbx], bl
ja 0x1804c2a44
push 0xa
or eax, 0xfffb1be9
call [0x162b6d231]
sbb eax, 0xe26aa84d
invalid
xor al, 0x4c
pop rsp
invalid
mov ebp, 0x551513c1
fstp dword [rdx + 0x15]
jmp 0x1804c260e
movabs dword [0x34529094eda94638], eax
ret 0xe100
pop rdi
invalid
call rbp
invalid
movabs eax, dword [0x41e9cc4f9dd6d30c]
std
invalid
test al, 0x76
loop 0x1804c2a36
cmpsd dword [rsi], dword [rdi]
stc
mov bl, 0x60
jmp 0x1804c27ea
and dword [rdx + 0x11007291], 0x5e
jl 0x1804c2a38
pop rbx
add dword [rsi - 0x21417], ebp
invalid
sbb ebx, dword ds:[rcx - 0x341fd9c4]
mov edx, 0xfffe37e9
dec dword [rdx + 0x397268c3]
in al, 0xa6
mov al, bl
push 0xffffffffa6e43972
invalid