Function at 0x1803a8a30
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rcx
mov rax, rsi
add rax, 0xb8
mov cl, byte [rax]
mov eax, dword [0x180790920]
xor eax, dword [0x180790924]
mov r8d, 0x1105e9d0
xor edx, edx
div r8d
xor eax, 0xb46fbf68
mov r8d, 0x71f1ce37
xor edx, edx
div r8d
cmp eax, 0x87502564
je 0x1803a9109
jmp 0x1803a8a82
mov eax, dword [0x180790928]
xor edx, edx
div dword [0x18079092c]
mov r8d, 0x4aa0b9b0
xor edx, edx
div r8d
or eax, 0x122c93db
xor eax, 0x5b4d4d8a
cmp cl, 0xa
setb dl
cmp eax, 0x858cb1b5
jae 0x1803a8a82
test dl, 1
jne 0x1803a8b2f
jmp 0x1803a8ab9
mov rax, rsi
add rax, 0xc8
mov rdx, qword [rax]
cmp rdx, 0
je 0x1803a8b2f
mov rcx, qword [rsi + 0xc0]
mov r8d, 1
call fcn.1804cafa0
mov eax, dword [0x180790930]
add eax, dword [0x180790934]
or eax, 0x4b9c2c8b
or eax, 0x3e64db93
or eax, 0x1e525c61
cmp eax, 0xfd32fb9
je 0x1803a911a
jmp 0x1803a8b05
mov eax, dword [0x180790938]
imul eax, dword [0x18079093c]
imul eax, eax, 0xa9905b38
mov ecx, 0x6156a7aa
xor edx, edx
div ecx
add eax, 0xe9f3a686
cmp eax, 0x90a59be0
jb 0x1803a8b05
jmp 0x1803a8b2f
mov rcx, rsi
add rcx, 0x60
mov eax, dword [0x180790940]
add eax, dword [0x180790944]
imul eax, eax, 0x7ab469b3
imul eax, eax, 0x6afab875
mov r8d, 0xa81eb4a2
xor edx, edx
div r8d
cmp eax, 0xe275d49c
je 0x1803a912b
mov eax, dword [0x180790948]
imul eax, dword [0x18079094c]
mov r8d, 0x9b4ec065
xor edx, edx
div r8d
xor eax, 0x36fd69a7
add eax, 0x63b1ee58
cmp byte [rcx], 2
setb dl
cmp eax, 0xfb42f043
ja 0x1803a912b
jmp 0x1803a8b99
test dl, 1
jne 0x1803a8bcf
jmp 0x1803a8ba0
mov rdi, qword [rsi + 0x68]
mov rax, qword [rdi]
mov rax, qword [rax + 0x20]
mov rcx, rdi
add rcx, 0x18
mov rdx, qword [rdi + 8]
mov r8, qword [rdi + 0x10]
call rax
mov rcx, rdi
mov edx, 0x20
mov r8d, 8
call fcn.1804cafa0
mov rax, qword [rsi + 0x70]
add rax, 0x20
mov rax, qword [rax]
mov rcx, rsi
add rcx, 0x88
mov rdx, qword [rsi + 0x78]
mov r8, rsi
add r8, 0x80
mov r8, qword [r8]
call rax
mov rax, qword [rsi + 0x90]
mov rax, qword [rax + 0x20]
mov rcx, rsi
add rcx, 0xa8
mov rdx, qword [rsi + 0x98]
mov r8, qword [rsi + 0xa0]
call rax
mov r8, qword [rsi + 0x50]
cmp r8, 0
je 0x1803a8c8f
mov eax, dword [0x180790950]
xor edx, edx
div dword [0x180790954]
and eax, 0xd37cd3b7
add eax, 0xcb1d84ad
and eax, 0x26af948f
cmp eax, 0x5c902951
ja 0x1803a9138
mov eax, dword [0x180790958]
and eax, dword [0x18079095c]
imul eax, eax, 0x72cedfaa
sub eax, 0x765b11b4
add eax, 0x18a186b
mov rcx, qword [rsi + 0x48]
mov rdx, r8
shl rdx, 2
cmp eax, 0x2cc5c122
jae 0x1803a9138
jmp 0x1803a8c82
mov r8d, 2
call fcn.1804cafa0
jmp 0x1803a8c8f
mov rbx, rsi
add rbx, 0x18
mov rdi, rsi
add rdi, 0x20
mov r14, qword [rdi]
mov rax, rsi
add rax, 0x28
mov r15, qword [rax]
cmp r15, 0
je 0x1803a8de4
xor ecx, ecx
jmp 0x1803a8cb8
mov eax, dword [0x180790960]
sub eax, dword [0x180790964]
xor eax, 0x899a8aa5
mov r8d, 0xcc42dc4e
xor edx, edx
div r8d
mov r8d, 0x4e4a4d16
xor edx, edx
div r8d
cmp eax, 0xee9e0d5b
jae 0x1803a9149
mov eax, dword [0x180790968]
sub eax, dword [str.Ex_r]
mov r8d, 0xeaec0c90
xor edx, edx
div r8d
or eax, 0xeb88aa02
mov r8d, 0x3764fc40
xor edx, edx
div r8d
imul rdx, rcx, 0x68
mov r13, r14
add r13, rdx
mov r12, rcx
add r12, 1
mov rdx, qword [r13 + 0x40]
cmp rdx, 0
sete r8b
cmp eax, 0xff9fc8be
je 0x1803a9149
test r8b, 1
jne 0x1803a8dba
jmp 0x1803a8d41
mov rbp, qword [rdx + 0x20]
mov qword [rsp + 0x20], r15
mov eax, dword [0x180790970]
imul eax, dword [0x180790974]
imul eax, eax, 0x7350133d
and eax, 0xcb4e7426
xor eax, 0x9bc48fea
cmp eax, 0x64150fc9
jae 0x1803a9156
jmp 0x1803a8d74
mov r15d, dword [0x180790978]
xor r15d, dword [0x18079097c]
or r15d, 0xbb7ef2be
add r15d, 0xfc2487c1
and r15d, 0x747ee21c
mov rcx, r13
add rcx, 0x58
mov rdx, qword [r13 + 0x48]
mov r8, qword [r13 + 0x50]
call rbp
cmp r15d, 0x987eb42e
je 0x1803a8d74
jmp 0x1803a8db3
mov r15, qword [rsp + 0x20]
jmp 0x1803a8dba
mov rax, qword [r13 + 0x18]
add rax, 0x20
mov rax, qword [rax]
mov rcx, r13
add rcx, 0x30
mov rdx, qword [r13 + 0x20]
mov r8, qword [r13 + 0x28]
call rax
cmp r12, r15
mov rcx, r12
jne 0x1803a8cb8
jmp 0x1803a8de4
mov eax, dword [0x180790980]
or eax, dword [0x180790984]
add eax, 0xd51cfe28
xor eax, 0x796f4400
sub eax, 0x7f24891d
cmp eax, 0x79ec4ad7
je 0x1803a9178
mov eax, dword [0x180790988]
xor eax, dword [0x18079098c]
xor eax, 0x5a932f7e
xor eax, 0x3f21b717
xor eax, 0xa5173f54
cmp eax, 0xd858be71
ja 0x1803a9178
jmp 0x1803a8e32
mov eax, dword [0x180790990]
imul eax, dword [0x180790994]
mov ecx, 0xf1959c89
xor edx, edx
div ecx
or eax, 0x44b7ba73
sub eax, 0x744020e8
cmp eax, 0xb997578e
je 0x1803a9189
jmp 0x1803a8e5f
mov eax, dword [0x180790998]
and eax, dword [0x18079099c]
and eax, 0x298c949d
mov ecx, 0x623fb4ad
xor edx, edx
div ecx
sub eax, 0xd74b0a36
mov r14, qword [rbx]
cmp r14, 0
sete cl
cmp eax, 0x9bd34096
je 0x1803a8e5f
jmp 0x1803a8e91
test cl, 1
jne 0x1803a8f04
jmp 0x1803a8e98
mov rdi, qword [rdi]
mov eax, dword [0x1807909a0]
and eax, dword [0x1807909a4]
sub eax, 0xfcb7f93d
imul eax, eax, 0xc1356459
xor eax, 0xf16216e8
cmp eax, 0xa2056f13
ja 0x1803a919a
jmp 0x1803a8ec4
mov eax, dword [0x1807909a8]
or eax, dword [0x1807909ac]
imul eax, eax, 0x8fb41200
add eax, 0xcd3371c7
mov ecx, 0xb5bf9377
xor edx, edx
div ecx
mov ebx, eax
imul rdx, r14, 0x68
mov rcx, rdi
mov r8d, 8
call fcn.1804cafa0
cmp ebx, 0x18ee700b
jae 0x1803a8ec4
jmp 0x1803a8f02
jmp 0x1803a8f04
mov rbx, rsi
add rbx, 0x30
mov rdi, rsi
add rdi, 0x38
mov r14, qword [rsi + 0x38]
mov r15, qword [rsi + 0x40]
cmp r15, 0
sete al
test al, 1
jne 0x1803a8f5a
jmp 0x1803a8f27
xor r12d, r12d
jmp 0x1803a8f2c
imul rax, r12, 0x48
mov r8, r14
add r8, rax
add r12, 1
mov rax, qword [r8 + 0x20]
mov rax, qword [rax + 0x20]
mov rcx, r8
add rcx, 0x38
mov rdx, qword [r8 + 0x28]
mov r8, qword [r8 + 0x30]
call rax
cmp r12, r15
jne 0x1803a8f2c
jmp 0x1803a8f5a
mov eax, dword [0x1807909b0]
sub eax, dword [0x1807909b4]
mov ecx, 0xd5c76cf6
xor edx, edx
div ecx
xor eax, 0xa0e14c7c
and eax, 0x6f20fdd7
cmp eax, 0xbfb3e27
je 0x1803a91b9
mov eax, dword [0x1807909b8]
sub eax, dword [0x1807909bc]
imul ecx, eax, 0x9dba3df4
or ecx, 0x6a9ce7ed
xor ecx, 0x369bc617
mov rax, qword [rbx]
cmp ecx, 0xd35561f1
ja 0x1803a91b9
jmp 0x1803a8fb3
cmp rax, 0
je 0x1803a9020
mov rcx, qword [rdi]
imul rdx, rax, 0x48
mov r8d, 8
call fcn.1804cafa0
mov eax, dword [0x1807909c0]
xor eax, dword [0x1807909c4]
and eax, 0xd20fbbb6
xor eax, 0xde23bf46
mov ecx, 0xadedd798
xor edx, edx
div ecx
cmp eax, 0xfe9c05a1
ja 0x1803a91ca
jmp 0x1803a8ff7
mov eax, dword [0x1807909c8]
sub eax, dword [0x1807909cc]
imul eax, eax, 0xa2e6b744
add eax, 0xdf1a1425
mov ecx, 0xf7fe8ed2
xor edx, edx
div ecx
cmp eax, 0xa0674be2
ja 0x1803a8ff7
jmp 0x1803a9020
mov rsi, qword [rsi + 0xd0]
mov eax, dword [0x1807909d0]
and eax, dword [0x1807909d4]
add eax, 0x9f51d384
and eax, 0x3546315c
mov ecx, 0xa1877381
xor edx, edx
div ecx
cmp eax, 0x4045aab2
je 0x1803a91d7
mov ecx, dword [0x1807909d8]
and ecx, dword [0x1807909dc]
or ecx, 0x3642fa1e
sub ecx, 0x815366f0
xor ecx, 0x79131faf
cmp rsi, 0
sete al
cmp ecx, 0x10a993d5
jb 0x1803a91d7
jmp 0x1803a9084
test al, 1
jne 0x1803a90f8
jmp 0x1803a908a
mov rcx, rsi
call fcn.18045e090
mov rcx, rsi
mov edx, 0x20
mov r8d, 8
call fcn.1804cafa0
mov eax, dword [0x1807909e0]
xor eax, dword [0x1807909e4]
mov ecx, 0xade6f45f
xor edx, edx
div ecx
sub eax, 0x5690bd0c
xor eax, 0xde6918ad
cmp eax, 0x8a1d08a1
ja 0x1803a91e8
mov eax, dword [0x1807909e8]
add eax, dword [0x1807909ec]
imul eax, eax, 0xff92d226
or eax, 0xce42d17c
or eax, 0x7a735b3
cmp eax, 0x58fa145c
je 0x1803a91e8
jmp 0x1803a90f8
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
invalid
mov eax, 0x70323db3
lodsd eax, dword [rsi]
mov bl, 0x1a
xchg ebx, eax
xchg ebp, eax
mov al, 0xc6
jmp 0x1803a8b03
invalid
rcl bl, 1
sbb eax, 0x2ce97429
cli
invalid
in al, dx
and bh, byte [rsi + 0x391d193]
mov ebx, 0xaa14d596
jmp 0x1803a8c4e
sbb ecx, esi
jns 0x1803a91bc
test eax, 0xe9507c24
xchg esp, eax
sti
invalid
jmp 0x10ec1421e
pop rax
mov rdx, qword [r13 + 0x48]
mov r8, qword [r13 + 0x50]
mov eax, dword [rbp + 0x50]
call rbp
jmp 0x1803a8d72
jno 0x1803a912e
mov dl, 0x6a
and eax, 0x858037d8
cmp bh, bh
loop 0x1803a916e
cmp esp, 0x4174ffff
je 0x1803a91cc
sbb dh, byte [rax - 0x34]
add al, 0x8b
jp 0x1803a9168
stosd dword [rdi], eax
or ebx, dword [rdi - 0x33c17]
dec dword [rdi - 0x140bbbdd]
invalid
invalid
invalid
movabs eax, dword [0x46cdc14daa0c0a97]
jmp 0x1803a8f84
adc dword [rcx + 0x2828ed80], 0xffffffde
sub ch, 0x28
sub dh, bl
insd dword [rdi], dx
jmp 0x1803a8ff5
movsb byte [rdi], byte [rsi]
and bl, byte [rax + 0x5b]
invalid
sar dword [rbx + 0x709af4c], 0x28
invalid