Function at 0x1804250f0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov eax, dword [str.P__Q8nb]
and eax, dword [0x18079c9ac]
or eax, 0x8c2eea92
add eax, 0x92e560d2
and eax, 0xca007358
cmp eax, 0xf4fd4c88
jae 0x180425a9d
jmp 0x180425124
mov eax, dword [0x18079c9b0]
sub eax, dword [0x18079c9b4]
imul eax, eax, 0x9114cb28
sub eax, 0x98868183
xor eax, 0x7823847
mov rsi, qword [rcx]
cmp eax, 0x4c40d83f
jbe 0x180425124
jmp 0x18042514c
mov eax, dword [0x18079c9b8]
xor eax, dword [0x18079c9bc]
mov ecx, 0xa2d3b9f2
xor edx, edx
div ecx
xor eax, 0x7989ce0
imul eax, eax, 0x337bc626
cmp eax, 0xad762b62
je 0x180425aae
mov eax, dword [0x18079c9c0]
sub eax, dword [0x18079c9c4]
mov ecx, 0x40bf71e5
xor edx, edx
div ecx
sub eax, 0xf578eb86
imul ecx, eax, 0x70590f81
cmp rsi, 0
sete al
cmp ecx, 0xfa99182a
jae 0x180425aae
jmp 0x1804251ac
test al, 1
jne 0x1804251b2
jmp 0x1804251bf
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
mov eax, dword [0x18079c9c8]
and eax, dword [0x18079c9cc]
add eax, 0x5c1f315a
and eax, 0x334ce89
mov ecx, 0x5d47a45a
xor edx, edx
div ecx
cmp eax, 0xa9aaa114
ja 0x180425abb
jmp 0x1804251eb
mov eax, dword [str.X_t__o]
and eax, dword [0x18079c9d4]
mov ecx, 0xa8ed50a3
xor edx, edx
div ecx
xor eax, 0xb968a3f
sub eax, 0x240dddd7
mov rdi, qword [rsi + 8]
cmp rdi, 0
sete cl
cmp eax, 0xa2959ae4
jb 0x1804251eb
jmp 0x18042521e
mov eax, dword [0x18079c9d8]
xor eax, dword [0x18079c9dc]
sub eax, 0x2b88f726
imul eax, eax, 0x2ef29b5f
sub eax, 0xfe2eb9e
cmp eax, 0x99c96d0a
je 0x180425ac8
jmp 0x180425247
mov eax, dword [0x18079c9e0]
xor eax, dword [0x18079c9e4]
mov r8d, 0xa0337e90
xor edx, edx
div r8d
sub eax, 0xdab621c4
mov r8d, 0xbc89151e
xor edx, edx
div r8d
cmp eax, 0x97815a3d
ja 0x180425247
test cl, 1
jne 0x180425342
jmp 0x180425280
mov eax, dword [0x18079c9e8]
or eax, dword [0x18079c9ec]
sub eax, 0xdc9efe8f
add eax, 0x41b5b718
add eax, 0x5a9a9972
cmp eax, 0x287fa786
jb 0x180425ad5
mov eax, dword [0x18079c9f0]
imul eax, dword [0x18079c9f4]
add eax, 0x600d9fae
or eax, 0xb6bf795
mov ecx, 0x8ee5c487
xor edx, edx
div ecx
mov ebx, eax
mov rcx, rdi
call fcn.18063b3a0
cmp ebx, 0xed0c5cc5
je 0x180425ad5
jmp 0x1804252de
mov ecx, dword [0x18079c9f8]
or ecx, dword [0x18079c9fc]
imul ecx, ecx, 0x6811f1d
imul ecx, ecx, 0x6550193d
and ecx, 0x67a9102f
cmp ecx, 0x7c59d1fd
jae 0x180425aea
mov ecx, dword [0x18079ca00]
sub ecx, dword [0x18079ca04]
imul ecx, ecx, 0xe46ff1cc
and ecx, 0xf74d43de
xor ecx, 0x930b4705
cmp ecx, 0x103b5982
je 0x180425aea
test al, 1
jne 0x180425338
jmp 0x180425342
mov rcx, rdi
call fcn.18063bbc0
jmp 0x180425342
mov rdi, rsi
add rdi, 0x18
mov eax, dword [0x18079ca08]
add eax, dword [0x18079ca0c]
imul eax, eax, 0x90c8bb45
sub eax, 0x970b85d4
mov ecx, 0xbbc21afc
xor edx, edx
div ecx
cmp eax, 0x85c826dd
je 0x180425af7
jmp 0x180425376
mov eax, dword [0x18079ca10]
sub eax, dword [0x18079ca14]
sub eax, 0x8ba1c4d3
mov ecx, 0xaddb0147
xor edx, edx
div ecx
mov ecx, 0xc3e9e48e
xor edx, edx
div ecx
mov rcx, qword [rdi]
add rcx, 0x90
cmp eax, 0x269d38ed
ja 0x180425376
jmp 0x1804253ac
mov eax, dword [0x18079ca18]
or eax, dword [0x18079ca1c]
and eax, 0xa7aef4d3
mov r8d, 0x884b2f1d
xor edx, edx
div r8d
mov r8d, 0x713a8f9f
xor edx, edx
div r8d
cmp eax, 0x3fe8e10c
je 0x180425b08
jmp 0x1804253e0
mov eax, dword [0x18079ca20]
mov edx, dword [0x18079ca24]
add eax, edx
imul edx, eax, 0xcad9e276
add edx, 0x8087f850
mov rax, qword [rcx]
cmp edx, 0xb87abb82
je 0x1804253e0
jmp 0x180425407
mov rbx, rax
mov eax, dword [0x18079ca28]
imul eax, dword [0x18079ca2c]
sub eax, 0x9c93e0b0
xor eax, 0x7d2c0034
sub eax, 0x23b8339c
cmp eax, 0xfe3ebfc8
jae 0x180425b1c
mov eax, dword [0x18079ca30]
sub eax, dword [0x18079ca34]
imul eax, eax, 0xfedc09f9
and eax, 0xc3ea359
imul ebp, eax, 0xd18938ef
mov r15, rbx
shr r15, 0x20
mov r14, qword [rdi]
mov rcx, r14
add rcx, 0xa0
call fcn.180645b90
cmp eax, ebx
sete al
cmp ebp, 0x1c00e95d
jbe 0x180425b1c
test al, 1
jne 0x18042576f
jmp 0x180425482
mov eax, dword [0x18079ca38]
and eax, dword [0x18079ca3c]
or eax, 0x100a67e3
add eax, 0x4fabfd42
add eax, 0xf8a795e
cmp eax, 0x3d053004
jb 0x180425b38
mov eax, dword [0x18079ca40]
imul eax, dword [0x18079ca44]
xor eax, 0xbf7ede62
mov ecx, 0xe8c241c3
xor edx, edx
div ecx
and eax, 0x7189186b
mov ecx, ebx
add ecx, 1
cmp eax, 0xc61cc1a8
jae 0x180425b38
jmp 0x1804254da
cmp r15d, ebx
sete al
test al, 1
jne 0x1804254f9
jmp 0x1804254e6
cmp ecx, r15d
sete al
test al, 1
jne 0x180425617
jmp 0x180425600
mov eax, dword [0x18079ca48]
add eax, dword [0x18079ca4c]
and eax, 0xd1908b3
xor eax, 0x6fd57a51
or eax, 0x956edc76
cmp eax, 0xe8172f00
jb 0x180425b49
mov eax, dword [0x18079ca50]
add eax, dword [0x18079ca54]
add eax, 0x50ac585e
add eax, 0x3ded62ec
or eax, 0x59ed9e97
mov r8d, ecx
cmp eax, 0xadfb31ba
jae 0x180425b49
jmp 0x18042554a
mov eax, dword [0x18079ca58]
and eax, dword [0x18079ca5c]
mov ecx, 0x1667194d
xor edx, edx
div ecx
add eax, 0xe54dacb7
and eax, 0xde908ed2
cmp eax, 0x8fc714c2
je 0x180425b5a
mov eax, dword [0x18079ca60]
add eax, dword [0x18079ca64]
sub eax, 0x65b321
add eax, 0xafe54fa2
imul eax, eax, 0x648c3d02
movabs rdx, 0x100000001
mov rcx, r8
imul rcx, rdx
cmp eax, 0xbcf9a8dd
ja 0x180425b5a
jmp 0x1804255ae
mov eax, dword [0x18079ca68]
imul eax, dword [0x18079ca6c]
sub eax, 0xd96684ef
imul eax, eax, 0xdb3d68c0
or eax, 0x9397e82c
cmp eax, 0xf94df9b0
jae 0x180425b6b
mov eax, dword [0x18079ca70]
imul eax, dword [0x18079ca74]
xor eax, 0xb0a7cb6a
add eax, 0xfbfd535a
imul eax, eax, 0x17ab9c08
cmp eax, 0xc7232166
jae 0x180425b6b
jmp 0x18042561b
mov eax, ecx
movabs rdx, 0xffffffff00000000
mov rcx, rbx
and rcx, rdx
or rcx, rax
jmp 0x18042561b
ud2
mov rax, rbx
lock cmpxchg qword [r14 + 0x90], rcx
sete cl
test cl, 1
jne 0x180425634
jmp 0x180425407
movabs rax, 0xffffffff
and rbx, rax
mov eax, dword [0x18079ca78]
or eax, dword [0x18079ca7c]
imul eax, eax, 0x109bc753
sub eax, 0x6b40653
sub eax, 0xa7fdb21b
cmp eax, 0x2e8842df
jbe 0x180425b78
jmp 0x18042566a
mov eax, dword [0x18079ca80]
xor eax, dword [0x18079ca84]
sub eax, 0x853596e4
mov ecx, 0x2edb47eb
xor edx, edx
div ecx
sub eax, 0xc39ebbcf
mov r14, qword [rdi]
cmp eax, 0x848ee4b9
je 0x18042566a
jmp 0x180425695
and rbx, qword [r14 + 0x98]
cmp rbx, qword [r14 + 0x88]
jb 0x18042574e
mov eax, dword [0x18079ca88]
xor eax, dword [0x18079ca8c]
add eax, 0x9078e5d1
mov ecx, 0x17e0eee7
xor edx, edx
div ecx
or eax, 0x8e193621
cmp eax, 0xf1946b4e
jae 0x180425b85
mov eax, dword [0x18079ca90]
xor eax, dword [0x18079ca94]
add eax, 0x813a4417
add eax, 0xc10795d2
or eax, 0x3ffe8ea5
ud2
mov rax, qword [r14 + 0x80]
mov rcx, qword [rax + rbx*8]
cmp rcx, 0
sete al
test al, 1
jne 0x180425771
jmp 0x180425766
call fcn.180425c50
ud2
jmp 0x180425771
lock dec qword [r14]
sete al
test al, 1
je 0x180425847
mov eax, dword [0x18079caa8]
xor edx, edx
div dword [0x18079caac]
or eax, 0x431cf9a7
or eax, 0x89fd85a6
and eax, 0xe5fd3f27
cmp eax, 0xd4472502
je 0x180425ba5
mov eax, dword [0x18079cab0]
mov ecx, dword [0x18079cab4]
imul eax, ecx
or eax, 0x3c4b94ac
mov ecx, 0xb2404037
imul rax, rcx
shr rax, 0x3b
imul eax, eax, 0xd65fecb5
cmp eax, 0x71b702ec
je 0x180425ba5
jmp 0x1804257dc
mov eax, dword [0x18079cab8]
xor edx, edx
div dword [0x18079cabc]
add eax, 0xe8091961
and eax, 0x5c13590
mov ecx, 0x8dd34d95
xor edx, edx
div ecx
cmp eax, 0x4865fbe
je 0x180425bb6
mov eax, dword [0x18079cac0]
imul eax, dword [0x18079cac4]
mov ecx, 0xaf2565ce
xor edx, edx
div ecx
mov ecx, 0xd82fda64
xor edx, edx
div ecx
mov ebx, eax
xor ebx, 0x81a666f7
mov rcx, rdi
call fcn.1804bff50
cmp ebx, 0xf0389696
ja 0x180425bb6
jmp 0x180425845
jmp 0x180425847
mov eax, dword [0x18079cac8]
imul eax, dword [0x18079cacc]
add eax, 0xdf69cda5
sub eax, 0xc7be20c2
xor eax, 0xfd3704c6
cmp eax, 0x6dd652cc
jbe 0x180425bcf
jmp 0x180425870
mov eax, dword [0x18079cad0]
sub eax, dword [0x18079cad4]
mov ecx, 0x76714ac1
xor edx, edx
div ecx
or eax, 0x55dbb693
sub eax, 0x29356bd2
mov rcx, rsi
add rcx, 0x28
cmp eax, 0x1234e8
jbe 0x180425870
jmp 0x18042589f
mov eax, dword [0x18079cad8]
xor edx, edx
div dword [0x18079cadc]
add eax, 0xd99fe3b3
and eax, 0x7cd0c17
or eax, 0x3245a7b4
cmp eax, 0xa8c9dd7c
ja 0x180425bdc
jmp 0x1804258c9
mov eax, dword [0x18079cae0]
xor edx, edx
div dword [0x18079cae4]
mov r8d, 0xd87fee75
xor edx, edx
div r8d
add eax, 0x842e307e
and eax, 0x76f141cd
cmp eax, 0x14a005c9
jae 0x1804258c9
jmp 0x1804258f5
cmp dword [rsi + 0x50], 0x3b9aca00
je 0x180425a2f
mov rax, rsi
add rax, 0x30
mov r8, qword [rax]
mov eax, dword [0x18079cae8]
imul eax, dword [0x18079caec]
or eax, 0x1e232d1d
add eax, 0x9ce29980
sub eax, 0xbf99b851
cmp eax, 0xc2dc0832
je 0x180425bed
jmp 0x180425935
mov eax, dword [0x18079caf0]
and eax, dword [0x18079caf4]
imul edx, eax, 0xcb6b3a2
and edx, 0xc052492a
sub edx, 0x6fb2825b
cmp r8, 0
sete al
cmp edx, 0xc60f3058
jb 0x180425935
test al, 1
jne 0x180425a2f
jmp 0x18042596c
mov rdi, qword [rcx]
mov eax, dword [0x18079caf8]
xor eax, dword [0x18079cafc]
and eax, 0xa995d6e1
imul eax, eax, 0x3de1d32f
imul eax, eax, 0x1aa94768
cmp eax, 0xf0627791
jae 0x180425bfa
jmp 0x180425999
mov eax, dword [0x18079cb00]
xor edx, edx
div dword [0x18079cb04]
sub eax, 0x982f8fc9
mov ecx, 0xe75d99f3
xor edx, edx
div ecx
or eax, 0xabbe3ff9
mov rbx, r8
shl rbx, 3
cmp eax, 0x2b3b6fe6
je 0x180425999
jmp 0x1804259ca
mov eax, dword [0x18079cb08]
xor eax, dword [0x18079cb0c]
imul eax, eax, 0x9ef86b4
imul eax, eax, 0x5a66a793
or eax, 0xeddbe519
cmp eax, 0xf14763ee
je 0x180425c07
mov eax, dword [0x18079cb10]
sub eax, dword [0x18079cb14]
imul ebp, eax, 0x978b41e
sub ebp, 0xfc030610
add ebp, 0x69354892
mov rcx, rdi
mov rdx, rbx
mov r8d, 8
call fcn.1804cafa0
cmp ebp, 0xbdd00d44
jae 0x180425c07
jmp 0x180425a2f
mov eax, dword [0x18079cb18]
and eax, dword [0x18079cb1c]
add eax, 0x7a6ab201
mov ecx, 0x2493580a
xor edx, edx
div ecx
xor eax, 0xb8ba69
cmp eax, 0xc7aa9fa2
jae 0x180425c29
mov edi, dword [0x18079cb20]
or edi, dword [str.__C2_]
cmp eax, 0x3770bf
and edi, 0xc459a6ee
sub edi, 0x32e0d9c9
or edi, 0xfdafe1d
mov rcx, rsi
mov edx, 0x100
mov r8d, 0x80
call fcn.1804cafa0
cmp edi, 0xb8b0208a
jae 0x180425c29
jmp 0x180425a98
jmp 0x1804251b2
pushfq
enter 0x3e0b, 0xffffffffffffff92
xchg edx, eax
mov bl, 0xf9
jl 0x180425a4e
sub al, 0xe9
je 0x180425aa2
invalid
jrcxz 0x180425ab4
adc byte [0x138816891], 0xe9
mov esp, 0xb6fffff6
and bl, al
invalid
mov dh, 0x64
and bl, al
jne 0x180425a60
jmp 0x1804251e9
imul ecx, dword [rdx - 0x4cf6af9c], 0x70e9e2e6
idiv edi
invalid
clc
mov ecx, edi
xchg ebx, eax
add al, 0xfe
in al, dx
mov al, 0x48
mov ecx, edi
call fcn.18063b3a0
jmp 0x1804252a6
xchg ebp, eax
ret
test dword [rdx + rbx*8 - 0x5b], esi
pop rdx
push rsp
std
cmp eax, 0x1c585373
jmp 0x180425374
out 0xc0, al
invalid
or spl, byte [rbx]
sbb al, 0x4d
test dl, ah
add cl, byte [rax - 0x75]
cmovs eax, dword [rcx + 0xa0c1]
add al, ch
pop rbp
add byte [rdx], ah
add cl, ch
stc
clc
invalid
pop rdx
xor r10b, 0x49
pop rsp
pop rbp
ret
invalid
shr ebx, 0xb8
test al, 0x4d
imul edx, dword [rdx + 0x717b2acb], 0xfa09e9a0
invalid
invalid
pop rbp
cmpsb byte [rsi], byte [rdi]
jmp qword [rcx - 0x18846d2b]
invalid
mov edi, 0x395bd29f
invalid
sar byte [rcx], 0x43
je 0x180425bc4
and al, byte [rbx - 0x5e]
out 0x1b, al
outsd dx, dword [rsi]
mov rcx, rdi
stc
call fcn.1804bff50
jmp 0x180425808
jp 0x180425c12
shr ebx, 1
jnp 0x180425bc2
cmp eax, 0xfc92e971
invalid
invalid
call [rdx]
push 0xffffffffe718c869
test eax, 0xfffd39e9
call qword [rdx + 0x6ec8da9d]
xchg edx, eax
popfq
fcmove st(0), st(0)
outsb dx, byte [rsi]
push rbp
mov ch, 0x9b
jmp 0x180425997
fldlg2
sub esi, dword [rbx]
sar byte [rdx + 0x35], 0x1c
loop 0x180425c5c
sub al, 0xd9
mov rcx, rdi
mov rdx, rbx
mov r8d, 8
call fcn.1804cafa0
jmp 0x1804259f2
invalid
invalid
add byte [rdi], cl
xchg esp, eax
shr byte [rax - 0x14fd8aff], 7