Function at 0x180411e90
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x18079acb8]
or eax, dword [0x18079acbc]
or eax, 0x791dd124
add eax, 0xf8167d49
mov ecx, 0x4c8d9f26
xor edx, edx
div ecx
cmp eax, 0x5d794280
je 0x180412338
mov ecx, dword [0x18079acc0]
mov eax, dword [0x18079acc4]
and ecx, eax
add ecx, 0x67df695e
mov eax, 0x10
call fcn.180698e80
sub rsp, rax
mov rbx, rsp
mov eax, 0x10
call fcn.180698e80
sub rsp, rax
mov rdi, rsp
cmp ecx, 0xf55a9808
je 0x180412338
jmp 0x180411f08
sub rsp, 0x20
mov rcx, rsi
call fcn.18063b2b0
add rsp, 0x20
mov rcx, rax
mov rax, rcx
and rax, 8
cmp rax, 0
sete r8b
mov eax, dword [0x18079acc8]
and eax, dword [0x18079accc]
mov r9d, 0x6c5d4182
xor edx, edx
div r9d
mov r9d, 0x3cf5a7c5
xor edx, edx
div r9d
mov r9d, 0x8d73f7e2
xor edx, edx
div r9d
cmp eax, 0xef1691a2
jae 0x180412349
jmp 0x180411f64
mov eax, dword [0x18079acd0]
xor edx, edx
div dword [0x18079acd4]
add eax, 0xe0cc518b
add eax, 0xda5231b0
xor eax, 0x21e23941
cmp eax, 0x2a602384
je 0x180411f64
test r8b, 1
jne 0x180411f93
jmp 0x18041203c
mov eax, dword [0x18079acd8]
sub eax, dword [0x18079acdc]
imul eax, eax, 0x973f2cda
sub eax, 0x7d158b9b
imul eax, eax, 0x1bbbc2ec
cmp eax, 0x70c8e0ad
je 0x180412356
mov r14d, dword [0x18079ace0]
or r14d, dword [str.e8P_]
and r14d, 0x8d8afaef
add r14d, 0x92697961
or r14d, 0xfb22dca2
mov rcx, qword [rsi + 0x28]
sub rsp, 0x20
call fcn.18063f660
add rsp, 0x20
cmp r14d, 0x1cc46e16
jb 0x180412356
jmp 0x180411ffe
mov qword [rbx], rax
mov qword [rbx + 8], rdx
mov rcx, rsi
add rcx, 0x30
sub rsp, 0x20
call fcn.18034f610
add rsp, 0x20
movabs rax, 0x8000000000000006
mov qword [rsi + 0x30], rax
sub rsp, 0x20
mov rcx, rbx
call fcn.18063f700
add rsp, 0x20
jmp 0x18041216d
mov eax, dword [0x18079ace8]
or eax, dword [0x18079acec]
and eax, 0x50ed9787
or eax, 0x57c39dba
add eax, 0xd76301e0
cmp eax, 0xc2c3986b
ja 0x180412378
jmp 0x180412064
mov eax, dword [0x18079acf0]
or eax, dword [0x18079acf4]
imul eax, eax, 0x5872ce43
imul edx, eax, 0xa9f424c6
sub edx, 0x647117ae
mov rax, rcx
and rax, 0x10
cmp edx, 0xfc6579ed
ja 0x180412064
jmp 0x180412093
cmp rax, 0
sete al
test al, 1
jne 0x18041216d
jmp 0x1804120a4
mov rbx, rsi
add rbx, 0x3c0
mov eax, dword [0x18079acf8]
imul eax, dword [0x18079acfc]
mov ecx, 0x91bf1538
xor edx, edx
div ecx
and eax, 0xac4c0eca
and eax, 0x3e8a8605
cmp eax, 0xbe606085
jae 0x180412389
jmp 0x1804120db
mov eax, dword [0x18079ad00]
xor eax, dword [0x18079ad04]
mov ecx, 0x9e498ee7
xor edx, edx
div ecx
mov r14d, eax
add r14d, 0xaa11377d
and r14d, 0x55928859
sub rsp, 0x20
mov rcx, rbx
call fcn.180640280
add rsp, 0x20
cmp r14d, 0x4c7930e3
jae 0x1804120db
jmp 0x18041211c
mov eax, dword [0x18079ad08]
xor eax, dword [0x18079ad0c]
xor eax, 0xab2c1110
and eax, 0xe1cb92a6
mov ecx, 0xb2ffb1fa
xor edx, edx
div ecx
cmp eax, 0x919d4380
jae 0x1804123a6
jmp 0x180412148
mov eax, dword [0x18079ad10]
xor eax, dword [0x18079ad14]
or eax, 0x45b468b7
xor eax, 0xc9a56cd9
imul eax, eax, 0xf8c44899
cmp eax, 0x10d5029e
jbe 0x180412148
jmp 0x18041216d
mov eax, dword [0x18079ad18]
sub eax, dword [0x18079ad1c]
xor eax, 0xa5d79bb6
and eax, 0x9f64d0f6
add eax, 0xeaf8738e
cmp eax, 0xb3d6c5b8
jb 0x1804123b3
jmp 0x180412195
mov eax, dword [0x18079ad20]
xor eax, dword [0x18079ad24]
mov ecx, 0x45bfafb
xor edx, edx
div ecx
and eax, 0x6f0f1bf1
xor eax, 0xd9e6de46
cmp eax, 0xa427c36c
jb 0x180412195
jmp 0x1804121bd
mov qword [rdi], rsi
mov rbx, rsi
add rbx, 0x20
sub rsp, 0x20
mov rcx, rbx
mov rdx, rdi
call fcn.180643580
add rsp, 0x20
cmp rax, 0
sete al
mov edx, 2
mov ecx, 1
test al, 1
cmovne rdx, rcx
sub rsp, 0x20
mov rcx, rsi
call fcn.18063b2e0
add rsp, 0x20
test al, 1
jne 0x18041220f
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
mov rax, qword [rbx]
lock dec qword [rax]
sete al
test al, 1
jne 0x18041221f
jmp 0x180412231
sub rsp, 0x20
mov rcx, rbx
call fcn.1804bab90
add rsp, 0x20
jmp 0x180412231
mov rcx, rsi
add rcx, 0x30
sub rsp, 0x20
call fcn.1803f6e60
add rsp, 0x20
mov r8, qword [rsi + 0x3d0]
cmp r8, 0
sete cl
mov eax, dword [0x18079ad28]
add eax, dword [0x18079ad2c]
or eax, 0x5ec7bf4
and eax, 0xea03e25d
xor eax, 0xc8407854
cmp eax, 0xfeb485b1
ja 0x1804123c0
mov eax, dword [0x18079ad30]
or eax, dword [0x18079ad34]
or eax, 0x596fb458
mov r9d, 0xaa0dca5
xor edx, edx
div r9d
and eax, 0x69189cac
cmp eax, 0x8203eedc
ja 0x1804123c0
test cl, 1
jne 0x1804122c1
jmp 0x1804122ac
mov rcx, qword [rsi + 0x3d8]
mov rax, qword [r8 + 0x18]
sub rsp, 0x20
call rax
add rsp, 0x20
mov eax, dword [0x18079ad38]
sub eax, dword [0x18079ad3c]
add eax, 0x2d4a3cf9
add eax, 0x674309e2
sub eax, 0xb6a83a90
cmp eax, 0xff62fd27
ja 0x1804123d1
mov eax, dword [0x18079ad40]
xor eax, dword [0x18079ad44]
mov ecx, 0xcde322c5
xor edx, edx
div ecx
mov edi, eax
xor edi, 0x514b821c
add edi, 0xb0c8b0ba
sub rsp, 0x20
mov rcx, rsi
mov edx, 0x400
mov r8d, 0x80
call fcn.1804cafa0
add rsp, 0x20
cmp edi, 0xd262d2e3
ja 0x1804123d1
jmp 0x180412333
jmp 0x180412205
fucom st(5)
hlt
invalid
pop rsp
pop rdi
mov ch, 0xbf
invalid
insb byte [rdi], dx
xchg ebx, eax
pop rcx
rcr byte [rsi - 0x5ad86801], 0x5f
cmpsb byte [rsi], byte [rdi]
invalid
ret
mov esi, 0x89a9cced
js 0x180412417
test eax, 0xfffd93e9
call [rsi + 0x2ec95ce0]
movsb byte [rdi], byte [rsi]
sahf
loopne 0x180412412
leave
movsb byte [rdi], byte cs:[rsi]
jne 0x18041233b
jmp 0x180412193
stosd dword [rdi], eax
invalid
invalid
mov rcx, rax
mov r8, rcx
and r8, 8
mov eax, dword [0x18079ad48]
imul eax, dword [0x18079ad4c]
enter 0xffffffffffff8349, 0xffffffffffffffe0
or byte [rbx + 0x38892605], cl
add byte [rdi], cl
scasd eax, dword [rdi]
add eax, 0x388923
mov r9d, 0x296af61a
xor edx, edx
div r9d
xor eax, 0x5da7e88a
add eax, 0x2e1e11e7
cmp eax, 0x889637
jb 0x1804129c0
mov eax, dword [0x18079ad50]
or eax, dword [0x18079ad54]
imul eax, eax, 0xb937d2be
or eax, 0xbd377368
imul edx, eax, 0xf500c050
cmp r8, 0
sete al
cmp edx, 0xb7933e25
jae 0x1804129c0
test al, 1
jne 0x180412482
jmp 0x1804125bb
mov eax, dword [0x18079ad58]
or eax, dword [0x18079ad5c]
and eax, 0xe5b96a35
xor eax, 0xe236edbb
or eax, 0x598e1a05
cmp eax, 0xd6af476
jbe 0x1804129d1
jmp 0x1804124aa
mov eax, dword [0x18079ad60]
xor edx, edx
div dword [0x18079ad64]
mov edi, eax
add edi, 0x7ff4c7bc
and edi, 0x5e2e42e0
or edi, 0x4cc6066f
mov rcx, qword [rsi + 0x28]
call fcn.18063f660
mov rcx, rdx
mov qword [rsp + 0x28], rax
cmp edi, 0xa438644b
je 0x1804124aa
jmp 0x1804124e7
mov eax, dword [0x18079ad68]
xor edx, edx
div dword [0x18079ad6c]
add eax, 0xdd202c3b
xor eax, 0x20cbd51a
and eax, 0x55a02289
cmp eax, 0x36b84114
je 0x1804129ec
mov eax, dword [0x18079ad70]
sub eax, dword [0x18079ad74]
xor eax, 0x1d1cef6
mov r8d, 0x29bbe8ab
xor edx, edx
div r8d
add eax, 0x1e71e192
mov qword [rsp + 0x30], rcx
mov rdi, rsi
add rdi, 0x30
cmp eax, 0xae3f2c6f
jae 0x1804129ec
jmp 0x180412549
mov eax, dword [0x18079ad78]
sub eax, dword [0x18079ad7c]
add eax, 0x1265b82d
xor eax, 0x88f4b7b0
xor eax, 0xe9d01779
cmp eax, 0x32b5ae19
jb 0x1804129fe
jmp 0x180412571
mov ebx, dword [0x18079ad80]
sub ebx, dword [0x18079ad84]
xor ebx, 0x4d17b418
add ebx, 0xbca4329
or ebx, 0x9a5a559b
mov rcx, rdi
call fcn.180351160
movabs rax, 0x8000000000000001
mov qword [rdi], rax
lea rcx, [rsp + 0x28]
call fcn.18063f700
cmp ebx, 0x9e5b2899
jbe 0x180412571
jmp 0x180412685
mov eax, dword [0x18079ad88]
or eax, dword [0x18079ad8c]
sub eax, 0x4778fce8
and eax, 0x5d28b18a
or eax, 0x1dd967eb
cmp eax, 0x78b0434
jb 0x180412a2a
mov eax, dword [0x18079ad90]
xor eax, dword [0x18079ad94]
add eax, 0x3a197ad
xor eax, 0x337b10a7
imul eax, eax, 0x4a977ff2
mov r8, rcx
and r8, 0x10
cmp eax, 0x2b77fd58
jb 0x180412a2a
jmp 0x180412611
mov eax, dword [0x18079ad98]
and eax, dword [0x18079ad9c]
add eax, 0x11e1fb9
mov ecx, 0x47bc05de
xor edx, edx
div ecx
or eax, 0x64b3f2dd
cmp eax, 0xf6beeb0b
ja 0x180412a3b
mov eax, dword [0x18079ada0]
or eax, dword [0x18079ada4]
imul ecx, eax, 0x623dec76
sub ecx, 0xcffe506c
add ecx, 0xc6a5443c
cmp r8, 0
sete al
cmp ecx, 0x5a4ee6aa
je 0x180412a3b
jmp 0x18041266e
test al, 1
jne 0x180412685
jmp 0x180412674
mov rcx, rsi
add rcx, 0x3e8
call fcn.180640280
jmp 0x180412685
mov qword [rsp + 0x38], rsi
mov rdi, rsi
add rdi, 0x20
lea rdx, [rsp + 0x38]
mov rcx, rdi
call fcn.180643730
mov rcx, rax
mov eax, dword [0x18079ada8]
and eax, dword [0x18079adac]
or eax, 0xf3e90a8b
or eax, 0xd880da6b
and eax, 0xc11df870
cmp eax, 0x15b3aa9
jb 0x180412a48
mov eax, dword [0x18079adb0]
xor edx, edx
div dword [0x18079adb4]
mov r8d, 0xd329166d
xor edx, edx
div r8d
xor eax, 0x689cc0c9
and eax, 0x1c8269fb
cmp rcx, 0
sete r8b
cmp eax, 0x3204429
jb 0x180412a48
jmp 0x1804126ff
mov edx, 2
mov eax, 1
test r8b, 1
cmovne rdx, rax
mov rcx, rsi
call fcn.18063b2e0
test al, 1
jne 0x180412776
mov eax, dword [0x18079adb8]
add eax, dword [0x18079adbc]
imul eax, eax, 0xcafc4331
xor eax, 0xf8963ed0
and eax, 0x34307d89
cmp eax, 0xc14009d2
jae 0x180412a59
jmp 0x180412746
mov eax, dword [0x18079adc0]
xor edx, edx
div dword [0x18079adc4]
or eax, 0x29b6187f
mov ecx, 0xdff107f0
xor edx, edx
div ecx
add eax, 0x9fe69daf
cmp eax, 0x2ed4e2c9
je 0x180412746
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
mov eax, dword [0x18079adc8]
xor eax, dword [0x18079adcc]
sub eax, 0x77e92222
and eax, 0xddf1507c
mov ecx, 0xa60efbf3
xor edx, edx
div ecx
cmp eax, 0xbf42b1fa
jae 0x180412a6a
jmp 0x1804127a2
mov eax, dword [0x18079add0]
imul eax, dword [0x18079add4]
sub eax, 0x7274edbb
add eax, 0x5bcbc6cd
sub eax, 0xeea132fd
mov rcx, qword [rdi]
cmp eax, 0x9dc9d370
ja 0x1804127a2
jmp 0x1804127ca
mov eax, dword [0x18079add8]
add eax, dword [0x18079addc]
xor eax, 0xac49886
sub eax, 0x61e25baf
and eax, 0xd7e99adf
cmp eax, 0x525eda9d
je 0x180412a77
jmp 0x1804127f2
mov eax, dword [0x18079ade0]
xor edx, edx
div dword [0x18079ade4]
and eax, 0xf43a8623
imul edx, eax, 0x2869f86b
or edx, 0xf2ecd65
lock dec qword [rcx]
sete al
cmp edx, 0x8f56f44b
ja 0x1804127f2
test al, 1
jne 0x180412826
jmp 0x180412885
mov rcx, rdi
call fcn.1804be730
mov eax, dword [0x18079ade8]
or eax, dword [0x18079adec]
imul eax, eax, 0xd48978e
sub eax, 0x4af703e9
imul eax, eax, 0x9da6126
cmp eax, 0x9c8e1378
je 0x180412a8b
mov eax, dword [0x18079adf0]
xor edx, edx
div dword [0x18079adf4]
imul eax, eax, 0xd6838ce2
sub eax, 0xd22c40ff
mov ecx, 0xa3fd1ba3
xor edx, edx
div ecx
cmp eax, 0x5df6280f
je 0x180412a8b
jmp 0x180412885
mov rcx, rsi
add rcx, 0x30
call fcn.1803fe7d0
mov r8, qword [rsi + 0x3f8]
cmp r8, 0
sete cl
mov eax, dword [0x18079adf8]
and eax, dword [0x18079adfc]
or eax, 0x56ff0c54
xor eax, 0xa2627633
add eax, 0x47982fa1
cmp eax, 0xc6a2d3a7
je 0x180412a9c
jmp 0x1804128c7
mov eax, dword [0x18079ae00]
xor edx, edx
div dword [0x18079ae04]
imul eax, eax, 0xc3650ebf
add eax, 0x1549b906
and eax, 0xfb6c43fd
cmp eax, 0x23ce99bf
jbe 0x1804128c7
test cl, 1
jne 0x180412901
jmp 0x1804128f3
mov rcx, qword [rsi + 0x400]
add r8, 0x18
call qword [r8]
mov eax, dword [0x18079ae08]
imul eax, dword [0x18079ae0c]
or eax, 0x3ea0c7d2
mov ecx, 0x1c216509
xor edx, edx
div ecx
sub eax, 0x5be2f8ea
cmp eax, 0xe19da258
ja 0x180412aad
jmp 0x18041292e
mov edi, dword [0x18079ae10]
and edi, dword [0x18079ae14]
and edi, 0xdf91b23b
sub edi, 0xeb14aa15
sub edi, 0xdaf088f2
mov rcx, rsi
mov edx, 0x480
mov r8d, 0x80
call fcn.1804cafa0
cmp edi, 0x6e1b0f2d
jb 0x18041292e
jmp 0x180412969
mov eax, dword [0x18079ae18]
add eax, dword [0x18079ae1c]
imul eax, eax, 0xdb884756
add eax, 0x5d0730fe
xor eax, 0xf0937523
cmp eax, 0x24a3788
jbe 0x180412acd
mov eax, dword [0x18079ae20]
xor eax, dword [0x18079ae24]
imul eax, eax, 0x63e1e62d
or eax, 0x83b0155a
mov ecx, 0x53d46f2b
xor edx, edx
div ecx
cmp eax, 0x973f7f52
je 0x180412acd
jmp 0x18041271d
std
invalid
cmp al, 0x8e
and dword [rbp - 0x70], edi
std
adc dword [0x194d1746f], edi
jmp 0x180412449
cli
invalid
outsb dx, byte [rsi]
in eax, dx
ror dword [rbx + 0x9c59cb2], 0x48
mov ecx, dword [rsi + 0x28]
call fcn.18063f660
mov qword [rsp + 0x28], rax
jmp 0x1804124a8
xchg edi, eax
cmp al, 0x90
jmp 0x1804129ce
not ch
test dword [rbp + 0x655c447a], esp
mov rcx, rdi
call fcn.180351160
movabs rax, 0x8000000000000001
mov qword [rdi], rax
lea rcx, [rsp + 0x28]
call fcn.18063f700
jmp 0x18041256f
push 0xe
leave
push rbx
sbb dword [rbx + 0x30ffd1d], 0xa6e9bb8e
sti
invalid
jle 0x1804129bd
mov ebx, 0xa2c38a99
iretd
cdq
mov al, bl
movabs byte [0xb2e4fffffbf3e9cf], al
in al, 0xb2
jle 0x180412aba
int1
cmp ecx, dword [rax - 0x5ce89782]
jp 0x180412a3e
outsb dx, byte [rsi]
cld
invalid
outsb dx, byte [rsi]
cmp bh, byte [rdx - 0x58]
invalid
retf
invalid
invalid
imul rbp, rax, 0x3a57e103
invalid
or eax, 0xe3c6ba35
and al, 0xac
mov rcx, rsi
mov edx, 0x480
mov r8d, 0x80
call fcn.1804cafa0
jmp 0x18041292c
add al, 0
add byte [rcx - 0x48], al
add byte [rax], 0
add al, ch
fadd dword [rbx + rcx - 0x1a01700]
invalid
in eax, 0x3f
cmpsb byte [rsi], byte [rdi]
sub byte [rbx - 0xc], dl
invalid