Function at 0x18045b240
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x1807a2a70]
xor edx, edx
div dword [0x1807a2a74]
or eax, 0x35e45e0c
mov ecx, 0x4d593294
xor edx, edx
div ecx
or eax, 0x732c9490
cmp eax, 0x6fb9dceb
jbe 0x18045b567
jmp 0x18045b281
mov eax, dword [0x1807a2a78]
mov ecx, dword [0x1807a2a7c]
or eax, ecx
xor eax, 0xd87eb19b
imul ecx, eax, 0x4ea4d403
add ecx, 0xbf277402
mov eax, 0x20
call fcn.180698e80
sub rsp, rax
mov rdi, rsp
mov eax, 0x20
call fcn.180698e80
sub rsp, rax
mov rbx, rsp
cmp ecx, 0x52420900
jae 0x18045b281
jmp 0x18045b2ca
mov r9, qword [rsi]
xor ecx, ecx
cmp r9, 0xffffffffffffffff
je 0x18045b53d
mov eax, dword [0x1807a2a80]
xor edx, edx
div dword [0x1807a2a84]
xor eax, 0x3362d8ab
or eax, 0x7ea5b0fb
xor eax, 0x1a71b95
cmp eax, 0x7b65c7c2
jb 0x18045b574
jmp 0x18045b303
mov eax, dword [0x1807a2a88]
imul eax, dword [str.dJ_Zt]
imul ecx, eax, 0xdf4892f5
and ecx, 0x261fc842
add ecx, 0xc36cd1d0
mov rax, r9
add rax, 1
mov rdx, r9
shl rdx, 1
mov r8, rdx
sub r8, rax
cmova rax, rdx
cmp ecx, 0xf2e98b03
je 0x18045b303
jmp 0x18045b343
mov rcx, rax
sub rcx, 5
mov r14d, 4
cmovae r14, rax
mov ecx, 0x18
mov rax, r14
mul rcx
mov r15, rax
seto al
movabs rcx, 0x7ffffffffffffff8
cmp r15, rcx
seta cl
or al, cl
xor ecx, ecx
test al, 1
jne 0x18045b53d
mov r10, rsi
add r10, 8
cmp r9, 0
sete cl
mov eax, dword [0x1807a2a90]
imul eax, dword [0x1807a2a94]
or eax, 0x51ef39ec
and eax, 0x1cf96c3
or eax, 0xaf02f595
cmp eax, 0xaf1570bf
jbe 0x18045b585
jmp 0x18045b3b8
mov eax, dword [0x1807a2a98]
xor edx, edx
div dword [0x1807a2a9c]
and eax, 0x80d4de47
and eax, 0x3528ebb4
and eax, 0xbaf724cf
cmp eax, 0x4303cb59
ja 0x18045b3b8
xor r13d, r13d
test cl, 1
jne 0x18045b450
jmp 0x18045b3e6
mov rax, qword [r10]
imul rcx, r9, 0x18
mov qword [rdi], rax
mov eax, dword [0x1807a2aa0]
and eax, dword [0x1807a2aa4]
and eax, 0x2e844f35
imul eax, eax, 0x127ebcee
mov r8d, 0xcea1ae15
xor edx, edx
div r8d
cmp eax, 0x5d1e22aa
ja 0x18045b596
mov eax, dword [0x1807a2aa8]
and eax, dword [0x1807a2aac]
imul eax, eax, 0xdc5041b1
xor eax, 0x7992c420
xor eax, 0x7b4a6fbe
mov qword [rdi + 0x10], rcx
cmp eax, 0xb2c8266a
jb 0x18045b596
mov r13d, 8
jmp 0x18045b450
mov qword [rbp], r10
mov eax, dword [0x1807a2ab0]
xor eax, dword [0x1807a2ab4]
xor eax, 0x4dcadee5
imul eax, eax, 0xba96b7f1
or eax, 0x832165f
cmp eax, 0xf1611637
ja 0x18045b5a7
mov eax, dword [0x1807a2ab8]
imul eax, dword [str.J_Zm]
imul eax, eax, 0xf1ed1ef5
mov ecx, 0xd3aec995
xor edx, edx
div ecx
mov r12d, eax
sub r12d, 0x10cc1668
mov qword [rdi + 8], r13
sub rsp, 0x20
mov rcx, rbx
mov edx, 8
mov r8, r15
mov r9, rdi
call fcn.18045a8b0
add rsp, 0x20
cmp qword [rbx], 0
sete cl
mov rax, rbx
add rax, 8
cmp r12d, 0x9070a614
je 0x18045b5a7
test cl, 1
jne 0x18045b549
jmp 0x18045b4e2
mov rcx, qword [rax]
mov r8, qword [rbx + 0x10]
mov eax, dword [0x1807a2ac0]
and eax, dword [0x1807a2ac4]
mov r9d, 0x69a8fc0b
xor edx, edx
div r9d
or eax, 0x146a3e9b
sub eax, 0x60e16593
cmp eax, 0x5a4ce2be
jb 0x18045b5d3
jmp 0x18045b517
mov eax, dword [0x1807a2ac8]
or eax, dword [0x1807a2acc]
and eax, 0x7a66a75a
and eax, 0xf97c6710
xor eax, 0x6ea5a4e
cmp eax, 0x9b18aa0e
ja 0x18045b517
jmp 0x18045b53b
jmp 0x18045b53d
sub rsp, 0x20
mov rdx, r8
call fcn.18063bc30
mov rax, qword [rax]
mov rcx, qword [rbp]
mov qword [rcx], rax
mov qword [rsi], r14
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
jno 0x18045b5ae
movabs al, byte [0xfd0be9051960e3fa]
invalid
push rdx
add edx, eax
mov ebp, 0x7e0135cd
pop rdi
stosb byte [rdi], al
outsd dx, dword [rsi]
xor ch, cl
jl 0x18045b580
jmp 0x18045b301
invalid
stc
mov edi, dword [rdi + rax*8 + 0x4e]
cwde
fisttp qword [rbx + 0x3692d88]
jmp 0x18045b3b6
mov edx, dword [rax - 0x8c76090]
cmp byte [rbx], dh
mov qword [rdi + 0x10], rcx
jmp 0x18045b41d
movsd dword [rdi], dword [rsi]
mov ebx, 0x313d23e1
mov dh, 0x1f
mov qword [rdi + 8], r13
sub rsp, 0x20
mov rcx, rbx
mov edx, 8
mov r8, r15
mov r9, rdi
call fcn.18045a8b0
add rsp, 0x20
jmp 0x18045b47b
invalid
movabs eax, dword [0xe9ac381dc9b501d6]
xor eax, 0x55ffffff
push rbp
push r14
push rsi
push rdi
push rbx
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x1807a2ad0]
add eax, dword [0x1807a2ad4]
imul eax, eax, 0x1a53b4a4
and eax, 0xd315ddf5
mov ecx, 0x747c31d0
xor edx, edx
div ecx
cmp eax, 0x1d881ea
ja 0x18045b833
mov ecx, dword [0x1807a2ad8]
mov eax, dword [0x1807a2adc]
and ecx, eax
add ecx, 0x8b5cb3f3
xor ecx, 0x326ac0ab
mov eax, 0x20
call fcn.180698e80
sub rsp, rax
mov r9, rsp
mov eax, 0x20
call fcn.180698e80
sub rsp, rax
mov rdi, rsp
mov r10, qword [rsi]
cmp ecx, 0xcefd8040
jbe 0x18045b833
jmp 0x18045b662
xor ecx, ecx
cmp r10, 0xffffffffffffffff
je 0x18045b817
mov rcx, r10
add rcx, 1
mov rax, r10
shl rax, 1
mov rdx, rax
sub rdx, rcx
cmova rcx, rax
mov eax, dword [0x1807a2ae0]
or eax, dword [0x1807a2ae4]
and eax, 0xaf1cf493
sub eax, 0x6f8a1fed
and eax, 0x531f0dbb
cmp eax, 0x201593e5
jae 0x18045b840
jmp 0x18045b6ad
mov eax, dword [0x1807a2ae8]
imul eax, dword [0x1807a2aec]
sub eax, 0x193d18a6
imul eax, eax, 0x8cc2374
imul r11d, eax, 0x4e13ce77
mov rax, rcx
sub rax, 5
mov ebx, 4
cmovae rbx, rcx
mov edx, 0x70
mov rax, rbx
mul rdx
mov r8, rax
seto al
cmp r11d, 0x1084dfc9
jb 0x18045b6ad
jmp 0x18045b6f8
movabs rcx, 0x7ffffffffffffff8
cmp r8, rcx
seta cl
or al, cl
xor ecx, ecx
test al, 1
jne 0x18045b817
mov r14, rsi
add r14, 8
mov eax, dword [0x1807a2af0]
sub eax, dword [0x1807a2af4]
add eax, 0x1a3df065
imul eax, eax, 0x12009ec0
imul eax, eax, 0xcc7c193c
cmp eax, 0xbad4207d
ja 0x18045b851
mov eax, dword [0x1807a2af8]
or eax, dword [0x1807a2afc]
mov ecx, 0x84d6def8
xor edx, edx
div ecx
and eax, 0x9b9d2814
add eax, 0x727963c4
cmp r10, 0
sete cl
cmp eax, 0x115f0bfd
jbe 0x18045b851
xor eax, eax
test cl, 1
jne 0x18045b796
jmp 0x18045b77d
mov rcx, qword [r14]
imul rax, r10, 0x70
mov qword [r9], rcx
mov rcx, r9
add rcx, 0x10
mov qword [rcx], rax
mov eax, 8
mov qword [r9 + 8], rax
sub rsp, 0x20
mov rcx, rdi
mov edx, 8
call fcn.18045a8b0
add rsp, 0x20
mov rcx, qword [rdi]
mov rax, rdi
add rax, 8
cmp rcx, 0
je 0x18045b820
mov rcx, qword [rax]
mov eax, dword [0x1807a2b00]
imul eax, dword [0x1807a2b04]
imul eax, eax, 0xf1a420fc
xor eax, 0x13925d53
imul eax, eax, 0x902b527b
cmp eax, 0x74802cf6
jb 0x18045b85e
mov eax, dword [0x1807a2b08]
add eax, dword [0x1807a2b0c]
and eax, 0xc636e09b
xor eax, 0xab5d032
imul edx, eax, 0xf3e45587
mov rax, rdi
add rax, 0x10
cmp edx, 0xc690faa4
ja 0x18045b85e
jmp 0x18045b814
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.18063bc30
mov rax, qword [rax]
mov qword [r14], rax
mov qword [rsi], rbx
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
iretd
invalid
movabs byte [0xe94831b02e0da333], al
in eax, 0xfe
invalid
rcr byte [rcx - 0x4d], 1
or byte [rax + rax], ah
cmpsd dword [rsi], dword [rdi]
and eax, 0xffff7ce9
dec esp
int3