Function at 0x1804b5580
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov rsi, rcx
mov r8, qword [rsi]
mov eax, dword [0x1807ac110]
imul eax, dword [0x1807ac114]
add eax, 0x227a2c60
and eax, 0xdf557e4f
sub eax, 0xf9694773
cmp eax, 0x8156cc90
jae 0x1804b5e37
jmp 0x1804b55b9
mov eax, dword [0x1807ac118]
or eax, dword [0x1807ac11c]
mov ecx, 0x29692bce
xor edx, edx
div ecx
imul edx, eax, 0x2117d230
xor edx, 0x71b11ab6
cmp r8, 0
sete al
mov rcx, rsi
add rcx, 8
cmp edx, 0x51dab034
je 0x1804b55b9
jmp 0x1804b55f2
test al, 1
jne 0x1804b55fb
jmp 0x1804b5b36
mov eax, dword [0x1807ac120]
imul eax, dword [0x1807ac124]
and eax, 0x3444d008
imul eax, eax, 0xfcd067a9
add eax, 0x9c8a9564
cmp eax, 0xf18c6150
ja 0x1804b5e44
mov eax, dword [0x1807ac128]
sub eax, dword [0x1807ac12c]
or eax, 0xcabd3132
add eax, 0x6a1fcd2a
mov r8d, 0xf65fa144
xor edx, edx
div r8d
cmp eax, 0xcc3d2454
jae 0x1804b5e44
jmp 0x1804b5651
mov eax, dword [0x1807ac130]
add eax, dword [0x1807ac134]
sub eax, 0xdf8627bf
add eax, 0xbb3ee0f9
and eax, 0x30f0214
cmp eax, 0xffe0ec2
je 0x1804b5e51
mov eax, dword [0x1807ac138]
sub eax, dword [0x1807ac13c]
imul eax, eax, 0x248569f8
add eax, 0x54328cc1
mov r8d, 0xaa6881a8
xor edx, edx
div r8d
mov r14, qword [rcx]
movabs rdx, 0x8000000000000000
cmp r14, rdx
sete dl
cmp eax, 0x322b30e1
jae 0x1804b5e51
jmp 0x1804b56b9
mov eax, dword [0x1807ac140]
sub eax, dword [0x1807ac144]
add eax, 0x3f95bcd4
xor eax, 0xba812427
imul eax, eax, 0xf0acdac6
cmp eax, 0x3784242e
je 0x1804b5e62
jmp 0x1804b56e2
mov eax, dword [0x1807ac148]
add eax, dword [0x1807ac14c]
and eax, 0xec513c8c
xor eax, 0x37c84993
or eax, 0x4d0d6598
cmp eax, 0x44121180
je 0x1804b56e2
test dl, 1
jne 0x1804b5a6f
jmp 0x1804b570f
mov rax, rsi
add rax, 0x28
mov rdx, qword [rax]
cmp rdx, 0
je 0x1804b5783
mov rcx, qword [rsi + 0x20]
shl rdx, 5
mov r8d, 8
call fcn.1804cafa0
mov eax, dword [0x1807ac150]
sub eax, dword [0x1807ac154]
imul eax, eax, 0x96f6f40d
add eax, 0x80dc6ace
sub eax, 0x12d65bf3
cmp eax, 0x90bf6bce
ja 0x1804b5e73
mov eax, dword [0x1807ac158]
imul eax, dword [0x1807ac15c]
or eax, 0xd342fd2e
and eax, 0x7a9d6475
imul eax, eax, 0x7b531430
cmp eax, 0xd982445
jb 0x1804b5e73
jmp 0x1804b5783
mov eax, dword [0x1807ac160]
sub eax, dword [0x1807ac164]
imul eax, eax, 0xc4b932bb
mov ecx, 0xf0d8fd1a
xor edx, edx
div ecx
sub eax, 0x4c51f3b0
cmp eax, 0xc572b844
je 0x1804b5e84
jmp 0x1804b57b0
mov eax, dword [0x1807ac168]
imul eax, dword [0x1807ac16c]
or eax, 0x159e5f06
xor eax, 0x8f7ba107
and eax, 0xf3209923
cmp eax, 0xea7e2674
jb 0x1804b57b0
jmp 0x1804b57d5
mov eax, dword [0x1807ac170]
and eax, dword [0x1807ac174]
sub eax, 0xab8d7fcc
imul eax, eax, 0x648583b6
and eax, 0x20c5fd40
cmp eax, 0x503f8f57
je 0x1804b5e91
jmp 0x1804b57fe
mov eax, dword [0x1807ac178]
xor edx, edx
div dword [0x1807ac17c]
imul ecx, eax, 0x64ab1291
sub ecx, 0xfd2a141f
add ecx, 0x1c8f8e9b
cmp r14, 0
sete al
cmp ecx, 0x73aaffa4
jbe 0x1804b57fe
jmp 0x1804b582f
test al, 1
jne 0x1804b5957
jmp 0x1804b5839
mov eax, dword [0x1807ac180]
imul eax, dword [0x1807ac184]
imul eax, eax, 0x84cc45f7
mov ecx, 0xd3a2de26
xor edx, edx
div ecx
sub eax, 0x82509f3e
cmp eax, 0x44cb969d
je 0x1804b5e9e
mov eax, dword [0x1807ac188]
xor eax, dword [0x1807ac18c]
or eax, 0xb5f03a79
imul eax, eax, 0x6773d7c4
mov ecx, 0xe4543b40
xor edx, edx
div ecx
mov rdi, qword [rsi + 0x10]
cmp eax, 0x6cc65cda
ja 0x1804b5e9e
jmp 0x1804b5896
mov eax, dword [0x1807ac190]
xor edx, edx
div dword [0x1807ac194]
or eax, 0x30deb956
imul eax, eax, 0x653b8021
sub eax, 0x86ba5b1a
cmp eax, 0x3ce057ac
jae 0x1804b5eaf
jmp 0x1804b58c1
mov eax, dword [0x1807ac198]
or eax, dword [0x1807ac19c]
xor eax, 0x3f642597
or eax, 0x313fc4a5
xor eax, 0xcc75e0db
mov rbx, r14
shl rbx, 4
cmp eax, 0x56010744
ja 0x1804b58c1
jmp 0x1804b58ec
mov eax, dword [0x1807ac1a0]
or eax, dword [0x1807ac1a4]
or eax, 0x8e361079
mov ecx, 0x65165335
xor edx, edx
div ecx
mov ecx, 0xd2961f02
xor edx, edx
div ecx
cmp eax, 0x3928612c
je 0x1804b5ebc
jmp 0x1804b591c
mov eax, dword [0x1807ac1a8]
xor edx, edx
div dword [str.y53v]
imul ebp, eax, 0x3a6afe6e
add ebp, 0x852263c4
add ebp, 0x3ddee708
mov rcx, rdi
mov rdx, rbx
mov r8d, 8
call fcn.1804cafa0
cmp ebp, 0xfc205ee8
je 0x1804b591c
jmp 0x1804b5957
add rsi, 0x30
mov eax, dword [0x1807ac1b0]
or eax, dword [0x1807ac1b4]
and eax, 0x380675cc
and eax, 0xcf223f77
xor eax, 0x7f2c3823
cmp eax, 0xe9445bf
jbe 0x1804b5ede
mov eax, dword [0x1807ac1b8]
xor eax, dword [0x1807ac1bc]
sub eax, 0x83858c67
mov ecx, 0x812ef117
xor edx, edx
div ecx
imul eax, eax, 0x61420fde
cmp eax, 0x6ad19e1c
jae 0x1804b5ede
jmp 0x1804b59ae
mov eax, dword [0x1807ac1c0]
and eax, dword [0x1807ac1c4]
and eax, 0x2ac3cfeb
and eax, 0x17d8f63b
sub eax, 0x902bc90c
cmp eax, 0xecdcb9f1
ja 0x1804b5eeb
mov eax, dword [0x1807ac1c8]
or eax, dword [0x1807ac1cc]
sub eax, 0xcabee0af
mov ecx, 0x9d884017
xor edx, edx
div ecx
add eax, 0x30b39017
mov rcx, qword [rsi]
lock dec qword [rcx]
sete cl
cmp eax, 0x32771427
ja 0x1804b5eeb
test cl, 1
jne 0x1804b5a12
jmp 0x1804b5ddd
mov eax, dword [0x1807ac1d0]
and eax, dword [0x1807ac1d4]
and eax, 0xefa73f74
sub eax, 0xabab97b6
add eax, 0xbf175a0a
cmp eax, 0x3a89df88
jb 0x1804b5f02
mov eax, dword [0x1807ac1d8]
mov ecx, dword [0x1807ac1dc]
sub eax, ecx
and eax, 0xec983b5
add eax, 0xbcce2029
or eax, 0xa5d89629
cmp eax, 0xc52f8639
jbe 0x1804b5f02
jmp 0x1804b5a62
mov rcx, rsi
call fcn.1804b9d30
jmp 0x1804b5ddd
add rsi, 0x10
mov eax, dword [0x1807ac1e0]
or eax, dword [0x1807ac1e4]
or eax, 0xc3028214
imul eax, eax, 0x24eaee4b
and eax, 0xe8926c77
cmp eax, 0xaaf16ff3
je 0x1804b5f13
mov eax, dword [0x1807ac1e8]
and eax, dword [0x1807ac1ec]
imul ecx, eax, 0xd1280420
or ecx, 0x200ed4e0
or ecx, 0xb054a90c
mov rax, qword [rsi]
lock dec qword [rax]
sete al
cmp ecx, 0x7349047c
jb 0x1804b5f13
test al, 1
jne 0x1804b5ad7
jmp 0x1804b5ddd
mov eax, dword [0x1807ac1f0]
add eax, dword [0x1807ac1f4]
and eax, 0xce073ab1
and eax, 0x9238703d
imul eax, eax, 0xf89242b6
cmp eax, 0x167ac657
jae 0x1804b5f2a
mov eax, dword [0x1807ac1f8]
mov ecx, dword [0x1807ac1fc]
xor eax, ecx
xor eax, 0xa912d025
or eax, 0x6652cd2
imul eax, eax, 0xe26281b9
cmp eax, 0x46d89629
je 0x1804b5f2a
jmp 0x1804b5b29
mov rcx, rsi
call fcn.1804c1b60
jmp 0x1804b5ddd
mov rdi, qword [rcx]
movabs rax, 0x8000000000000000
cmp rdi, rax
sete al
test al, 1
jne 0x1804b5dbf
jmp 0x1804b5b53
mov eax, dword [0x1807ac200]
and eax, dword [0x1807ac204]
or eax, 0x7163e16c
mov ecx, 0x84f336c7
xor edx, edx
div ecx
imul eax, eax, 0x78881346
cmp eax, 0x5efc6161
ja 0x1804b5f3b
mov eax, dword [0x1807ac208]
xor edx, edx
div dword [0x1807ac20c]
imul eax, eax, 0x23a1474f
add eax, 0xf3abe480
mov ecx, 0x7a2e7d5d
xor edx, edx
div ecx
cmp eax, 0xe694278d
je 0x1804b5f3b
jmp 0x1804b5bad
mov eax, dword [0x1807ac210]
and eax, dword [0x1807ac214]
or eax, 0x2840a4ec
mov ecx, 0x2d7e9859
xor edx, edx
div ecx
imul eax, eax, 0x96e54b7c
cmp eax, 0xbe0d2eea
je 0x1804b5f48
mov eax, dword [0x1807ac218]
imul eax, dword [0x1807ac21c]
imul eax, eax, 0xe3dd131f
imul ecx, eax, 0x8f8ce056
and ecx, 0xb5372aee
mov r8, qword [rsi + 0x28]
cmp r8, 0
sete al
cmp ecx, 0xbf43f1d9
ja 0x1804b5f48
test al, 1
jne 0x1804b5c87
jmp 0x1804b5c14
mov eax, dword [0x1807ac220]
xor edx, edx
div dword [0x1807ac224]
mov ecx, 0xf7a0115e
xor edx, edx
div ecx
sub eax, 0xa1e51b98
imul eax, eax, 0xbbb856fd
cmp eax, 0x13a14e00
jbe 0x1804b5f55
jmp 0x1804b5c43
mov ecx, dword [0x1807ac228]
xor ecx, dword [0x1807ac22c]
and ecx, 0xb1fe2e23
sub ecx, 0xf13a3649
and ecx, 0xd6dc9d86
mov rax, rsi
add rax, 0x20
cmp ecx, 0xd6d25980
je 0x1804b5c43
jmp 0x1804b5c72
mov rcx, qword [rax]
shl r8, 5
mov rdx, r8
mov r8d, 8
call fcn.1804cafa0
cmp rdi, 0
sete al
test al, 1
jne 0x1804b5cf6
jmp 0x1804b5c94
mov rcx, qword [rsi + 0x10]
mov eax, dword [0x1807ac230]
and eax, dword [0x1807ac234]
add eax, 0x8dc217c9
and eax, 0xf8a865b8
add eax, 0x40e25a0a
cmp eax, 0x896e8c0
je 0x1804b5f62
jmp 0x1804b5cc0
mov eax, dword [0x1807ac238]
add eax, dword [0x1807ac23c]
or eax, 0xdf291be0
add eax, 0x53b9f472
or eax, 0x5d5117f4
mov rdx, rdi
shl rdx, 4
cmp eax, 0xaef074d4
jae 0x1804b5cc0
jmp 0x1804b5ceb
mov r8d, 8
call fcn.1804cafa0
mov rcx, rsi
add rcx, 0x30
mov rax, qword [rsi + 0x30]
lock dec qword [rax]
sete al
test al, 1
jne 0x1804b5d11
jmp 0x1804b5ddd
mov eax, dword [0x1807ac240]
sub eax, dword [0x1807ac244]
mov r8d, 0x930882c9
xor edx, edx
div r8d
mov r8d, 0x41c8fb38
xor edx, edx
div r8d
mov r8d, 0xba0dcf43
xor edx, edx
div r8d
cmp eax, 0xfb190698
je 0x1804b5f6f
jmp 0x1804b5d4b
mov eax, dword [0x1807ac248]
mov edx, dword [0x1807ac24c]
xor eax, edx
or eax, 0xf628c9ba
add eax, 0x129d9fec
cmp eax, 0xd5d7b89b
je 0x1804b5d4b
jmp 0x1804b5d6c
call fcn.1804b9d30
mov eax, dword [0x1807ac250]
imul eax, dword [0x1807ac254]
or eax, 0x9b8224ed
sub eax, 0xf903c9d8
xor eax, 0x8281687e
cmp eax, 0x1b80f105
jbe 0x1804b5f7c
jmp 0x1804b5d9a
mov eax, dword [0x1807ac258]
and eax, dword [0x1807ac25c]
imul eax, eax, 0xb4489443
or eax, 0xdcf72848
xor eax, 0x610173b8
cmp eax, 0xafb75dff
jbe 0x1804b5d9a
jmp 0x1804b5ddd
add rsi, 0x10
mov rax, qword [rsi]
lock dec qword [rax]
sete al
test al, 1
jne 0x1804b5dd3
jmp 0x1804b5ddd
mov rcx, rsi
call fcn.1804c1b60
jmp 0x1804b5ddd
mov eax, dword [0x1807ac260]
imul eax, dword [0x1807ac264]
and eax, 0x687b7668
add eax, 0x2ab333d1
mov ecx, 0x930756e9
xor edx, edx
div ecx
cmp eax, 0x7e9af798
jae 0x1804b5f89
jmp 0x1804b5e0a
mov eax, dword [0x1807ac268]
add eax, dword [0x1807ac26c]
xor eax, 0x8d9e80c7
add eax, 0xa9a0834b
and eax, 0xb1a92e9
cmp eax, 0xb2b57f38
ja 0x1804b5e0a
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
shl al, cl
mov ecx, 0x6026e03c
jmp 0x1804b55b7
rol dword [rbp + 9], 0xfc
mov ebp, 0xe978f9cb
sal bh, cl
invalid
fdiv dword [r10 + rsi*4 + 0x49]
fdiv dword [rdx + rsi*4 - 0x63]
mov bl, 0xf0
add cl, ch
adc eax, 0x43fffff8
int 0x6a
int 0x6a
push 0xfffffffffffffffd
std
mov ah, 0x5e
invalid
mov edx, ds
xchg esi, eax
or al, 0x70
invalid
lea eax, [rdi - 0x7872581f]
loope 0x1804b5e33
jmp 0x1804b57ae
push rcx
pop rsi
pop rbp
test byte [rcx], bh
invalid
leave
jp 0x1804b5e64
sub r10b, r9b
adc byte [rbx - 0x16992995], bl
mov dh, 0xf9
invalid
test eax, 0x11d71646
outsb dx, byte [rsi]
mov edx, 0xfa03e9f8
invalid
enter 0x6d89, 0x2a
fcomp dword [rax - 0x47]
invalid
invalid
mov dl, 0x31
invalid
mov al, 0x25
fimul dword [rbx + rdi*2 + 0x1cd7e687]
movabs rax, qword [0xea3efffffb25e922]
in al, 0xe9
in eax, 0xcc
mov dl, 0x48
mov eax, dword [rsi]
lock dec qword [rax]
sete al
jmp 0x1804b5a9a
invalid
retf
invalid
invalid
mov bh, 0x70
fimul dword [rbx + 0x76]
invalid
sub byte ds:[rdi], dh
rcl ebp, 1
mov bh, byte [rcx - 0x2b016ce]
invalid
outsd dx, dword [rsi]
and eax, 0x3c26f05d
adc dword [rdi], ecx
jmp 0x1804b5d49
jmp 0x183e3be08
or byte [rax - 0x1c4ee639], ah
test al, 0xb3
jmp 0x1804b5e08