Function at 0x1803a78e0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rcx
mov rdi, qword [rsi]
cmp rdi, 0
je 0x1803a7965
mov rbx, qword [rsi + 8]
mov eax, dword [0x1807906e0]
or eax, dword [0x1807906e4]
xor eax, 0xda619886
and eax, 0xff8083ba
add eax, 0x1b805ede
cmp eax, 0x47b5754f
ja 0x1803a80c6
jmp 0x1803a7920
mov eax, dword [0x1807906e8]
xor edx, edx
div dword [0x1807906ec]
mov ecx, 0x5ca1f458
xor edx, edx
div ecx
mov ecx, 0xc76bf73
xor edx, edx
div ecx
mov ebp, eax
or ebp, 0xda912c92
mov rcx, rbx
mov rdx, rdi
mov r8d, 1
call fcn.1804cafa0
cmp ebp, 0x62eddcc3
jb 0x1803a7920
jmp 0x1803a7963
jmp 0x1803a7965
mov rcx, rsi
add rcx, 0x18
mov eax, dword [0x1807906f0]
xor edx, edx
div dword [0x1807906f4]
sub eax, 0x5d2bf456
sub eax, 0x5a8000eb
xor eax, 0xcc582b70
cmp eax, 0xaa63af6c
ja 0x1803a80e4
mov eax, dword [str.e__]
and eax, dword [0x1807906fc]
or eax, 0x5061a361
imul eax, eax, 0x3a46096a
imul eax, eax, 0x864c63a4
mov r8, qword [rcx]
cmp eax, 0xd32ef3cd
je 0x1803a80e4
jmp 0x1803a79c1
mov eax, dword [str.GDT]
xor eax, dword [0x180790704]
imul eax, eax, 0xe96d47e3
or eax, 0x54700e18
and eax, 0x4b15a7e4
cmp eax, 0x12b24ef9
jbe 0x1803a80f5
jmp 0x1803a79ea
mov ecx, dword [0x180790708]
sub ecx, dword [0x18079070c]
and ecx, 0x904cf1e2
and ecx, 0xada1c107
add ecx, 0xd40d8989
cmp r8, 0
sete al
cmp ecx, 0xdfad46c6
ja 0x1803a79ea
test al, 1
jne 0x1803a7ae1
jmp 0x1803a7a21
mov eax, dword [0x180790710]
add eax, dword [0x180790714]
xor eax, 0xf6ba1ee6
and eax, 0x1b8ec1ac
mov ecx, 0x5ad9a16
xor edx, edx
div ecx
cmp eax, 0xf7468506
je 0x1803a8102
jmp 0x1803a7a4d
mov eax, dword [0x180790718]
imul eax, dword [0x18079071c]
xor eax, 0xa61f87e8
imul eax, eax, 0x1baa64ed
imul ecx, eax, 0xc887e3ed
mov rax, rsi
add rax, 0x20
cmp ecx, 0x8f61d523
ja 0x1803a7a4d
jmp 0x1803a7a7c
mov rcx, qword [rax]
mov rdx, r8
mov r8d, 1
call fcn.1804cafa0
mov eax, dword [0x180790720]
imul eax, dword [0x180790724]
mov ecx, 0xd0a326fd
xor edx, edx
div ecx
sub eax, 0xa23bd06
add eax, 0x65b8e747
cmp eax, 0x4d56e025
jb 0x1803a810f
mov eax, dword [0x180790728]
sub eax, dword [0x18079072c]
imul eax, eax, 0x25e14e3d
or eax, 0x13db21a7
sub eax, 0x4a4ad372
cmp eax, 0xdd47022e
jae 0x1803a810f
jmp 0x1803a7ae1
mov rax, rsi
add rax, 0x30
mov rdi, qword [rax]
cmp rdi, 0
sete al
test al, 1
jne 0x1803a7bbf
jmp 0x1803a7afc
mov rcx, rsi
add rcx, 0x38
mov eax, dword [0x180790730]
add eax, dword [0x180790734]
and eax, 0x86cb258a
sub eax, 0xc49102d0
mov r8d, 0x78820f37
xor edx, edx
div r8d
cmp eax, 0x17f21751
je 0x1803a8120
jmp 0x1803a7b31
mov eax, dword [str.H_c]
imul eax, dword [0x18079073c]
and eax, 0x826edb9b
imul eax, eax, 0x8fca1bd1
and eax, 0x5af87d6e
mov rbx, qword [rcx]
cmp eax, 0x9995bbaa
ja 0x1803a7b31
jmp 0x1803a7b5a
mov eax, dword [0x180790740]
add eax, dword [0x180790744]
mov ecx, 0x97341834
xor edx, edx
div ecx
sub eax, 0xd8aa520
xor eax, 0xa8c05013
cmp eax, 0x4cadfcef
jbe 0x1803a8131
jmp 0x1803a7b86
mov ebp, dword [0x180790748]
add ebp, dword [0x18079074c]
and ebp, 0xfbb5b196
or ebp, 0xd31ea051
and ebp, 0x36f056a0
mov rcx, rbx
mov rdx, rdi
mov r8d, 1
call fcn.1804cafa0
cmp ebp, 0x2683eeed
jbe 0x1803a7b86
jmp 0x1803a7bbf
mov rcx, rsi
add rcx, 0x48
mov eax, dword [0x180790750]
imul eax, dword [0x180790754]
mov r8d, 0x3f515450
xor edx, edx
div r8d
sub eax, 0xe4a071d2
add eax, 0x7cc46e0a
cmp eax, 0xedbf94e5
je 0x1803a8153
jmp 0x1803a7bf5
mov eax, dword [0x180790758]
and eax, dword [0x18079075c]
add eax, 0x60c40649
xor eax, 0xdd5fbff3
xor eax, 0xb2656fd4
mov rdx, qword [rcx]
cmp eax, 0x2f402b92
jbe 0x1803a7bf5
jmp 0x1803a7c1c
mov eax, dword [0x180790760]
or eax, dword [0x180790764]
and eax, 0x5e74512b
xor eax, 0xc02be01e
xor eax, 0xbf143e60
cmp eax, 0x6a52c959
jae 0x1803a8160
mov eax, dword [0x180790768]
add eax, dword [0x18079076c]
imul ecx, eax, 0x74a447a9
add ecx, 0xdd351584
xor ecx, 0x7575fc60
cmp rdx, 0
sete al
cmp ecx, 0xec344aa2
ja 0x1803a8160
test al, 1
jne 0x1803a7c90
jmp 0x1803a7c79
mov rax, rsi
add rax, 0x50
mov rcx, qword [rax]
mov r8d, 1
call fcn.1804cafa0
jmp 0x1803a7c90
mov rcx, rsi
add rcx, 0x60
mov eax, dword [0x180790770]
add eax, dword [0x180790774]
imul eax, eax, 0xcbf829ec
xor eax, 0xa21e846a
add eax, 0xd621c8f8
cmp eax, 0xec1cfdb6
ja 0x1803a816d
jmp 0x1803a7cc0
mov eax, dword [0x180790778]
xor edx, edx
div dword [0x18079077c]
or eax, 0x6df007ec
xor eax, 0x41f8eadf
and eax, 0x94318b62
mov rdx, qword [rcx]
cmp rdx, 0
sete r8b
cmp eax, 0x24fbe2d5
jae 0x1803a7cc0
jmp 0x1803a7cf1
test r8b, 1
jne 0x1803a7d5a
jmp 0x1803a7cf9
mov rcx, qword [rsi + 0x68]
mov r8d, 1
call fcn.1804cafa0
mov eax, dword [0x180790780]
and eax, dword [0x180790784]
xor eax, 0x6704c902
and eax, 0x5c870982
mov ecx, 0x82cebc5b
xor edx, edx
div ecx
cmp eax, 0xe670d7f2
ja 0x1803a817e
mov eax, dword [0x180790788]
xor eax, dword [0x18079078c]
or eax, 0x158493f6
xor eax, 0xecc4235d
or eax, 0xd15c6e4e
cmp eax, 0x4ace43a3
jb 0x1803a817e
jmp 0x1803a7d5a
mov rax, rsi
add rax, 0x78
mov r8, qword [rax]
mov eax, dword [0x180790790]
xor edx, edx
div dword [0x180790794]
imul eax, eax, 0xed96b1c2
xor eax, 0xbd89eac8
sub eax, 0x180f9f22
cmp eax, 0x77c876df
je 0x1803a818f
mov eax, dword [0x180790798]
xor eax, dword [0x18079079c]
mov ecx, 0xd361bce9
xor edx, edx
div ecx
mov ecx, 0x8627c359
xor edx, edx
div ecx
sub eax, 0x540af369
cmp r8, 0
sete cl
cmp eax, 0x9f07de73
jb 0x1803a818f
test cl, 1
jne 0x1803a7e3a
jmp 0x1803a7dc9
mov rax, rsi
add rax, 0x80
mov ecx, dword [0x1807907a0]
or ecx, dword [str.g5]
add ecx, 0x3ba560ab
and ecx, 0xb9c6e57f
add ecx, 0xe78a4273
cmp ecx, 0xc87f1583
jae 0x1803a819c
mov ecx, dword [0x1807907a8]
imul ecx, dword [0x1807907ac]
imul edx, ecx, 0x1ada56c1
or edx, 0xe0b848e1
or edx, 0x10ac8842
mov rcx, qword [rax]
cmp edx, 0x29ecf437
jbe 0x1803a819c
jmp 0x1803a7e2c
mov rdx, r8
mov r8d, 1
call fcn.1804cafa0
mov eax, dword [0x1807907b0]
or eax, dword [0x1807907b4]
and eax, 0xd6739e81
or eax, 0x33bfa33a
imul eax, eax, 0x20617bdd
cmp eax, 0x552c3a66
jbe 0x1803a81ad
jmp 0x1803a7e63
mov ecx, dword [0x1807907b8]
imul ecx, dword [0x1807907bc]
sub ecx, 0x8e29cf23
xor ecx, 0x8b44073d
add ecx, 0x1b60956e
mov rax, rsi
add rax, 0x90
cmp ecx, 0xa9d7eed1
je 0x1803a7e63
jmp 0x1803a7e95
mov r8, qword [rax]
mov eax, dword [0x1807907c0]
and eax, dword [0x1807907c4]
xor eax, 0x165d0f00
sub eax, 0x3f647e10
imul eax, eax, 0x912d4cdb
cmp eax, 0xb6b4f29a
je 0x1803a81ba
jmp 0x1803a7ec1
mov ecx, dword [0x1807907c8]
add ecx, dword [0x1807907cc]
xor ecx, 0x9ca446a3
xor ecx, 0x789a509b
or ecx, 0x34ed5b9
cmp r8, 0
sete al
cmp ecx, 0x8a066a9b
je 0x1803a7ec1
test al, 1
jne 0x1803a7f64
jmp 0x1803a7ef4
mov r9, rsi
add r9, 0x98
mov eax, dword [0x1807907d0]
imul eax, dword [0x1807907d4]
and eax, 0x5abc1bd0
mov ecx, 0xa4b12365
xor edx, edx
div ecx
imul eax, eax, 0x3eee7a2a
cmp eax, 0xe6f4f66c
je 0x1803a81cb
mov eax, dword [0x1807907d8]
add eax, dword [0x1807907dc]
or eax, 0x5bfbe98e
imul eax, eax, 0xc08ef18d
and eax, 0x905659de
mov rcx, qword [r9]
cmp eax, 0x3cbd07f6
jae 0x1803a81cb
jmp 0x1803a7f56
mov rdx, r8
mov r8d, 1
call fcn.1804cafa0
mov r8, qword [rsi + 0xa8]
mov eax, dword [0x1807907e0]
imul eax, dword [0x1807907e4]
xor eax, 0xbc3f9691
add eax, 0x447db195
sub eax, 0x6d1dc88f
cmp eax, 0xf605c08b
ja 0x1803a81d8
mov eax, dword [0x1807907e8]
sub eax, dword [0x1807907ec]
and eax, 0x51395ffc
mov ecx, 0x4eaa0d79
xor edx, edx
div ecx
add eax, 0x9040ee36
cmp r8, 0
sete cl
cmp eax, 0xea02f5b6
ja 0x1803a81d8
jmp 0x1803a7fc5
test cl, 1
jne 0x1803a7fe8
jmp 0x1803a7fcc
mov rax, rsi
add rax, 0xb0
mov rcx, qword [rax]
mov rdx, r8
mov r8d, 1
call fcn.1804cafa0
jmp 0x1803a7fe8
mov r8, qword [rsi + 0xc0]
cmp r8, 0
sete al
test al, 1
jne 0x1803a806d
jmp 0x1803a7ffc
mov eax, dword [0x1807907f0]
add eax, dword [0x1807907f4]
mov ecx, 0x64622857
xor edx, edx
div ecx
or eax, 0x691e6c90
and eax, 0x871a1f90
cmp eax, 0x609f39f7
je 0x1803a81e5
mov ecx, dword [0x1807907f8]
imul ecx, dword [0x1807907fc]
xor ecx, 0x885e760f
xor ecx, 0x4aafcd0b
xor ecx, 0x9e7bc0b6
mov rax, rsi
add rax, 0xc8
cmp ecx, 0xb19122fa
je 0x1803a81e5
jmp 0x1803a805c
mov rcx, qword [rax]
mov rdx, r8
mov r8d, 1
call fcn.1804cafa0
mov eax, dword [0x180790800]
add eax, dword [0x180790804]
xor eax, 0x70055e96
xor eax, 0x15f1fe88
sub eax, 0x9bfe408
cmp eax, 0xb591c6a2
ja 0x1803a81f6
mov eax, dword [0x180790808]
sub eax, dword [0x18079080c]
mov ecx, 0x73ff2d44
xor edx, edx
div ecx
sub eax, 0x5420fd27
or eax, 0x648345a7
cmp eax, 0x6955e195
jbe 0x1803a81f6
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
ret
jmp 0x1803a80f4
mov cl, 0x73
in al, dx
invalid
inc esp
rcr dword [rbx + 0x447f8d6e], cl
imul ebp, ecx, 0xffffffe6
clc
invalid
invalid
sti
xlatb
cmp ebx, dword [rbp + 0x32]
jb 0x1803a8151
jmp 0x1803a7a4b
add byte [rsi - 0xf], bh
lahf
mov bl, cl
cmpsb byte [rsi], byte [rdi]
sub rax, qword [r9 - 0x17]
cwde
stc
invalid
jo 0x1803a8159
and byte [rax - 0x7ab2507], ch
outsd dx, dword [rsi]
push rbx
mov cl, 0xe9
invalid
mov dl, 0xad
add al, 0x71
invalid
invalid
iretd
xor eax, 0xfa93e9a6
invalid
pop rdi
invalid
fstp qword [rsi]
cmp dword [rdx + 0x5e18cd7c], esi
outsd dx, dword [rsi]
adc al, 0xcd
imul ebp, ecx, 0x40
sti
invalid
invalid
jge 0x1803a8204
adc al, 1
fcomp qword [rdi + 0x5e]
jmp 0x1803a7d8d
invalid
invalid
int3
out 0x98, eax
and dword [rsi], 0xeda8f91b
loopne 0x1803a81f6
add r9b, bpl
hlt
je 0x1803a823a
xchg rbx, rax
scasb al, byte [rdi]
leave
cmp al, 0xe9
push rdx
std
invalid
push rbx
cmp dh, byte [rdx]
sar dword ds:[rdx - 0x23], 1
imul ebp, ecx, 0xffffffad
std
invalid
sub byte [rbx], al
jno 0x1803a8242
jge 0x1803a81a3
pop r13
mov dword [rax], ecx
invalid
lodsb al, byte [rsi]
sub al, 0xcd
push rcx
enter 0xffffffffffffd45e, 0xf
mov dl, 0xcc
in eax, 0xe9
invalid
invalid
sal bh, cl
int1