Function at 0x140085bf0
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x18
lea rbp, [rsp + 0x10]
mov r14, r8
mov r12, rdx
mov rsi, rcx
xor eax, eax
test al, al
jne 0x140085c61
mov eax, dword [0x14158e1c8]
xor eax, dword [0x14158e1cc]
add eax, 0x33811d63
imul rcx, rax, 0x4593c425
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
mov ecx, eax
shr ecx, 0x1c
shr eax, 0x1b
and eax, 0xa
xor ecx, 0x41bbd165
add ecx, eax
mov eax, 0x20
call fcn.14020e090
sub rsp, rax
mov rdi, rsp
cmp ecx, 0x72ca7b32
jbe 0x140085c70
mov eax, 0x20
call fcn.14020e090
sub rsp, rax
jmp 0x140085c14
mov eax, dword [0x14158e1d0]
xor edx, edx
div dword [0x14158e1d4]
mov ecx, eax
xor ecx, 0x40f2a81a
and ecx, eax
add ecx, 0xc4b511a8
and ecx, 0xe2f0cca3
cmp ecx, 0x1a8b5454
je 0x140085c70
test r14, r14
je 0x140085d74
nop word cs:[rax + rax]
mov eax, dword [0x14158e1d8]
xor edx, edx
div dword [0x14158e1dc]
mov ecx, eax
xor ecx, 0x57dbdf8a
add ecx, eax
and eax, 0xa8242075
sub ecx, eax
add ecx, 0x6e8ff4a4
or ecx, 0x7a57863b
cmp ecx, 0x7e113637
jb 0x140085cb0
test r14, r14
js 0x140085dcf
movzx eax, byte [0x1415acbd0]
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call fcn.14020ae90
add rsp, 0x20
mov rbx, rax
mov eax, 0xffbed1ad
nop dword [rax]
mov ecx, dword [0x14158e1e0]
sub ecx, dword [0x14158e1e4]
xor ecx, 0xb4d0d8fe
imul rcx, rax
shr rcx, 0x3d
cmp ecx, 0xc97ba579
je 0x140085d10
test rbx, rbx
je 0x140085dcf
nop dword [rax + rax]
mov eax, dword [0x14158e1e8]
and eax, dword [0x14158e1ec]
mov ecx, 0xe21fce9b
sub ecx, eax
not ecx
and ecx, 0xd61259
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0xa6b643bd
or eax, 0xf03039bd
cmp eax, 0x4d8f5c97
jb 0x140085d40
jmp 0x140085d79
mov ebx, 1
mov qword [rbp - 8], rsi
mov eax, dword [0x14158e1f0]
add eax, dword [0x14158e1f4]
mov ecx, eax
not ecx
and ecx, 0xca3377b6
mov edx, eax
and edx, 0x35cc8849
imul edx, ecx
mov ecx, eax
and ecx, 0xca3377b6
or eax, 0xca3377b6
imul eax, ecx
add eax, edx
imul eax, eax, 0x717a6f27
mov ecx, eax
and ecx, 0x4dd785b2
xor eax, 0x4dd785b3
lea eax, [rax + rcx*2]
cmp eax, 0xade5a2b4
jbe 0x140085dd1
jmp 0x140085e19
ud2
mov eax, dword [0x14158e1f8]
mov ecx, dword [0x14158e1fc]
mov edx, eax
xor edx, ecx
not edx
and edx, ecx
add edx, edx
sub ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x7f21cce
add eax, eax
sub ecx, eax
add ecx, 0x4509744a
and ecx, 0x1a316f15
mov qword [rdi], r14
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], 0
cmp ecx, 0x51c601da
jbe 0x140085e2a
mov qword [rdi], r14
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], 0
jmp 0x140085dd1
lea r13, [r12 + r14*2]
mov r11d, 0x92264d37
xor r15d, r15d
cmp r12, r13
je 0x140086807
mov eax, dword [0x14158e200]
sub eax, dword [0x14158e204]
mov ecx, eax
not ecx
and ecx, 0xbd6a3e4
mov edx, eax
and edx, 0xf4295c1b
imul edx, ecx
mov ecx, eax
and ecx, 0xbd6a3e4
or eax, 0xbd6a3e4
imul eax, ecx
add eax, edx
imul eax, eax, 0xae6f0b3e
cmp eax, 0x523ecaa5
je 0x140085e40
lea rsi, [r12 + 2]
movzx ecx, word [r12]
mov eax, ecx
and eax, 0xf800
movzx eax, ax
cmp eax, 0xd800
jne 0x140086040
nop
mov eax, dword [0x14158e208]
xor edx, edx
div dword [0x14158e20c]
and eax, 0x88de6f7
mov edx, eax
not edx
or edx, 0x25530a9f
add eax, edx
inc eax
or eax, 0x2c78a378
cmp eax, 0x8289e00e
ja 0x140085ea0
nop dword [rax]
cmp rsi, r13
sete al
cmp ecx, 0xdc00
setae dl
mov r8d, dword [0x14158e210]
or r8d, dword [0x14158e214]
mov r9d, r8d
not r9d
or r9d, 0xd16569ed
add r8d, r9d
inc r8d
mov r9d, r8d
xor r9d, 0xc985df51
xor r8d, 0x64a200a
or r8d, 0xf03048f4
add r8d, r9d
cmp r8d, 0x6aa516d3
je 0x140085ed0
or dl, al
jne 0x140086886
movzx eax, word [rsi]
mov edx, eax
add edx, 0x2000
nop word [rax + rax]
mov r8d, dword [0x14158e218]
mov r9d, dword [0x14158e21c]
mov r10d, r8d
and r10d, r9d
add r10d, r10d
add r8d, r9d
sub r8d, r10d
imul r8d, r8d, 0x1c6c4f0a
cmp r8d, 0xbf39bfbd
je 0x140085f40
movzx edx, dx
cmp edx, 0xfc00
jb 0x140086886
add r12, 4
mov edx, ecx
xor edx, 0xfffffc00
or ecx, 0x3ff
and ecx, edx
and eax, 0x3ff
shl rcx, 0x1a
movabs rdx, 0x100000000
add rcx, rdx
shl rax, 0x10
mov edx, dword [0x14158e220]
add edx, dword [0x14158e224]
or edx, 0x5c956f42
and edx, 0x7dd76ffb
cmp edx, 0xb37aff75
je 0x140085faa
mov edx, ecx
and edx, eax
add rcx, rax
sub rcx, rdx
nop word cs:[rax + rax]
mov eax, dword [0x14158e228]
mov edx, dword [0x14158e22c]
mov r8d, eax
and r8d, edx
or eax, edx
add eax, r8d
mov edx, eax
xor edx, 0x1c982607
and edx, eax
mov eax, edx
or eax, 0x40170
and eax, 0x1c0d6370
or edx, 0x3f4ffbf8
add edx, eax
cmp edx, 0xc449775a
ja 0x140085fe0
mov rsi, r12
mov r14, rcx
shr r14, 0x10
cmp r14d, 0x80
jb 0x140086058
jmp 0x1400860f0
shl rcx, 0x10
mov r14, rcx
shr r14, 0x10
cmp r14d, 0x80
jae 0x1400860f0
mov eax, dword [0x14158e2f0]
mov ecx, dword [0x14158e2f4]
mov edx, eax
xor edx, ecx
not edx
or eax, ecx
and eax, edx
imul rax, rax, 0x6dcf6b37
shr rax, 0x3e
cmp eax, 0x3c17733
je 0x140086058
cmp r15, qword [rdi]
jne 0x140086730
mov eax, dword [0x14158e2f8]
mov ecx, dword [0x14158e2fc]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
mov ecx, eax
not ecx
or ecx, 0x576acb81
or eax, 0xa895347e
and eax, ecx
mov ecx, eax
and ecx, 0x32f937df
or eax, 0x32f937df
add eax, ecx
cmp eax, 0xfa4022d5
jne 0x1400866a0
jmp 0x140086711
mov eax, dword [0x14158e258]
mov edx, dword [0x14158e25c]
mov r8d, eax
xor r8d, edx
not r8d
and r8d, edx
add r8d, r8d
sub edx, r8d
add eax, edx
add eax, 0xa148b8fc
imul rax, r11
shr rax, 0x3d
cmp eax, 0x96939c3b
je 0x1400860f0
mov eax, dword [0x14158e260]
and eax, dword [0x14158e264]
mov edx, eax
not edx
and edx, 0x642e8e18
mov r8d, eax
and r8d, 0x9bd171e7
imul r8d, edx
mov edx, eax
and edx, 0x642e8e18
or eax, 0x642e8e18
imul eax, edx
add eax, r8d
cmp eax, 0xc085172b
jne 0x140086170
mov dword [rbp + 4], 0
nop dword [rax]
mov eax, dword [0x14158e268]
xor edx, edx
div dword [0x14158e26c]
and eax, 0xffcb57c6
add eax, 0xd1001d80
mov edx, eax
not edx
mov r8d, eax
and r8d, 0x2b027e02
and edx, 0xd4dd81d5
imul edx, r8d
mov r8d, eax
and r8d, 0xd4c901c4
or eax, 0xd4dd81d5
imul eax, r8d
add eax, edx
mov dword [rbp + 4], 0
cmp eax, 0x7c7780f5
je 0x140086170
cmp r14d, 0x800
jae 0x140086270
shr ecx, 0x16
mov eax, dword [0x14158e2b0]
sub eax, dword [0x14158e2b4]
or cl, 0xc0
add eax, 0xe2f41c5
or eax, 0xa62c27e3
cmp eax, 0x6456e2c8
jae 0x140086200
mov byte [rbp + 4], cl
nop word cs:[rax + rax]
mov eax, dword [0x14158e2b8]
mov edx, dword [0x14158e2bc]
mov r8d, eax
and r8d, edx
xor eax, edx
lea eax, [rax + r8*2]
imul eax, eax, 0x6108cafa
mov byte [rbp + 4], cl
cmp eax, 0x6a6f7ed2
je 0x140086200
nop dword [rax + rax]
mov eax, dword [0x14158e2c0]
imul eax, dword [0x14158e2c4]
add eax, 0x1cc452f0
or eax, 0x1422610
and eax, 0xf5433610
cmp eax, 0x10a3a5f1
jb 0x140086230
mov r12d, 2
mov ecx, 1
jmp 0x1400864dc
mov eax, dword [0x14158e270]
mov edx, dword [0x14158e274]
not eax
not edx
and edx, eax
not edx
add edx, 0x1fc3106d
shr edx, 1
imul rax, rdx, 0x461d5d1d
shr rax, 0x3c
cmp eax, 0x147a99dd
je 0x140086270
nop
mov eax, dword [0x14158e278]
add eax, dword [0x14158e27c]
mov edx, 0x25f7762f
sub edx, eax
mov eax, edx
or eax, 0x40d18228
not edx
and eax, 0x79d7eeb9
and edx, 0x84081100
or edx, eax
cmp edx, 0x8517aacf
je 0x1400862a0
cmp r14d, 0x10000
jae 0x140086333
mov eax, dword [0x14158e2a8]
imul eax, dword [0x14158e2ac]
add eax, 0xdc5b127c
xor eax, 0xd4dda0a6
add eax, 0x9e969ca5
cmp eax, 0xce96259a
ja 0x1400862da
mov rax, rcx
shr rax, 0x1c
or al, 0xe0
mov byte [rbp + 4], al
shr ecx, 0x16
mov eax, ecx
xor al, 0xc0
or cl, 0x3f
and cl, al
mov eax, ecx
and al, 0x7f
add cl, cl
sub cl, al
add cl, 0x80
mov byte [rbp + 5], cl
mov r12d, 3
mov ecx, 2
jmp 0x1400864dc
mov eax, dword [0x14158e280]
sub eax, dword [str.th__5]
or eax, 0xb8265925
xor eax, 0xf8f05e99
add eax, 0x549a21c2
cmp eax, 0xc770685b
jbe 0x140086370
mov rax, rcx
shr rax, 0x22
or al, 0xf0
mov byte [rbp + 4], al
nop word cs:[rax + rax]
mov eax, dword [0x14158e288]
mov edx, dword [0x14158e28c]
mov r8d, edx
not r8d
mov r9d, eax
and r9d, r8d
or r8d, eax
not r8d
imul r8d, r9d
mov r9d, eax
and r9d, edx
or eax, edx
imul eax, r9d
add eax, r8d
add eax, 0xa0a72737
or eax, 0x5ddfffed
mov rdx, rcx
shr rdx, 0x22
or dl, 0xf0
mov byte [rbp + 4], dl
cmp eax, 0x2e86ebc7
jb 0x140086370
mov eax, dword [0x14158e290]
xor eax, dword [0x14158e294]
mov edx, eax
not edx
mov r8d, eax
and r8d, 0x3f67a86e
and edx, 0xc0985791
imul edx, r8d
mov r8d, eax
and r8d, 0xc0985791
or eax, 0xc0985791
imul eax, r8d
add eax, edx
or eax, 0x230825
and eax, 0x806b697f
cmp eax, 0x55614a2a
ja 0x14008648d
mov eax, dword [0x14158e298]
sub eax, dword [0x14158e29c]
mov edx, eax
not edx
and edx, 0xdf540c
and eax, 0x120abf3
sub eax, edx
not eax
or eax, 0x450e000
and eax, 0x555e327
mov rdx, rcx
shr rdx, 0x1c
and dl, 0x3f
or dl, 0x80
mov byte [rbp + 5], dl
cmp eax, 0x23bc2e0a
ja 0x14008648d
shr ecx, 0x16
mov eax, dword [0x14158e2a0]
mov edx, dword [0x14158e2a4]
not eax
not edx
mov r8d, eax
or r8d, edx
and edx, eax
not edx
and edx, r8d
and edx, 0xb5881657
imul edx, edx, 0x8489c5d6
add edx, 0x5e3952a0
mov eax, ecx
not al
cmp edx, 0x85f8dd50
jae 0x1400864a0
jmp 0x1400864b5
mov rax, rcx
shr rax, 0x1c
and al, 0x3f
or al, 0x80
mov byte [rbp + 5], al
jmp 0x14008640d
mov edx, eax
or dl, 0x3f
add dl, cl
inc dl
or dl, 0x80
mov byte [rbp + 6], dl
xor edx, edx
test dl, dl
je 0x1400864d1
mov edx, eax
or dl, 0xc0
and dl, 0xc8
mov r8d, ecx
and r8b, 0x37
or r8b, dl
xor r8b, 0x48
mov byte [rbp + 6], r8b
jmp 0x1400864a0
mov r12d, 4
mov ecx, 3
mov eax, dword [0x14158e2c8]
xor edx, edx
div dword [0x14158e2cc]
xor eax, 0x452f0024
or eax, 0xbad0bd91
mov edx, eax
xor edx, 0x472c0fbb
and edx, eax
cmp edx, 0x89c4612c
jae 0x140086520
mov eax, r14d
not al
or al, 0x3f
add al, r14b
inc al
or al, 0x80
mov byte [rbp + rcx + 4], al
nop dword [rax + rax]
mov eax, dword [0x14158e2d0]
mov edx, dword [0x14158e2d4]
mov r8d, eax
xor r8d, edx
not edx
and edx, eax
add edx, edx
sub edx, r8d
imul eax, edx, 0xe78d5aef
mov edx, r14d
xor dl, 0x40
and dl, r14b
or dl, 0x80
mov byte [rbp + rcx + 4], dl
cmp eax, 0x4af06d4e
je 0x140086520
mov rax, qword [rdi]
movabs rcx, 0x86f8bede34e069b6
sub rax, rcx
sub rax, r15
add rax, rcx
cmp rax, r12
jae 0x140086603
sub rsp, 0x20
mov rcx, rdi
mov rdx, r15
mov r8, r12
call fcn.14020c100
add rsp, 0x20
mov r15, qword [rdi + 0x10]
lea r14, [rbp + 4]
mov eax, dword [0x14158e2d8]
mov ecx, eax
not ecx
or ecx, dword [0x14158e2dc]
add eax, ecx
inc eax
or eax, 0x9f719aa5
mov ecx, eax
xor ecx, 0xa2afeb55
and eax, 0x5d5014aa
add eax, eax
sub eax, ecx
cmp eax, 0x4f5d7c0d
je 0x140086595
mov rbx, qword [rdi + 8]
nop word [rax + rax]
mov eax, dword [str.7__r]
sub eax, dword [0x14158e2e4]
mov ecx, eax
xor ecx, 0x1577f9b8
add ecx, eax
and eax, 0xea880647
sub ecx, eax
and ecx, 0xaad929af
xor ecx, 0xc80182
cmp ecx, 0x4f8df8c9
jb 0x1400865d0
jmp 0x140086607
lea r14, [rbp + 4]
mov eax, dword [0x14158e2e8]
add eax, dword [0x14158e2ec]
imul eax, eax, 0xfcb7ba85
add eax, 0xb9f81aee
cmp eax, 0xe641b57c
ja 0x140086670
nop word cs:[rax + rax]
lea rcx, [rbx + r15]
sub rsp, 0x20
mov rdx, r14
mov r8, r12
call fcn.14021bb50
add rsp, 0x20
lea rax, [r15 + r12]
mov qword [rdi + 0x10], rax
mov cl, 1
test cl, cl
je 0x140086670
mov r15, rax
mov r11d, 0x92264d37
jmp 0x1400867c0
lea rcx, [rbx + r15]
sub rsp, 0x20
mov rdx, r14
mov r8, r12
call fcn.14021bb50
add rsp, 0x20
lea rax, [r15 + r12]
mov qword [rdi + 0x10], rax
jmp 0x140086630
mov ebx, dword [0x14158e300]
mov eax, dword [0x14158e304]
mov ecx, ebx
not ecx
and ecx, eax
mov edx, eax
not edx
and edx, ebx
imul edx, ecx
mov ecx, ebx
and ecx, eax
or ebx, eax
imul ebx, ecx
add ebx, edx
mov eax, ebx
not eax
mov ecx, ebx
or ecx, 0x22a27f00
mov edx, ecx
and edx, 0x23fe7f1a
and eax, 0x1c0180e5
imul eax, edx
and ecx, 0x1c0180e5
or ebx, 0x3ea3ffe5
imul ebx, ecx
add ebx, eax
and ebx, 0x2e115795
sub rsp, 0x20
mov rcx, rdi
call fcn.140085880
add rsp, 0x20
cmp ebx, 0xf101dae7
jbe 0x140086730
sub rsp, 0x20
mov rcx, rdi
call fcn.140085880
add rsp, 0x20
jmp 0x1400866a0
mov rbx, qword [rdi + 8]
mov byte [rbx + r15], r14b
inc r15
xor eax, eax
test al, al
je 0x140086745
mov qword [rdi + 0x10], r15
mov r11d, 0x92264d37
nop dword [rax + rax]
mov eax, dword [0x14158e308]
mov ecx, dword [0x14158e30c]
mov edx, eax
not edx
mov r8d, ecx
not r8d
mov r9d, edx
and r9d, 0xbc6b7280
and eax, 0x2000172
or eax, r9d
or edx, r8d
and r8d, 0xbc6b7280
and ecx, 0x2000172
or ecx, r8d
xor ecx, eax
not edx
or edx, ecx
or edx, 0x41948c0d
imul eax, edx, 0xf253b0c
mov ecx, eax
and ecx, 0x1938a964
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0x1938a966
mov qword [rdi + 0x10], r15
cmp eax, 0xc5e470fb
ja 0x140086750
nop dword [rax + rax]
mov eax, dword [0x14158e310]
mov ecx, dword [0x14158e314]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
and ecx, 0x24936767
add ecx, 0x7ebba66c
mov eax, ecx
xor eax, 0x4ce085c6
or ecx, 0xb31f6a39
and ecx, eax
cmp ecx, 0x653b5c18
je 0x1400867c0
mov r12, rsi
cmp r12, r13
jne 0x140085e40
mov eax, dword [0x14158e230]
mov ecx, dword [0x14158e234]
mov edx, eax
and edx, ecx
xor eax, ecx
lea eax, [rax + rdx*2]
mov ecx, eax
not ecx
and ecx, 0x35360fe5
mov edx, eax
and edx, 0xcac9f01a
imul edx, ecx
mov ecx, eax
and ecx, 0x35360fe5
or eax, 0x35360fe5
imul eax, ecx
add eax, edx
mov ecx, 0xb39f8037
imul rcx, rax
shr rcx, 0x3d
mov eax, ecx
not eax
mov edx, ecx
and edx, 0xfffffffc
and eax, 0xb43621bb
imul eax, edx
mov edx, ecx
and edx, 3
or ecx, 0xb43621bb
imul ecx, edx
add ecx, eax
cmp ecx, 0x7a6e29e8
mov r9, qword [rbp - 8]
jae 0x140086919
jmp 0x140086971
movabs rax, 0x8000000000000000
mov rcx, qword [rbp - 8]
mov qword [rcx], rax
cmp qword [rdi], 0
je 0x140086aa0
mov rsi, qword [0x1415acb98]
mov eax, dword [0x14158e318]
xor edx, edx
div dword [0x14158e31c]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x8f413cc9
and ecx, 0x70bec336
imul ecx, edx
mov edx, eax
and edx, 0x70bec336
or eax, 0x70bec336
imul eax, edx
add eax, ecx
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xc612d6b8
and ecx, 0x39ed2947
imul ecx, edx
mov edx, eax
and edx, 0x39ed2946
or eax, 0x39ed2947
imul eax, edx
add eax, ecx
add eax, 0x2f7b8896
cmp eax, 0x32571402
jae 0x140086a43
jmp 0x140086a7d
mov eax, dword [0x14158e238]
mov ecx, dword [0x14158e23c]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
mov ecx, eax
not ecx
or ecx, 0x2010
and ecx, 0x40032559
and eax, 0x90000800
or eax, ecx
mov rcx, qword [rdi + 0x10]
mov qword [r9 + 0x10], rcx
movups xmm0, xmmword [rdi]
movups xmmword [r9], xmm0
cmp eax, 0x694291e2
jae 0x140086990
mov rax, qword [rdi + 0x10]
mov qword [r9 + 0x10], rax
movups xmm0, xmmword [rdi]
movups xmmword [r9], xmm0
jmp 0x140086919
mov eax, dword [0x14158e240]
sub eax, dword [0x14158e244]
add eax, 0x3eb820e6
not eax
or eax, 0x5000b440
and eax, 0x70a4bee2
cmp eax, 0x978a6908
je 0x140086990
nop word cs:[rax + rax]
mov eax, dword [0x14158e24c]
mov ecx, eax
xor ecx, eax
not ecx
and ecx, dword [0x14158e248]
xor ecx, eax
mov eax, ecx
not eax
or eax, 0xffcdc7fb
xor eax, 0xca4ae519
and ecx, 0x22000
add ecx, ecx
sub ecx, eax
cmp ecx, 0xcd6cb730
je 0x1400869c0
nop word cs:[rax + rax]
mov eax, dword [0x14158e250]
mov ecx, dword [0x14158e254]
mov edx, eax
and edx, ecx
or eax, ecx
not edx
and edx, eax
imul rax, rdx, 0xa943423
shr rax, 0x3b
or eax, 0xeeda5b1c
xor eax, 0xd360e48f
cmp eax, 0x4af72485
ja 0x140086a00
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [str.urcW]
add eax, dword [0x14158e324]
imul rdi, rax, 0x1249ef61
shr rdi, 0x3c
or edi, 0x8693f770
sub rsp, 0x20
mov rcx, rsi
xor edx, edx
mov r8, rbx
call fcn.14020ae70
add rsp, 0x20
cmp edi, 0x6eecf7d0
jne 0x140086aa0
sub rsp, 0x20
mov rcx, rsi
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
jmp 0x140086a43
mov eax, dword [0x14158e328]
mov ecx, dword [0x14158e32c]
mov edx, eax
not edx
mov r8d, ecx
not r8d
mov r9d, edx
and r9d, 0xa66ae1c1
and eax, 0x59951e3e
or eax, r9d
or edx, r8d
and r8d, 0xa66ae1c1
and ecx, 0x59951e3e
or ecx, r8d
xor ecx, eax
not edx
or edx, ecx
mov eax, edx
xor eax, 0x54643bf8
and eax, edx
mov ecx, eax
and ecx, 0x1e588720
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0x1e588720
imul rax, rax, 0x1f4ad0e7
shr rax, 0x3a
cmp eax, 0xa4793372
ja 0x140086aa0
nop
mov eax, dword [0x14158e330]
sub eax, dword [0x14158e334]
mov ecx, eax
xor ecx, 0x1f9e0a4f
and eax, 0x6061f5b0
add eax, eax
sub eax, ecx
mov ecx, eax
not ecx
and ecx, 0x68d1ea91
mov edx, eax
and edx, 0x972e156e
imul edx, ecx
mov ecx, eax
and ecx, 0x68d1ea91
or eax, 0x68d1ea91
imul eax, ecx
add eax, edx
mov ecx, eax
not ecx
or ecx, 0x2f466f7a
add eax, ecx
inc eax
cmp eax, 0xb554a0c8
jae 0x140086b10
jmp 0x140086a00