Function at 0x140092220
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov rdi, r8
mov r8, rdx
mov rdx, rcx
lea rcx, [rsp + 0x58]
call fcn.140090320
mov r12, qword [rsp + 0x58]
movabs r15, 0x8000000000000000
mov eax, dword [0x141dd01f8]
xor edx, edx
div dword [0x141dd01fc]
nop word cs:[rax + rax]
mov eax, dword [0x141dd0200]
xor edx, edx
div dword [0x141dd0204]
xor eax, 0xbcfd5cb
imul eax, eax, 0xf2b726ec
cmp eax, 0x582f6d9c
je 0x140092270
mov rbx, qword [rsp + 0x60]
cmp r12, r15
jne 0x1400922d9
nop word [rax + rax]
mov eax, dword [0x141dd0208]
sub eax, dword [0x141dd020c]
imul eax, eax, 0x281b6710
add eax, 0x5e68b390
and eax, 0x69185880
cmp eax, 0x8793702f
ja 0x1400922a0
mov al, 1
nop word cs:[rax + rax]
test al, al
je 0x1400922d0
jmp 0x1400923e0
mov eax, dword [0x141dd0210]
and eax, dword [0x141dd0214]
or eax, 0x1deb117c
add eax, 0xb6105e43
imul rax, rax, 0x6e5612d
shr rax, 0x33
cmp eax, 0x477e62ac
jne 0x140092327
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0x40]
mov r8b, 1
call fcn.140093680
lea rsi, [rsp + 0x70]
lea r14, [rsp + 0x40]
xor ebp, ebp
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rax
mov rcx, rsi
mov rdx, r14
mov r8b, 1
call fcn.140093680
test bpl, bpl
jne 0x140092340
mov eax, 0x95b7f78d
nop dword [rax]
mov ecx, dword [0x141dd0218]
xor ecx, dword [0x141dd021c]
imul rcx, rax
shr rcx, 0x3e
imul ecx, ecx, 0x92bdd3d0
add ecx, 0x2327c500
cmp ecx, 0xe28f640c
ja 0x140092370
mov r14, qword [rsp + 0x70]
mov eax, dword [0x141dd0220]
xor edx, edx
div dword [0x141dd0224]
nop dword [rax + rax]
mov eax, dword [0x141dd0228]
sub eax, dword [0x141dd022c]
xor eax, 0x42c2041
or eax, 0xe1d31fb4
imul eax, eax, 0xc04dc5ac
cmp eax, 0x702e5ad7
je 0x1400923b0
mov rsi, qword [rsp + 0x78]
cmp r14, r15
jne 0x14009242d
mov rbx, rsi
mov eax, dword [0x141dd0260]
xor edx, edx
div dword [0x141dd0264]
imul rcx, rax, 0x88272ff
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
or eax, 0x109a14
cmp eax, 0xc2caf02d
je 0x1400923e0
mov edi, 1
mov rax, rdi
mov rdx, rbx
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x141dd0230]
xor edx, edx
div dword [0x141dd0234]
nop dword [rax + rax]
mov eax, dword [0x141dd0238]
xor edx, edx
div dword [str._a__a]
cmp eax, 0xd71df32e
je 0x140092440
movzx r8d, byte [rdi + 0x21]
movzx ecx, byte [rdi + 0x22]
test r8b, r8b
je 0x1400924e3
test cl, cl
jne 0x1400924f0
nop
mov eax, dword [0x141dd0240]
xor edx, edx
div dword [0x141dd0244]
or eax, 0xb3dccb70
imul eax, eax, 0xb76519f0
sbb dword [rbp - 0x49], esp
cmp eax, 0xd0af4df0
je 0x140092470
mov eax, dword [0x141dd0248]
or eax, dword [0x141dd024c]
imul rax, rax, 0x19318a0d
shr rax, 0x3c
xor eax, 0x489edf63
add eax, 0x674e7e22
cmp eax, 0xc5e525a5
ja 0x140092490
movzx r15d, byte [rdi + 0x25]
nop dword [rax]
mov eax, dword [0x141dd0250]
add eax, dword [0x141dd0254]
imul eax, eax, 0x192085d6
or eax, 0x3275c171
cmp eax, 0xb08531f2
je 0x1400924c0
jmp 0x1400925df
test cl, cl
je 0x1400925be
nop dword [rax + rax]
mov eax, dword [0x141dd0258]
xor edx, edx
div dword [0x141dd025c]
rol dword [rcx], cl
add eax, 0x3e85e0c5
or eax, 0xf7b3abef
cmp eax, 0xbc1c7154
je 0x1400924f0
movzx r15d, byte [rdi + 0x25]
cmp byte [rdi + 0x23], 0
je 0x1400925df
test r15b, r15b
jne 0x1400925df
mov eax, dword [0x141dd0328]
xor edx, edx
div dword [0x141dd032c]
nop word cs:[rax + rax]
mov eax, dword [0x141dd0330]
imul eax, dword [0x141dd0334]
or eax, 0x3ffb5a71
imul eax, eax, 0x81cc04c5
cmp eax, 0x3685942a
je 0x140092540
nop
mov eax, dword [0x141dd0338]
sub eax, dword [0x141dd033c]
and eax, 0x68bf7f
xor eax, 0xbc0291d9
imul eax, eax, 0xa93176ff
cmp eax, 0x92026c3e
ja 0x140092560
movabs rbx, 0x5700000002
mov edi, 1
test r14, r14
je 0x140092413
nop dword [rax + rax]
mov eax, dword [0x141dd0340]
imul eax, dword [0x141dd0344]
add eax, 0xa7428e5d
cmp eax, 0xa4057f63
jb 0x1400925a0
jmp 0x140092aa9
cmp byte [rdi + 0x23], 0
jne 0x140092527
cmp byte [rdi + 0x24], 0
jne 0x140092527
cmp byte [rdi + 0x25], 0
jne 0x140092527
xor r15d, r15d
cmp byte [rdi + 0x24], 0
je 0x1400925f2
test r15b, r15b
jne 0x1400925fb
mov r12d, 4
jmp 0x140092601
test r15b, r15b
je 0x140092747
mov r12d, 1
mov eax, dword [0x141dd0268]
xor r9d, r9d
xor edx, edx
div dword [0x141dd026c]
nop word cs:[rax + rax]
test r9b, r9b
jne 0x140092620
cmp dword [rdi], 0
je 0x14009268e
mov eax, dword [0x141dd0278]
xor edx, edx
div dword [0x141dd027c]
nop dword [rax + rax]
mov eax, dword [0x141dd0280]
sub eax, dword [0x141dd0284]
add eax, 0xef6e3374
and eax, 0xd321561f
cmp eax, 0x81c02c6e
je 0x140092640
mov ebp, dword [rdi + 4]
mov eax, dword [0x141dd0288]
or eax, dword [0x141dd028c]
imul rax, rax, 0x2fc342b9
shr rax, 0x39
imul eax, eax, 0x6e3fc702
xor eax, 0x7cadb115
cmp eax, 0xf4e3c84a
jae 0x140092660
jmp 0x1400927d5
movzx eax, byte [rdi + 0x20]
nop word cs:[rax + rax]
mov edx, dword [0x141dd0270]
add edx, dword [0x141dd0274]
imul rdx, rdx, 0x1d3cbe93
shr rdx, 0x3c
add edx, 0x4b080437
cmp edx, 0x86c701b
jb 0x1400926a0
test al, al
je 0x140092758
xor eax, eax
nop
test r8b, r8b
setne dl
mov r9d, dword [0x141dd0290]
sub r9d, dword [0x141dd0294]
xor r9d, 0x60680a
and r9d, 0x6862ef0b
imul r9, r9, 0x2a89d5d9
shr r9, 0x3a
cmp r9d, 0x85c0a09f
ja 0x1400926d0
mov al, dl
or eax, 0xfffffffe
shl eax, 0x1e
test cl, cl
mov ebp, 0x80120114
cmove ebp, eax
nop dword [rax + rax]
mov eax, dword [0x141dd0298]
xor eax, dword [0x141dd029c]
xor eax, 0x10a6a9ab
add eax, 0x4933e248
and eax, 0x364acc95
cmp eax, 0xdfcb2a4e
je 0x140092720
jmp 0x1400927d5
movzx eax, byte [rdi + 0x23]
lea r12d, [rax*2 + 3]
jmp 0x140092601
test r8b, r8b
je 0x14009278f
nop dword [rax]
mov eax, dword [0x141dd02a8]
and eax, dword [0x141dd02ac]
imul eax, eax, 0xbaf25118
xor eax, 0x87f73248
imul eax, eax, 0xac7b69f1
cmp eax, 0xda31dad0
ja 0x140092760
test cl, cl
jne 0x1400927d0
mov ebp, 0x40000000
jmp 0x1400927d5
mov eax, 0xf0e6375f
nop word cs:[rax + rax]
mov edx, dword [0x141dd02a0]
and edx, dword [0x141dd02a4]
add edx, 0x7e3286b6
or edx, 0x5b67ef0f
imul rdx, rax
shr rdx, 0x3e
cmp edx, 0x60e78c41
ja 0x1400927a0
test cl, cl
je 0x140092527
mov ebp, 0x120114
mov eax, dword [0x141dd02b0]
or eax, dword [0x141dd02b4]
fcmovbe st(0), st(3)
add dword [0x192bb0fea], eax
or eax, 0x35836bfa
and eax, 0x3dd36fff
cmp eax, 0xa645ef58
cmpsb byte [rsi], byte [rdi]
ja 0x14009285d
mov eax, dword [0x141dd02b8]
imul eax, dword [0x141dd02bc]
imul r13d, eax, 0x22a0be44
xor r13d, 0x60008414
or r13d, 0x9eff7aca
mov r8d, dword [rdi + 0x18]
mov eax, dword [rdi + 0x14]
or eax, dword [rdi + 0x10]
mov r9, qword [rdi + 8]
mov ecx, dword [rdi + 8]
or eax, dword [rdi + 0x1c]
xor ecx, ecx
test r15b, r15b
setne cl
shl ecx, 0x15
or ecx, eax
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r12d
mov qword [rsp + 0x30], 0
mov rcx, rsi
mov edx, ebp
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp r13d, 0xa98c9966
jae 0x14009289d
mov r8d, dword [rdi + 0x18]
mov eax, dword [rdi + 0x14]
or eax, dword [rdi + 0x10]
mov r9, qword [rdi + 8]
or eax, dword [rdi + 0x1c]
xor ecx, ecx
test r15b, r15b
setne cl
shl ecx, 0x15
or ecx, eax
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], r12d
mov qword [rsp + 0x30], 0
mov rcx, rsi
mov edx, ebp
call qword [sym.imp.KERNEL32.dll_CreateFileW]
jmp 0x1400927f7
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x1400929f2
mov eax, dword [0x141dd02c0]
xor edx, edx
div dword [0x141dd02c4]
nop dword [rax + rax]
add byte [rax], al
mov eax, dword [0x141dd02c8]
or eax, dword [0x141dd02cc]
add eax, 0x6a0fff36
dec dword [rdi]
push 0x3d
push rsi
invalid
mov dl, 0xab
ja 0x1400928c0
nop dword [rax + rax]
mov edx, dword [0x141dd02d0]
sub edx, dword [0x141dd02d4]
add edx, 0x71cc5c07
invalid
pop rsp
int3
jno 0x140092874
loop 0x1400928b1
in al, 0x12
xor al, 0x80
jg case.0x1400029e1.833
add byte [rdi], cl
xchg ebp, eax
rol byte [rcx - 0x7d], 0xfc
add al, 0xf
xchg esp, eax
rol dword [rcx + 0x71fc8efa], 0x47
jno 0x140092953
je 0x1400928e0
and cl, al
je 0x140092a9e
add byte [rax], al
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax]
invalid
invalid
mov ecx, dword [0x141dd02f0]
add ecx, dword [0x141dd02f4]
or ecx, 0x5779c9ec
and ecx, 0x57f9cfec
in al, dx
iretd
stc
push rdi
cmp ecx, 0x361a3619
je 0x140092920
cmp eax, 0xb7
jne 0x140092ac0
mov qword [rsp + 0x40], 0
lea r8, [rsp + 0x40]
mov rcx, rbx
mov edx, 6
invalid
add byte [rax], al
add byte [rcx - 0x47], al
or byte [rax], al
add byte [rax], al
add bh, bh
adc eax, 0x6f7a3
nop dword [rax]
mov ecx, dword [0x141dd02f8]
sub ecx, dword [0x141dd02fc]
or ecx, 0xd632f30c
imul ecx, ecx, 0xac680c40
add ecx, 0xe0c61180
cmp ecx, 0x8f69e264
ja 0x140092970
nop word cs:[rax + rax]
mov ecx, dword [0x141dd0300]
imul ecx, dword [0x141dd0304]
imul rcx, rcx, 0x480da7fd
shr rcx, 0x3e
or ecx, 0xb77b7fba
cmp ecx, 0xe6c6c89f
ja 0x1400929a0
test eax, eax
je 0x140092acc
xor edi, edi
mov eax, dword [0x141dd0320]
xor eax, dword [0x141dd0324]
add eax, 0x66a61aa8
and eax, 0xcdae57a
cmp eax, 0x4cc5d723
je 0x1400929d0
jmp 0x140092aa0
mov eax, dword [0x141dd02d8]
xor eax, dword [0x141dd02dc]
add eax, 0xd2771e28
mov ecx, 0xb9e90911
adc dword [rcx], ecx
jmp 0xef1872c4
enter 0xffffffffffffc148, 0xffffffffffffffe9
add ecx, 0xcb2820fa
cmp ecx, 0xa8ae4885
test dword [rax - 0x52], ecx
test al, 0x73
invalid
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebp, dword [0x141dd02e0]
sub ebp, dword [0x141dd02e4]
xor ebp, 0x1210ca08
and ebp, 0x9a55ce0f
add ebp, 0x28278a1b
call rdi
cmp ebp, 0x81a1c536
jb 0x140092a30
mov ebx, eax
shl rbx, 0x20
or rbx, 2
nop word cs:[rax + rax]
nop word cs:[rax + rax]
mov eax, dword [0x141dd02e8]
xor edx, edx
div dword [0x141dd02ec]
or eax, 0x204008
and eax, 0x23c208
cmp eax, 0x7248d8b9
ja 0x140092a70
mov edi, 1
test r14, r14
jne 0x140092aa9
jmp 0x140092413
xor edi, edi
test r14, r14
je 0x140092413
mov rcx, qword [0x141ddb9a0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x140092413
xor edi, edi
test r14, r14
jne 0x140092aa9
jmp 0x140092413
mov eax, dword [0x141dd0308]
xor eax, dword [0x141dd030c]
mov ecx, 0x803c380f
imul rcx, rax
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
or eax, 0xddb9ec04
xor eax, 0x327b7cf9
jnp 0x140092b2a
cmp eax, 0xaab0edf1
jae 0x140092b05
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax]
mov ebp, dword [0x141dd0310]
and ebp, dword [0x141dd0314]
or ebp, 0x5b76f95b
and ebp, 0x7b76fbdf
call rdi
cmp ebp, 0xf4f81870
ja 0x140092b10
movsxd r15, eax
shl r15, 0x20
or r15, 2
add cl, byte [rax - 0x77]
fcos
adc eax, 0x6f762
mov edi, 1
test r14, r14
je 0x140092b86
mov rcx, qword [0x141ddb9a0]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [0x141dd0318]
xor edx, edx
div dword [0x141dd031c]
lodsb al, byte [rsi]
xlatb
rol dword [rcx], cl
xor eax, 0x10c4013a
or eax, 0xce3a1ec1
add eax, 0x2741d38
cmp eax, 0x712729d5
jbe 0x140092b62
mov rbx, r15
jmp 0x140092413
invalid
invalid