Function at 0x140161c70
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, 0x68
lea rbp, [rsp + 0x60]
mov r10, rcx
mov eax, dword [0x14021a258]
mov ecx, dword [str.keAN]
mov r8d, eax
xor r8d, ecx
not r8d
or eax, ecx
and eax, r8d
mov ecx, eax
not ecx
and ecx, 0x2d4840b
mov r8d, eax
and r8d, 0xfd2b7bf4
imul r8d, ecx
mov ecx, eax
and ecx, 0x2d4840b
or eax, 0x2d4840b
imul eax, ecx
add eax, r8d
add eax, 0x7bd1f03
cmp eax, 0x557f9ffe
jb 0x140161d73
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov r8, rsp
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov r13, rsp
mov eax, 0x810
call fcn.1401516e0
sub rsp, rax
mov rcx, rsp
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov r12, rsp
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov rsi, rsp
mov eax, 0x20
call fcn.1401516e0
sub rsp, rax
mov r9, rsp
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov r11, rsp
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov rdi, rsp
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov r15, rsp
xor eax, eax
test al, al
je 0x140161ded
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov eax, 0x810
call fcn.1401516e0
sub rsp, rax
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov eax, 0x20
call fcn.1401516e0
sub rsp, rax
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
jmp 0x140161cdd
mov qword [rbp - 0x38], rsi
mov qword [rbp - 0x40], r9
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x20], rcx
mov ecx, dword [0x14021a260]
or ecx, dword [0x14021a264]
mov rax, qword [r10]
mov r8d, ecx
or r8d, 0x2841000
not ecx
and ecx, 0x20320000
and r8d, 0x284100a
add ecx, r8d
add ecx, 0xdd49ae55
cmp ecx, 0x2ad40351
je 0x140161e76
mov ecx, dword [0x14021a268]
sub ecx, dword [0x14021a26c]
mov r8d, ecx
not r8d
or r8d, 0xc6f80637
add ecx, r8d
inc ecx
xor ecx, 0x2f77eee
imul ecx, ecx, 0x1dc9d60d
mov rsi, qword [rax + 0x108]
mov rbx, qword [rax + 0x100]
cmp ecx, 0x3d9c3ee1
jbe 0x140161e86
mov rcx, qword [rax + 0x108]
mov rcx, qword [rax + 0x100]
jmp 0x140161e36
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x30], r11
mov rax, rdx
shr rax, 0x3b
jne 0x1401620ef
mov r14, qword [r10 + 8]
mov qword [rbp - 0x18], r10
mov rdi, qword [r10 + 0x10]
mov qword [rbp], rdx
shl rdx, 4
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
xor ecx, ecx
call fcn.140107940
add rsp, 0x20
mov qword [rbp - 0x10], rax
nop dword [rax]
mov eax, dword [0x14021a288]
and eax, dword [0x14021a28c]
mov ecx, eax
not ecx
or ecx, 0xa0d676c5
or eax, 0x7e79060f
and eax, ecx
not eax
or eax, 0x1008930
imul rax, rax, 0x73b13591
shr rax, 0x3e
cmp eax, 0xe0718212
je 0x140161ed0
nop word cs:[rax + rax]
mov eax, dword [0x14021a290]
mov ecx, dword [0x14021a294]
not eax
not ecx
or ecx, eax
not ecx
mov eax, ecx
and eax, 0xd01773f9
mov edx, eax
not edx
and edx, 0xdaddf9e9
mov r8d, ecx
and r8d, 0x20210
imul r8d, edx
and ecx, 0xd01571e9
or eax, 0xdaddf9e9
imul eax, ecx
add eax, r8d
imul rax, rax, 0x1e5c4285
shr rax, 0x3c
cmp eax, 0xd7656381
je 0x140161f10
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x48], r13
cmp qword [rbp - 0x10], 0
je 0x14016215c
cmp rsi, rbx
je 0x1401622fb
dec rdi
mov rax, qword [rbp]
dec rax
mov qword [rbp - 8], rax
mov rax, rsi
xor rax, rbx
mov r9, rbx
not r9
and r9, rsi
add r9, r9
sub r9, rax
lea r8, [rbx + 1]
mov rax, r9
xor rax, 0xfffffffffffffffe
or r9, 1
and r9, rax
nop word [rax + rax]
mov eax, dword [0x14021a2a0]
xor edx, edx
div dword [0x14021a2a4]
imul eax, eax, 0xcb75d316
add eax, 0xc5c398d1
or eax, 0x136ec2f
cmp eax, 0xc37d0454
ja 0x140161fc0
test r9, r9
je 0x1401622d0
mov r9, rdi
xor r9, rbx
not r9
and r9, rbx
nop word [rax + rax]
mov eax, dword [0x14021a2a8]
xor edx, edx
div dword [0x14021a2ac]
or eax, 0x683411af
add eax, 0x9218d709
and eax, 0x880f5c48
cmp eax, 0x692f73b1
je 0x140162000
shl r9, 4
add r9, r14
and rbx, qword [rbp - 8]
shl rbx, 4
mov rax, qword [rbp - 0x10]
add rax, rbx
nop word [rax + rax]
mov edx, dword [0x14021a2b0]
mov r10d, dword [str.Z7l4]
mov r11d, r10d
and r11d, edx
add edx, r10d
sub edx, r11d
mov r10d, edx
not r10d
mov r11d, edx
and r11d, 0xf2b553f0
and r10d, 0xd4aac0f
imul r10d, r11d
mov r11d, edx
and r11d, 0xd4aac0f
or edx, 0xd4aac0f
imul edx, r11d
add edx, r10d
imul rdx, rdx, 0x79003add
shr rdx, 0x3e
lea r10d, [rdx - 0x342f63b6]
add edx, edx
sub edx, r10d
cmp edx, 0x373a6092
ja 0x140162040
mov edx, dword [0x14021a2b8]
mov r10d, dword [0x14021a2bc]
not edx
not r10d
or r10d, edx
not r10d
mov edx, r10d
and edx, 0x8314
and r10d, 0x8214
add r10d, r10d
sub edx, r10d
add edx, 0x7294ba96
cmp edx, 0x4acdd377
jae 0x140162281
jmp 0x1401622c7
mov eax, dword [0x14021a270]
mov ecx, dword [0x14021a274]
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
mov edx, eax
and edx, 0x10b6531f
and ecx, 0x2f49ace0
imul ecx, edx
mov edx, eax
and edx, 0x2f49ace0
or eax, 0x2f49ace0
imul eax, edx
add eax, ecx
and eax, 0x324684c0
imul eax, eax, 0x4f17dd58
cmp eax, 0x22516d6f
jbe 0x1401621db
jmp 0x140162209
mov eax, dword [0x14021a298]
mov ecx, dword [0x14021a29c]
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
or eax, 0xb5c4fc2c
mov ecx, eax
xor ecx, 0x40204900
xor eax, 0x9f1db2d1
mov edx, eax
and edx, 0x2bca946f
and ecx, 0xd4356b90
imul ecx, edx
mov edx, eax
and edx, 0xd4356b90
or eax, 0xd4356b90
imul eax, edx
add eax, ecx
cmp eax, 0xbf1d2667
jne 0x1401621c5
ud2
xor eax, eax
nop word [rax + rax]
ud2
mov eax, dword [0x14021a278]
imul eax, dword [0x14021a27c]
imul rax, rax, 0x810ef67
shr rax, 0x3b
mov ecx, eax
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0xd50b9bde
ud2
ud2
mov edx, dword [0x14021a2c0]
mov r10d, dword [0x14021a2c4]
mov r11d, edx
not r11d
and r11d, r10d
not r10d
and r10d, edx
sub r10d, r11d
shr r10d, 3
imul rdx, r10, 0x21b74f3
shr rdx, 0x31
add edx, 0x25bdd3e5
movups xmm0, xmmword [r9]
movups xmmword [rax], xmm0
mov rbx, r8
cmp edx, 0x88ad4a05
jbe 0x1401622d0
movups xmm0, xmmword [r9]
movups xmmword [rax], xmm0
jmp 0x140162281
mov eax, dword [0x14021a2c8]
add eax, dword [0x14021a2cc]
xor eax, 0xdf0873ed
add eax, 0xaee57642
or eax, 0x188aa0f8
cmp eax, 0xa90d49e3
ja 0x1401622d0
cmp rsi, r8
jne 0x1401629fa
xor eax, eax
nop dword [rax]
test al, al
jne 0x140162300
mov r13, qword [rbp - 0x48]
mov rbx, qword [rbp - 0x10]
mov rdi, qword [rbp - 0x58]
mov eax, dword [0x14021a2d0]
mov ecx, dword [0x14021a2d4]
mov edx, eax
not edx
mov r8d, ecx
not r8d
mov r9d, edx
and r9d, 0xbd12cdc8
and eax, 0x42ed3237
or eax, r9d
or edx, r8d
and r8d, 0xbd12cdc8
and ecx, 0x42ed3237
or ecx, r8d
xor ecx, eax
not edx
or edx, ecx
xor edx, 0xdc10e45c
add edx, 0xf5063c63
cmp edx, 0x20c70f45
ja 0x140162310
mov eax, dword [0x14022cb7c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 8]
mov r15, qword [rbp - 0x28]
nop word cs:[rax + rax]
mov ecx, dword [0x14021a2d8]
mov edx, dword [0x14021a2dc]
mov r8d, ecx
and r8d, edx
xor ecx, edx
lea ecx, [rcx + r8*2]
or ecx, 0xcc9aaad0
mov edx, ecx
and edx, 0x2765574f
add edx, edx
neg edx
add ecx, edx
add ecx, 0xa765574f
or ecx, 0x5a30d2cf
cmp ecx, 0xe1993d67
je 0x140162390
test rax, rax
je 0x1401626c0
cmp eax, 1
je 0x140162788
mov eax, dword [0x14022caa8]
cmp eax, 4
jne 0x140162be1
mov rsi, qword [0x14022caa0]
mov eax, 1
lock xadd qword [rsi], rax
nop word cs:[rax + rax]
mov ecx, dword [0x14021a370]
mov edx, dword [0x14021a374]
mov r8d, edx
not r8d
and r8d, ecx
xor edx, ecx
add edx, ecx
sub edx, r8d
imul ecx, edx, 0x22f1a06b
mov edx, ecx
not edx
mov r8d, ecx
or r8d, 0x905dfd19
mov r9d, r8d
and r9d, 0x3d34c7e8
and edx, 0x42820006
imul edx, r9d
and r8d, 0xc2cb3817
or ecx, 0xd2dffd1f
imul ecx, r8d
add ecx, edx
cmp ecx, 0x17319f99
je 0x140162410
nop
mov ecx, dword [0x14021a378]
mov edx, dword [0x14021a37c]
add ecx, edx
add ecx, 0x3518a7b2
mov edx, ecx
and edx, 0x98119d2
xor ecx, 0x898119d2
lea ecx, [rcx + rdx*2]
cmp ecx, 0xa92d8b
jb 0x140162470
test rax, rax
js 0x140162b99
nop word cs:[rax + rax]
mov eax, dword [0x14021a388]
mov ecx, dword [0x14021a38c]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
mov eax, ecx
not eax
or eax, 0xad62386a
or ecx, 0x529dc795
and ecx, eax
add ecx, 0x570fdebd
cmp ecx, 0x889eed1e
ja 0x1401624b0
nop word [rax + rax]
mov eax, dword [0x14021a390]
xor edx, edx
div dword [0x14021a394]
imul rax, rax, 0x6545c6d9
shr rax, 0x3c
add eax, 0xa20996d5
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x99686
and ecx, 0x58a22809
imul ecx, edx
mov edx, eax
and edx, 0xa2000059
or eax, 0xfaa22859
imul eax, edx
add eax, ecx
cmp eax, 0x9b33f87c
je 0x1401624f0
movabs rax, 0x4a0aa3a4504c121a
mov ecx, 0x3c
xor edx, edx
mov r8, rax
not r8
movabs r9, 0x7fffffffffffffe
and r9, rax
movups xmm0, xmmword [0x140206f08]
movups xmm1, xmmword [0x140206ef8]
mov r15, r12
xor r11d, r11d
jmp 0x140162596
add r11, 4
add rcx, 0xfffffffffffffffc
sub r15, 0xffffffffffffff80
cmp rcx, 0xfffffffffffffffc
je 0x140162916
test dl, dl
jne 0x140162647
nop
mov ebx, dword [0x14021a398]
mov edi, dword [0x14021a39c]
mov r14d, ebx
xor r14d, edi
not edi
and edi, ebx
add edi, edi
sub edi, r14d
xor edi, 0xa8a0b64
add edi, 0x7bef99e6
mov ebx, edi
not ebx
and ebx, 0xb515b2d6
and edi, 0x4aea4d29
sub edi, ebx
lea rbx, [rcx - 0x3d]
not rbx
mov r14, r11
or r14, 1
or rbx, 1
and rbx, r14
shl rbx, 5
mov r14, r11
shl r14, 5
or r14, 0x40
mov r13d, r11d
and r13d, 3
shl r13, 5
mov r10, r15
sub r10, r13
neg r13
movups xmmword [r15 + 0x10], xmm0
movups xmmword [r15], xmm1
movups xmmword [r12 + rbx], xmm1
movups xmmword [r12 + rbx + 0x10], xmm0
movups xmmword [r12 + r14], xmm1
movups xmmword [r12 + r14 + 0x10], xmm0
movups xmmword [r15 + r13 + 0x70], xmm0
movups xmmword [r10 + 0x60], xmm1
cmp edi, 0xb203c843
jae 0x140162580
movups xmmword [r15 + 0x10], xmm0
movups xmmword [r15], xmm1
lea r10, [rcx - 0x3d]
mov edi, r10d
not edi
and r10, rax
mov rbx, r11
and rbx, r8
or rbx, r10
mov r10d, r8d
and r10d, 1
or r10, r9
xor r10, rbx
and edi, 1
or rdi, r10
shl rdi, 5
movups xmmword [r12 + rdi], xmm1
movups xmmword [r12 + rdi + 0x10], xmm0
mov r10d, r11d
and r10d, 2
shl r10, 5
mov rdi, r15
sub rdi, r10
neg r10
movups xmmword [r15 + r10 + 0x50], xmm0
movups xmmword [rdi + 0x40], xmm1
mov r10, r11
shl r10, 5
or r10, 0x60
movups xmmword [r12 + r10], xmm1
movups xmmword [r12 + r10 + 0x10], xmm0
jmp 0x1401625a0
mov eax, dword [0x14021a2e0]
mov ecx, dword [0x14021a2e4]
add eax, ecx
add eax, 0x74fb0f8c
imul rax, rax, 0x364c9f93
shr rax, 0x3b
cmp eax, 0x4f6a4537
jne 0x140162700
sub rsp, 0x20
call fcn.140150130
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x14021a2e8]
and eax, dword [0x14021a2ec]
add eax, 0x6a2220af
mov esi, eax
and esi, 0xef18e4bf
mov ecx, esi
not ecx
mov edx, eax
and edx, 0x8800602f
and ecx, 0x775e8fd0
imul ecx, edx
and eax, 0x67188490
or esi, 0x775e8fd0
imul esi, eax
add esi, ecx
sub rsp, 0x20
call fcn.140160c60
add rsp, 0x20
cmp esi, 0x9bddf7f
jb 0x140162700
nop word cs:[rax + rax]
mov eax, dword [0x14021a2f0]
mov ecx, dword [0x14021a2f4]
mov edx, eax
and edx, ecx
add edx, edx
add eax, ecx
sub eax, edx
or eax, 0xfbf53fe3
imul eax, eax, 0x92469f56
cmp eax, 0xa4384ef7
ja 0x140162760
xor eax, eax
test al, al
je 0x1401627ab
mov eax, dword [0x14022cb7c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x10]
mov qword [rdi], rax
mov r14, qword [rbp - 0x20]
mov r12, qword [rbp - 0x40]
nop word cs:[rax + rax]
mov eax, dword [0x14021a2fc]
add eax, dword [0x14021a2f8]
mov ecx, eax
not ecx
and ecx, 0x3807d65b
mov edx, eax
and edx, 0xc7f829a4
imul edx, ecx
mov ecx, eax
and ecx, 0x3807d65b
or eax, 0x3807d65b
imul eax, ecx
add eax, edx
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x1533d696
and ecx, 0x2acc2969
imul ecx, edx
mov edx, eax
and edx, 0x2acc2969
or eax, 0x2acc2969
imul eax, edx
add eax, ecx
not eax
or eax, 0xdba93622
mov ecx, dword [0x14022cb7c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov rcx, qword [rcx + 0x10]
mov qword [rdi], rcx
add eax, 0xa4959bf9
jae 0x1401627c0
nop dword [rax]
mov eax, dword [0x14021a300]
xor edx, edx
div dword [0x14021a304]
add eax, 0x73dbb307
or eax, 0xf50060b4
add eax, 0x19fbf93c
cmp eax, 0x78c5f326
ja 0x140162850
mov r8, qword [rcx + 0x818]
cmp r8, 0xffffffffffffffff
je 0x140162bf3
lea r9, [r8 + 1]
nop dword [rax]
mov eax, dword [0x14021a308]
xor edx, edx
div dword [0x14021a30c]
mov edx, eax
not edx
mov r10d, eax
and r10d, 0xee8df5b4
and edx, 0x11720a4b
imul edx, r10d
mov r10d, eax
and r10d, 0x11720a4b
or eax, 0x11720a4b
imul eax, r10d
add eax, edx
mov edx, eax
xor edx, 0xc941592
and edx, eax
add edx, 0xcd2103b7
cmp edx, 0x7a4b38c2
jb 0x140162890
mov eax, dword [0x14021a310]
xor edx, edx
div dword [0x14021a314]
add eax, 0xb7bf6232
imul rax, rax, 0x2cc8f6f9
shr rax, 0x3c
add eax, 0xbfe1603d
cmp eax, 0x39785987
jae 0x140162c48
jmp 0x140162c81
mov eax, dword [0x14021a3a0]
mov ecx, dword [0x14021a3a4]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
mov eax, 0xb14aa093
imul rax, rcx
shr rax, 0x3c
mov ecx, eax
and ecx, 4
or eax, 0xf7b33a24
add eax, ecx
mov ecx, eax
not ecx
or ecx, 0xa790eaea
add eax, ecx
inc eax
cmp eax, 0x6bf25858
mov rbx, qword [rbp - 0x38]
jae 0x140162979
sub rsp, 0x20
mov r8d, 0x800
mov rcx, rbx
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov r13, qword [rbp - 0x48]
nop dword [rax]
mov eax, dword [0x14021a3a8]
and eax, dword [0x14021a3ac]
mov ecx, eax
xor ecx, 0x98c021a8
or eax, 0x440ac246
and eax, ecx
or eax, 0x23351c11
mov edi, eax
not edi
or edi, 0x26e0e0ca
add edi, eax
sub rsp, 0x20
mov r8d, 0x800
mov rcx, rbx
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp edi, 0xe810e176
je 0x140162980
mov eax, dword [0x14021a3b0]
sub eax, dword [0x14021a3b4]
add eax, 0x8b078a98
mov ecx, eax
and ecx, 0x4c66c131
add ecx, ecx
sub eax, ecx
cmp eax, 0xf34478f1
jne 0x140162e92
jmp 0x140162ed7
mov rax, rbx
not rax
mov rdx, qword [rbp - 8]
not rdx
mov r8, rdi
not r8
mov r15, qword [rbp - 0x10]
jmp 0x140162a3a
lea rcx, [rsi + rax]
add rcx, 0xfffffffffffffffe
add rax, 0xfffffffffffffffe
add rbx, 2
cmp rcx, 0xffffffffffffffff
je 0x1401622fb
mov r9d, dword [0x14021a358]
mov r10d, dword [0x14021a35c]
mov r11d, r10d
not r11d
mov ecx, r9d
and ecx, r11d
or r11d, r9d
not r11d
imul r11d, ecx
mov ecx, r9d
and ecx, r10d
or r9d, r10d
imul r9d, ecx
lea ecx, [r9 + r11]
add ecx, 0x97f697b4
mov r9d, ecx
not r9d
mov r10d, ecx
and r10d, 0xd24c22d0
and r9d, 0x2db3dd2f
imul r9d, r10d
mov r10d, ecx
and r10d, 0x2db3dd2f
or ecx, 0x2db3dd2f
imul ecx, r10d
add ecx, r9d
xor ecx, 0x46719d81
cmp ecx, 0x76157ab6
je 0x140162b39
nop dword [rax]
mov ecx, dword [0x14021a360]
and ecx, dword [0x14021a364]
imul ecx, ecx, 0x3eb17a01
imul rcx, rcx, 0x2fa88e49
shr rcx, 0x3c
imul r9d, ecx, 0x1ebeb58f
mov rcx, rdi
xor rcx, rbx
not rcx
and rcx, rbx
shl rcx, 4
mov r10, rbx
and r10, qword [rbp - 8]
shl r10, 4
lea r11, [rbx + 1]
and r11, rdi
shl r11, 4
lea r13, [rax - 1]
or r13, rdx
not r13
shl r13, 4
movups xmm0, xmmword [r14 + rcx]
movups xmmword [r15 + r10], xmm0
movups xmm0, xmmword [r14 + r11]
movups xmmword [r15 + r13], xmm0
cmp r9d, 0xd84464fa
jne 0x140162a20
mov rcx, rax
or rcx, r8
mov r9, rbx
and r9, rdi
not r9
and r9, rcx
not r9
shl r9, 4
mov rcx, rbx
not rcx
or rcx, rdx
not rcx
shl rcx, 4
movups xmm0, xmmword [r14 + r9]
movups xmmword [r15 + rcx], xmm0
lea rcx, [rbx + 1]
mov r9, rcx
xor r9, r8
and r9, rcx
shl r9, 4
mov r10, rcx
xor r10, rdx
and r10, rcx
shl r10, 4
movups xmm0, xmmword [r14 + r9]
movups xmmword [r15 + r10], xmm0
jmp 0x140162ac0
ud2
sub rsp, 0x20
call fcn.14015b300
add rsp, 0x20
jmp 0x1401623f1
mov eax, dword [0x14021a320]
mov ecx, dword [0x14021a324]
not ecx
mov edx, eax
or edx, ecx
and ecx, eax
not edx
or edx, ecx
imul rax, rdx, 0x890cec5
shr rax, 0x20
sub edx, eax
shr edx, 1
add edx, eax
shr edx, 0x1f
imul eax, edx, 0xad1ef416
mov ecx, eax
and ecx, 0x6e6dc4c2
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0xee6dc4c2
cmp eax, 0x99beccd4
jae 0x140162e4f
jmp 0x140162e6b
mov eax, dword [0x14021a318]
add eax, dword [0x14021a31c]
mov edx, eax
and edx, 0xe502f243
or eax, 0xe502f243
add eax, edx
imul rax, rax, 0x375b9f37
shr rax, 0x3d
or eax, 0x3c9b54ba
mov qword [rcx + 0x818], r9
cmp eax, 0xd10cf9e3
jbe 0x140162c8a
mov qword [rcx + 0x818], r9
jmp 0x140162c48
test r8, r8
mov r9, qword [rbp]
mov r10, qword [rbp - 0x18]
jne 0x140162deb
mov eax, dword [0x14021a338]
mov edx, dword [0x14021a33c]
mov r8d, eax
and r8d, edx
xor eax, edx
lea eax, [rax + r8*2]
mov edx, eax
and edx, 0x778898a4
add edx, edx
sub eax, edx
imul eax, eax, 0x3eb608c9
add eax, 0x5b9cf8c4
imul rax, rax, 0x7d9c0259
shr rax, 0x3e
cmp eax, 0xcc0b282e
jne 0x140162d00
mov rax, qword [rcx + 8]
mov rdx, qword [rax + 0x180]
or rdx, 1
xor eax, eax
lock cmpxchg qword [rcx + 0x880], rdx
nop word cs:[rax + rax]
mov edx, dword [0x14021a340]
mov eax, dword [0x14021a344]
not edx
mov r8d, edx
and r8d, eax
not r8d
or edx, eax
and edx, r8d
mov rax, qword [rcx + 8]
mov r8, qword [rax + 0x180]
or r8, 1
xor eax, eax
lock cmpxchg qword [rcx + 0x880], r8
not edx
add edx, 0x6860c123
xor edx, 0x2cc06871
cmp edx, 0x259c3221
jb 0x140162d00
mov eax, dword [0x14021a348]
mov edx, eax
not edx
or edx, dword [0x14021a34c]
add eax, edx
inc eax
or eax, 0x3e5f9791
mov edx, eax
xor edx, 0x3d0e2228
add edx, eax
and eax, 0xc2f1ddd7
sub edx, eax
and edx, 0xb65e1970
cmp edx, 0x2c6fae21
jae 0x140162d90
inc qword [rcx + 0x828]
nop dword [rax + rax]
mov eax, dword [0x14021a350]
mov edx, dword [0x14021a354]
mov r8d, eax
not r8d
and r8d, edx
not edx
and edx, eax
sub edx, r8d
xor edx, 0x85646cc1
imul rdx, rdx, 0x5d03f3a9
shr rdx, 0x3e
not edx
and edx, 0xfc678dc7
mov rax, qword [rcx + 0x828]
lea r8, [rax + 1]
mov qword [rcx + 0x828], r8
cmp edx, 0xbf1f369b
jb 0x140162d90
mov rdx, rax
xor rdx, 0xffffffffffffff80
test rdx, rax
je 0x140162e2d
mov rsi, qword [rdi]
xor eax, eax
test al, al
jne 0x140162df0
nop word cs:[rax + rax]
mov eax, dword [0x14021a36c]
add eax, dword [0x14021a368]
or eax, 0x9fa243af
add eax, 0x84091d99
imul rax, rax, 0x4cbd491d
shr rax, 0x3e
cmp eax, 0x804274d7
je 0x140162e00
jmp 0x140163580
mov rcx, qword [rcx + 8]
sub rcx, 0xffffffffffffff80
sub rsp, 0x20
mov rdx, rdi
call fcn.140158920
mov r10, qword [rbp - 0x18]
mov r9, qword [rbp]
add rsp, 0x20
jmp 0x140162deb
mov eax, dword [0x14021a328]
xor eax, dword [0x14021a32c]
not eax
or eax, 0xffdceffd
ud2
ud2
mov eax, dword [0x14021a3b8]
xor edx, edx
div dword [0x14021a3bc]
mov ebx, eax
or ebx, 0x21408032
and ebx, 0x3345a07a
add ebx, 0x4eec083a
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
mov edx, 0x980
xor ecx, ecx
call fcn.14014ee50
add rsp, 0x20
cmp ebx, 0xb4d3d323
jbe 0x140162ef4
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
mov edx, 0x980
xor ecx, ecx
call fcn.140107940
add rsp, 0x20
jmp 0x140162e92
test rax, rax
mov r15, qword [rbp - 0x20]
mov r12, qword [rbp - 0x40]
je 0x140162f30
mov edx, dword [0x14021a3c8]
and edx, dword [0x14021a3cc]
movabs rcx, 0x47d9749324986ed2
add edx, 0x648561c0
or edx, 0xdfa754f2
cmp edx, 0xd40ee37f
jne 0x140162f65
jmp 0x140162fe6
mov eax, dword [0x14021a3c0]
xor edx, edx
div dword [0x14021a3c4]
and eax, 0x6f5e1f61
imul eax, eax, 0xacca674c
and eax, 0x9a7e73f8
cmp eax, 0xbd75742e
ja 0x140162f61
ud2
ud2
mov edx, dword [0x14021a3d0]
mov r8d, dword [0x14021a3d4]
mov r9d, edx
not r9d
and r9d, r8d
mov r10d, r8d
not r10d
and r10d, edx
imul r10d, r9d
mov r9d, edx
and r9d, r8d
or edx, r8d
imul edx, r9d
add edx, r10d
mov r8d, edx
not r8d
and r8d, 0xd25387e8
mov r9d, edx
and r9d, 0x2dac7817
imul r9d, r8d
mov r8d, edx
and r8d, 0xd25387e8
or edx, 0xd25387e8
imul edx, r8d
add edx, r9d
imul edx, edx, 0x33261948
mov rbx, rax
xor rbx, 0x7f
and rbx, rax
mov qword [rbx + 0x78], rax
cmp edx, 0xd9b16fcc
jne 0x140162ffe
mov edx, eax
and edx, 0x7f
add rdx, rcx
mov r8, rcx
sub r8, rdx
mov qword [rax + r8 + 0x78], rax
jmp 0x140162f65
mov eax, dword [0x14021a3d8]
xor edx, edx
div dword [0x14021a3dc]
sub rbx, 0xffffffffffffff80
or eax, 0xe8c6ea16
mov ecx, 0xd2ecbc51
imul rcx, rax
shr rcx, 0x3e
imul eax, ecx, 0x72dc5fc8
cmp eax, 0xffc47741
mov r14, qword [rbp - 0x38]
ja 0x1401630e3
mov eax, dword [0x14021a3e0]
sub eax, dword [0x14021a3e4]
imul edi, eax, 0xa6fcbe79
mov eax, edi
not eax
and eax, 0x3bb008ab
mov ecx, edi
and ecx, 0xc44ff754
imul ecx, eax
mov eax, edi
and eax, 0x3bb008ab
or edi, 0x3bb008ab
imul edi, eax
add edi, ecx
mov eax, edi
not eax
mov ecx, edi
and ecx, 0xe74544f5
and eax, 0x18babb0a
imul eax, ecx
mov ecx, edi
and ecx, 0x18babb0a
or edi, 0x18babb0a
imul edi, ecx
add edi, eax
mov qword [rbx], 0
mov qword [rbx + 8], rsi
lea rcx, [rbx + 0x10]
sub rsp, 0x20
mov r8d, 0x800
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rbx + 0x810], xmm0
mov qword [rbx + 0x820], 1
mov qword [rbx + 0x828], 0
cmp edi, 0xd6c0614e
jbe 0x14016312d
mov qword [rbx], 0
mov qword [rbx + 8], rsi
lea rcx, [rbx + 0x10]
sub rsp, 0x20
mov r8d, 0x800
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rbx + 0x810], xmm0
mov qword [rbx + 0x820], 1
mov qword [rbx + 0x828], 0
jmp 0x140163037
mov qword [rbx + 0x880], 0
mov rax, qword [rsi + 0x200]
mov qword [rbx], rax
lock cmpxchg qword [rsi + 0x200], rbx
mov r11, qword [rbp - 0x30]
mov r14, r15
mov r15, qword [rbp - 0x28]
jne 0x1401632b5
mov qword [r11], rbx
mov rcx, qword [rbx + 0x818]
nop word cs:[rax + rax]
mov edx, dword [0x14021a3f0]
mov r8d, dword [0x14021a3f4]
mov eax, edx
not eax
mov r9d, r8d
not r9d
mov r10d, eax
and r10d, 0x82880800
and edx, 0x1214788
or edx, r10d
or eax, r9d
and r9d, 0x82880800
and r8d, 0x1214788
or r8d, r9d
xor r8d, edx
not eax
or eax, r8d
and eax, 0x83a94f88
mov edx, eax
not edx
or edx, 0x2dde71c4
add eax, edx
inc eax
xor eax, 0xd0de964d
cmp eax, 0xa8f9fe01
jb 0x140163170
cmp rcx, 0xffffffffffffffff
je 0x140163348
lea r8, [rcx + 1]
mov eax, dword [0x14021a3f8]
xor edx, edx
div dword [0x14021a3fc]
or eax, 0x76e9df0b
add eax, 0x8d3c4b86
imul rax, rax, 0x42481a95
shr rax, 0x3c
cmp eax, 0xcbfd451b
mov r10, qword [rbp - 0x18]
jne 0x140163218
mov qword [rbx + 0x818], r8
xor eax, eax
nop word [rax + rax]
mov qword [rbx + 0x818], r8
test al, al
jne 0x140163220
nop dword [rax + rax]
mov eax, dword [0x14021a400]
mov edx, dword [0x14021a404]
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, 0xd455a9
and eax, 0xa159a1aa
imul eax, eax, 0x1d27765
cmp eax, 0x754d16bc
je 0x140163230
test rcx, rcx
jne 0x1401634fc
mov rdx, qword [rbx + 8]
mov eax, dword [0x14021a420]
add eax, dword [0x14021a424]
movabs rcx, 0xc575e89c7c248e9b
or eax, 0x601221cc
and eax, 0xe15ef1ce
cmp eax, 0xbad0d08e
jne 0x14016338c
jmp 0x14016339b
mov rcx, rax
xor edx, edx
jmp 0x1401632cc
mov rcx, rax
test r8b, r8b
jne 0x14016315c
mov eax, dword [0x14021a3e8]
mov r8d, dword [0x14021a3ec]
mov r9d, r8d
not r9d
mov r10d, eax
and r10d, r9d
or r9d, eax
not r9d
imul r9d, r10d
mov r10d, eax
and r10d, r8d
or eax, r8d
imul eax, r10d
add eax, r9d
add eax, 0x56f3c781
not eax
or eax, 0xa69466cf
cmp eax, 0x2e928ff9
je 0x140163337
nop word cs:[rax + rax]
mov qword [rbx], rcx
mov rax, rcx
lock cmpxchg qword [rsi + 0x200], rbx
sete r8b
test dl, dl
je 0x1401632c0
mov qword [rbx], rcx
mov rax, rcx
lock cmpxchg qword [rsi + 0x200], rbx
jmp 0x140163320
mov eax, dword [0x14021a408]
mov ecx, dword [0x14021a40c]
mov edx, eax
xor edx, ecx
not ecx
and ecx, eax
add ecx, ecx
sub ecx, edx
or ecx, 0xd665e765
add ecx, 0x4dd41846
mov eax, ecx
xor eax, 0x1a6ef83f
or ecx, 0x659107c0
and ecx, eax
cmp ecx, 0x5239dc58
jbe 0x140163674
jmp 0x14016369b
mov rax, qword [rdx + 0x180]
xor r8d, r8d
test r8b, r8b
je 0x1401633a4
mov rax, qword [rdx + 0x180]
jmp 0x14016338c
mov rdx, rax
not rdx
mov r8, rcx
not r8
and rdx, rcx
mov r9, rax
and r9, r8
or r9, rdx
mov rdx, rcx
and rdx, 0xfffffffffffffffe
or ecx, r8d
and r8d, 1
or r8, rdx
xor r8, r9
and ecx, eax
and ecx, 1
or rcx, r8
xor eax, eax
lock cmpxchg qword [rbx + 0x880], rcx
mov rax, qword [rbx + 0x828]
lea rcx, [rax + 1]
mov qword [rbx + 0x828], rcx
test al, 0x7f
jne 0x1401634fc
nop dword [rax]
mov eax, dword [0x14021a428]
mov ecx, dword [0x14021a42c]
mov edx, eax
xor edx, ecx
not ecx
and ecx, eax
add ecx, ecx
sub ecx, edx
add ecx, 0x4b2e4c09
mov eax, ecx
xor eax, 0x698fc218
or ecx, 0x96703de7
and ecx, eax
cmp ecx, 0x7cb6ef50
je 0x140163400
mov eax, dword [0x14021a430]
add eax, dword [0x14021a434]
mov rsi, qword [rbx + 8]
mov ecx, eax
or ecx, 0xc015f7e2
not eax
and eax, 0x8800808
mov edx, ecx
and edx, 0x376f0475
or edx, eax
xor edx, 0xa948808d
and ecx, 0x61d87b07
or ecx, edx
mov eax, ecx
not eax
or eax, 0x50bb7d51
add eax, ecx
inc eax
cmp eax, 0xef031ba1
ja 0x1401634df
mov eax, dword [0x14021a438]
or eax, dword [0x14021a43c]
mov ecx, eax
and ecx, 0x2c3e26a1
add ecx, ecx
neg ecx
lea edi, [rax + rcx]
add edi, 0xac3e26a1
mov eax, edi
and eax, 0x102f2876
add eax, eax
sub edi, eax
add edi, 0x102f2876
or edi, 0x169bd926
lea rcx, [rsi + 0x80]
sub rsp, 0x20
mov rdx, r11
call fcn.140158920
mov r11, qword [rbp - 0x30]
mov r10, qword [rbp - 0x18]
add rsp, 0x20
cmp edi, 0x18f5ba4
jae 0x1401634fc
lea rcx, [rsi + 0x80]
sub rsp, 0x20
mov rdx, r11
call fcn.140158920
mov r11, qword [rbp - 0x30]
add rsp, 0x20
jmp 0x140163480
xor eax, eax
test al, al
jne 0x14016355f
mov eax, dword [0x14021a440]
mov ecx, dword [0x14021a444]
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 rcx, qword [rbx + 0x818]
mov rdx, qword [rbx + 0x820]
lea r8, [rdx - 1]
mov rsi, qword [r11]
mov qword [rbx + 0x820], r8
or eax, 0x890926a5
add eax, 0xcf7bba8f
xor eax, 0x9ccb3a1c
cmp eax, 0x94014ebe
jae 0x140163568
dec qword [rbx + 0x820]
jmp 0x140163502
xor rdx, 1
or rcx, rdx
setne al
mov r9, qword [rbp]
je 0x1401635f7
test al, al
je 0x1401635f7
mov rbx, qword [rbp - 0x10]
mov qword [r15], rsi
mov qword [r10 + 8], rbx
mov qword [r10 + 0x10], r9
mov rsi, qword [r10]
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
mov edx, 0x10
xor ecx, ecx
call fcn.140107940
add rsp, 0x20
test rax, rax
je 0x140163614
mov r9, qword [rbp]
nop word cs:[rax + rax]
mov ecx, dword [0x14021a458]
mov edx, dword [0x14021a45c]
mov r8d, ecx
and r8d, edx
add r8d, r8d
add ecx, edx
sub ecx, r8d
imul ecx, ecx, 0x5c689328
cmp ecx, 0x14ff947b
je 0x1401635c0
xor ecx, ecx
test cl, cl
je 0x1401636ce
jmp 0x140163725
sub rsp, 0x20
mov rcx, rbx
call fcn.14015a140
mov r10, qword [rbp - 0x18]
mov r9, qword [rbp]
add rsp, 0x20
jmp 0x14016357c
mov eax, dword [0x14021a448]
mov ecx, dword [0x14021a44c]
mov edx, eax
xor edx, ecx
not edx
or eax, ecx
and eax, edx
add eax, 0xc0b74654
or eax, 0x80116dba
imul rax, rax, 0x22c7bd35
shr rax, 0x3d
cmp eax, 0x996e1099
jbe 0x140163650
ud2
mov eax, dword [0x14021a450]
sub eax, dword [0x14021a454]
add eax, 0x94215a25
or eax, 0x8f5f5fbf
ud2
mov eax, dword [0x14021a410]
xor edx, edx
div dword [0x14021a414]
or eax, 0x89b77852
imul rax, rax, 0x2df53951
shr rax, 0x3b
ud2
ud2
mov ecx, dword [0x14021a460]
mov edx, dword [0x14021a464]
mov r8d, edx
not r8d
and r8d, ecx
xor edx, ecx
add edx, ecx
sub edx, r8d
add edx, 0xb07426e8
mov ecx, edx
and ecx, 0x23b2f8a7
add ecx, ecx
sub edx, ecx
add edx, 0x23b2f8a7
mov ecx, edx
xor ecx, 0xd5965fd1
and ecx, edx
mov qword [rax], rbx
mov qword [rax + 8], r9
mov rdi, rax
xchg qword [rsi + 0x80], rdi
cmp ecx, 0xa04aebb9
jne 0x140163738
mov qword [rax], rbx
mov qword [rax + 8], r9
mov rcx, rax
xchg qword [rsi + 0x80], rcx
jmp 0x1401636ce
mov r11, qword [r15]
nop dword [rax + rax]
mov eax, dword [0x14021a468]
mov ecx, dword [0x14021a46c]
mov edx, eax
not edx
or eax, ecx
not ecx
or ecx, edx
not ecx
not eax
or eax, ecx
xor eax, 0x10000001
or eax, 0x2129a23a
and eax, 0x752da23f
cmp eax, 0xa2e20a42
ja 0x140163740
test r11, r11
mov rsi, qword [rbp - 0x50]
je 0x1401637df
nop dword [rax + rax]
mov eax, dword [0x14021a4b0]
imul eax, dword [0x14021a4b4]
or eax, 0x3c5ccb4a
add eax, 0x2faef17d
or eax, 0x93cb1f92
cmp eax, 0xaf5426d6
je 0x140163780
mov r15, r14
mov eax, dword [0x14021a4b8]
mov ecx, dword [0x14021a4bc]
mov edx, ecx
and edx, eax
add eax, ecx
sub eax, edx
add eax, 0x512ab5be
imul rax, rax, 0x19dc8811
shr rax, 0x3c
or eax, 0x249b27fa
cmp eax, 0xa867a90c
jne 0x1401639da
jmp 0x1401639eb
mov eax, dword [0x14021a470]
xor edx, edx
div dword [0x14021a474]
and rdi, 0xfffffffffffffff8
nop word cs:[rax + rax]
mov eax, dword [0x14021a478]
sub eax, dword [0x14021a47c]
add eax, 0xaf5a9c9b
not eax
or eax, 0x7674bafc
and eax, 0xff7effff
cmp eax, 0x1ba78fc2
jb 0x140163800
mov r12, r15
nop word [rax + rax]
mov eax, dword [0x14021a480]
add eax, dword [0x14021a484]
or eax, 0x4aff8bd9
add eax, 0x267eded4
mov ecx, eax
xor ecx, 0xf1787cc2
and ecx, eax
cmp ecx, 0x9556c3b4
ja 0x140163830
cmp qword [rdi + 8], 0
je 0x140163925
nop word cs:[rax + rax]
mov eax, dword [0x14021a488]
mov ecx, dword [0x14021a48c]
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
xor eax, 0x2a28c850
or eax, 0xd41715af
cmp eax, 0x4ab0f257
jb 0x140163870
mov rsi, qword [rdi]
mov rbx, qword [0x14022cb48]
mov eax, dword [0x14021a494]
not eax
add eax, dword [0x14021a490]
cmp eax, 0xdd959057
jne 0x1401638e1
sub rsp, 0x20
mov rcx, rbx
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
mov r14, qword [sym.imp.KERNEL32.dll_HeapFree]
nop dword [rax + rax]
mov eax, dword [0x14021a49c]
mov r15d, eax
xor r15d, eax
not r15d
and r15d, dword [0x14021a498]
xor r15d, eax
sub rsp, 0x20
mov rcx, rbx
xor edx, edx
mov r8, rsi
call r14
add rsp, 0x20
cmp r15d, 0x2c8beb49
je 0x1401638f0
mov eax, dword [0x14021a4a0]
mov ecx, dword [0x14021a4a4]
not eax
not ecx
or ecx, eax
not ecx
add ecx, 0xd975e939
imul rax, rcx, 0x203840bb
shr rax, 0x3b
xor eax, 0xa54db544
cmp eax, 0x5c877da4
jae 0x14016395d
mov rax, qword [0x14022cb48]
mov eax, 0xc796c4c3
mov rsi, qword [rbp - 0x50]
nop word cs:[rax + rax]
mov ecx, dword [0x14021a4a8]
mov edx, dword [0x14021a4ac]
mov r8d, edx
not r8d
and r8d, ecx
xor edx, ecx
add edx, ecx
sub edx, r8d
mov ecx, edx
xor ecx, 0xa57f36d6
and edx, 0x5a80c929
add edx, edx
sub edx, ecx
add edx, 0xee75c254
imul rdx, rax
shr rdx, 0x3f
mov rcx, qword [0x14022cb48]
cmp edx, 0x5c6af685
je 0x140163970
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call fcn.14014eed0
add rsp, 0x20
mov r11, qword [r12]
mov r14, qword [rbp - 0x20]
jmp 0x140163a8b
lea rax, [0x140097a70]
mov qword [r12], rax
xor eax, eax
test al, al
je 0x1401639f8
lea rax, [0x140097a70]
mov qword [r12], rax
jmp 0x1401639da
mov eax, dword [0x14021a4c0]
add eax, dword [0x14021a4c4]
or eax, 0x18114162
and eax, 0x5c11d162
cmp eax, 0xbb3006e1
mov r14, r11
ja 0x140163a67
mov ebx, dword [0x14021a4c8]
mov eax, dword [str.UCOb]
mov ecx, eax
not ecx
mov edx, ebx
and edx, ecx
or ecx, ebx
not ecx
imul ecx, edx
mov edx, ebx
and edx, eax
or ebx, eax
imul ebx, edx
add ebx, ecx
xor ebx, 0xdd2a4cd1
mov qword [r12 + 8], rdi
sub rsp, 0x20
mov rcx, r11
mov rdx, r12
call fcn.140150170
mov r11, r14
add rsp, 0x20
cmp ebx, 0x22cfc14
jne 0x140163a84
mov qword [r12 + 8], rdi
sub rsp, 0x20
mov rcx, r11
mov rdx, r12
call fcn.140087870
mov r11, r14
add rsp, 0x20
jmp 0x140163a18
mov r14, r15
mov r12, qword [rbp - 0x28]
movabs rax, 0xfffffffffffffc0
mov r8, qword [rbp]
xor rax, r8
not rax
nop
mov ecx, dword [0x14021a4d0]
or ecx, dword [0x14021a4d4]
mov edx, ecx
xor edx, 0xf1920623
and edx, ecx
mov ecx, edx
xor ecx, 0x76be38d1
and edx, 0x941c72e
add edx, edx
sub edx, ecx
xor edx, 0xf5514322
cmp edx, 0x3a32a035
jb 0x140163aa0
test rax, r8
je 0x14016415f
mov eax, dword [0x14021a4d8]
xor edx, edx
div dword [0x14021a4dc]
nop dword [rax]
mov eax, dword [0x14021a4e0]
xor edx, edx
div dword [0x14021a4e4]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xd1f878af
and ecx, 0x2e078750
imul ecx, edx
mov edx, eax
and edx, 0x2e078750
or eax, 0x2e078750
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x7212900
and ecx, 0x7f72900
xor eax, 0x28d612dc
lea eax, [rax + rcx*2]
cmp eax, 0x4079587
jb 0x140163af0
test r11, r11
je 0x140164310
mov rax, qword [r11 + 0x810]
xor ecx, ecx
nop word cs:[rax + rax]
test cl, cl
jne 0x140163b60
mov rdi, r11
test rax, rax
je 0x140164144
mov eax, 0x910c57e5
nop word cs:[rax + rax]
mov ecx, dword [0x14021a4e8]
add ecx, dword [0x14021a4ec]
imul rcx, rax
shr rcx, 0x3f
mov edx, ecx
xor edx, 0xad64f6df
xor ecx, 0x2c2472c9
and ecx, edx
cmp ecx, 0xdb82cf52
je 0x140163b80
mov r15, qword [r11 + 8]
mov eax, 0xab560f17
nop word cs:[rax + rax]
mov ecx, dword [0x14021a4f0]
or ecx, dword [0x14021a4f4]
imul rcx, rax
shr rcx, 0x3f
or ecx, 0xe301e902
imul ecx, ecx, 0x32eb2d84
cmp ecx, 0xe7eb74bb
ja 0x140163bc0
mov rax, 0xffffffffffffffff
xor ecx, ecx
movups xmm0, xmmword [0x140206f08]
movups xmm1, xmmword [0x140206ef8]
movabs rdx, 0x7fffffffffffffc
mov r8, rsi
nop dword [rax]
movups xmmword [r8 + 0x10], xmm0
movups xmmword [r8], xmm1
mov r9, rcx
shl r9, 5
or r9, 0x20
movups xmmword [rsi + r9], xmm1
movups xmmword [rsi + r9 + 0x10], xmm0
mov r9, rax
not r9
mov r10, rcx
or r10, 2
or r9, 2
and r9, r10
shl r9, 5
movups xmmword [rsi + r9], xmm1
movups xmmword [rsi + r9 + 0x10], xmm0
mov r9, rcx
and r9, rdx
mov r10, rcx
xor r10, 3
sub r10, r9
add r10, rcx
shl r10, 5
movups xmmword [rsi + r10], xmm1
movups xmmword [rsi + r10 + 0x10], xmm0
add rcx, 4
add rax, 0xfffffffffffffffc
sub r8, 0xffffffffffffff80
cmp rcx, 0x40
jne 0x140163c10
mov eax, dword [0x14021a4f8]
xor edx, edx
div dword [0x14021a4fc]
mov qword [rbp - 8], r11
lea rbx, [r11 + 0x10]
nop dword [rax]
mov eax, dword [0x14021a500]
mov ecx, dword [0x14021a504]
not eax
not ecx
and ecx, eax
not ecx
imul rax, rcx, 0x1abd554d
shr rax, 0x3c
add eax, 0xad81a639
cmp eax, 0xa660c9e
jb 0x140163ca0
mov eax, dword [0x14021a508]
add eax, dword [0x14021a50c]
mov ecx, eax
xor ecx, 0x41000
or eax, 0x20
and eax, ecx
or eax, 0x91004009
and eax, 0x91045029
cmp eax, 0x3bb4b1b9
jb 0x140163d3f
mov eax, dword [0x14021a510]
mov ecx, dword [0x14021a514]
xor ecx, eax
not ecx
and ecx, eax
or ecx, 0x49ed0713
imul rdi, rcx, 0x35b8a61f
shr rdi, 0x3d
or edi, 0x5fa689e0
sub rsp, 0x20
mov r8d, 0x800
mov rcx, r13
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp edi, 0x946b6a79
jne 0x140163d5a
sub rsp, 0x20
mov r8d, 0x800
mov rcx, r13
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
jmp 0x140163cf5
mov eax, dword [0x14021a518]
mov ecx, eax
not ecx
or ecx, dword [0x14021a51c]
add eax, ecx
inc eax
mov ecx, eax
not ecx
and ecx, 0x42fa18c8
mov edx, eax
and edx, 0xbd05e737
imul edx, ecx
mov ecx, eax
and ecx, 0x42fa18c8
or eax, 0x42fa18c8
imul eax, ecx
add eax, edx
imul eax, eax, 0x35a8fa8f
add eax, 0x9ed18692
cmp eax, 0x4aef2654
jbe 0x140163e05
sub rsp, 0x20
mov r8d, 0x808
mov rcx, r14
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 0x800
mov rcx, rbx
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov rax, qword [rbp - 8]
mov qword [rax + 0x810], 0
mfence
mov rax, qword [r15 + 0x180]
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
mov edx, 0x818
xor ecx, ecx
call fcn.14014ee50
add rsp, 0x20
mov rsi, r13
mov r13, r14
mov r12, qword [rbp - 8]
nop
sub rsp, 0x20
mov r8d, 0x808
mov rcx, r13
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 0x800
mov rcx, rbx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov qword [r12 + 0x810], 0
mfence
mov r14, qword [r15 + 0x180]
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
mov edx, 0x818
xor ecx, ecx
call fcn.140107940
add rsp, 0x20
mov rdi, rax
xor eax, eax
test al, al
jne 0x140163e10
test rdi, rdi
je 0x140163eb7
mov eax, dword [0x14021a530]
xor edx, edx
div dword [0x14021a534]
add eax, 0xbec72329
or eax, 0xd988ad98
mov ecx, eax
xor ecx, 0x87d50f44
add ecx, eax
and eax, 0x782af0bb
sub ecx, eax
cmp ecx, 0xadb8be9e
mov r12, qword [rbp - 0x20]
jae 0x140163f3e
jmp 0x140163f84
mov eax, dword [0x14021a520]
imul eax, dword [0x14021a524]
mov ecx, eax
not ecx
or eax, 0xc1f201
or ecx, 0x5120006e
and ecx, eax
or ecx, 0xae1e0d90
mov eax, ecx
not eax
and ecx, 0xed1e9528
mov edx, eax
and edx, 0x10e16247
or edx, ecx
xor edx, 0xddee779c
and eax, 0x10e0e224
or eax, edx
cmp eax, 0xb59a7d45
jne 0x140163f05
ud2
mov eax, dword [0x14021a528]
or eax, dword [str._As]
mov ecx, eax
and ecx, 0x8f720946
or eax, 0x8f720946
add eax, ecx
add eax, 0x3f32192e
imul rax, rax, 0x1c97b90f
shr rax, 0x3c
ud2
mov eax, dword [0x14021a538]
or eax, dword [0x14021a53c]
imul ebx, eax, 0x2c6d1a4a
or ebx, 0x834de595
and ebx, 0x9f5df5d7
sub rsp, 0x20
mov r8d, 0x808
mov rcx, rdi
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov qword [rdi + 0x808], r14
cmp ebx, 0xa6792f0
jae 0x140163fa6
sub rsp, 0x20
mov r8d, 0x808
mov rcx, rdi
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov qword [rdi + 0x808], r14
jmp 0x140163f3e
xor eax, eax
test al, al
jne 0x140163feb
mov eax, dword [0x14021a540]
sub eax, dword [0x14021a544]
add eax, 0x85ae745e
mov ecx, eax
and ecx, 0x1ede3cd1
add ecx, ecx
sub eax, ecx
add eax, 0x1ede3cd1
imul rax, rax, 0x48ea144d
shr rax, 0x3c
mov qword [rdi + 0x810], 0
cmp eax, 0x2c0749f8
jbe 0x140163ff8
mov qword [rdi + 0x810], 0
jmp 0x140163fac
mov r11, qword [rbp - 8]
nop dword [rax]
mov rcx, qword [r15 + 0x100]
mov rdx, rcx
and rdx, 0xfffffffffffffff8
mov r8, qword [rdx + 0x810]
cmp r8, 7
ja 0x140164070
xor eax, eax
lock cmpxchg qword [rdx + 0x810], rdi
sete al
nop dword [rax]
mov edx, dword [0x14021a548]
imul edx, dword [0x14021a54c]
mov r8d, edx
xor r8d, 0x20021120
or edx, 0x10050000
and edx, r8d
or edx, 0x1006400
and edx, 0x31077520
cmp edx, 0x7e0de2a6
je 0x140164030
test al, al
je 0x140164080
jmp 0x1401640cb
mov rax, rcx
lock cmpxchg qword [r15 + 0x100], r8
nop dword [rax]
mov eax, dword [0x14021a550]
mov ecx, dword [0x14021a554]
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
and eax, 0x7fffffff
xor eax, 0xecc44de
add eax, 0xfdbc569
and eax, 0x448c041d
cmp eax, 0x29fc111f
jae 0x140164080
jmp 0x140164000
mov eax, dword [0x14021a558]
mov edx, dword [0x14021a55c]
mov r8d, eax
xor r8d, edx
not edx
and edx, eax
add edx, edx
sub edx, r8d
mov eax, 0x99bc0e8d
imul rax, rdx
shr rax, 0x3e
add eax, 0x5ef35d0f
and eax, 0x16d3150e
cmp eax, 0x7624d1bf
jbe 0x140164110
mov rax, rcx
lock cmpxchg qword [r15 + 0x100], rdi
mov edx, dword [0x14021a560]
or edx, dword [0x14021a564]
mov rax, rcx
lock cmpxchg qword [r15 + 0x100], rdi
add edx, 0x4e48bbd2
or edx, 0x7faf39f6
cmp edx, 0x3e2e5042
jb 0x140164110
mov r12, qword [rbp - 0x28]
mov rdi, qword [r12]
mov rcx, qword [r11 + 8]
sub rcx, 0xffffffffffffff80
sub rsp, 0x20
mov rdx, r12
call fcn.140158920
add rsp, 0x20
mov r11, rdi
test r11, r11
je 0x140164310
mov rax, qword [r11 + 0x818]
lea rcx, [rax - 1]
mov edx, dword [0x14021a568]
mov r8d, dword [0x14021a56c]
mov r9d, edx
xor r9d, r8d
not r9d
and r9d, r8d
add r9d, r9d
sub r8d, r9d
add edx, r8d
add edx, 0x20cb7052
mov r8d, edx
not r8d
mov r9d, edx
and r9d, 0xba8426bd
and r8d, 0x457bd942
imul r8d, r9d
mov r9d, edx
and r9d, 0x457bd942
or edx, 0x457bd942
imul edx, r9d
add edx, r8d
cmp edx, 0xc54c6c55
jbe 0x1401641e0
mov qword [r11 + 0x818], rcx
nop dword [rax]
mov edx, dword [0x14021a570]
mov r8d, dword [0x14021a574]
mov r9d, edx
not r9d
and r9d, r8d
mov r10d, r8d
not r10d
and r10d, edx
imul r10d, r9d
mov r9d, edx
and r9d, r8d
or edx, r8d
imul edx, r9d
add edx, r10d
imul edx, edx, 0x8e001fe3
mov r8d, edx
xor r8d, 0xa773e1f
add r8d, edx
and edx, 0xf588c1e0
sub r8d, edx
imul rdx, r8, 0x732d6647
shr rdx, 0x3b
mov qword [r11 + 0x818], rcx
cmp edx, 0x60bf6284
je 0x1401641e0
nop dword [rax]
mov ecx, dword [0x14021a578]
mov edx, dword [0x14021a57c]
mov r8d, ecx
not r8d
and r8d, edx
mov r9d, edx
not r9d
and r9d, ecx
imul r9d, r8d
mov r8d, ecx
and r8d, edx
or ecx, edx
imul ecx, r8d
add ecx, r9d
imul rcx, rcx, 0x507d3f7f
shr rcx, 0x3a
add ecx, 0xad2cd03b
cmp ecx, 0xb48b90d
jb 0x140164250
cmp rax, 1
jne 0x140164310
mov qword [r11 + 0x880], 0
nop dword [rax + rax]
mov eax, dword [0x14021a580]
mov ecx, dword [0x14021a584]
mov edx, eax
and edx, ecx
not edx
not eax
not ecx
or ecx, eax
and ecx, edx
not ecx
mov eax, ecx
and eax, 0x35581ea4
add eax, eax
neg eax
add eax, ecx
add eax, 0x35581ea4
mov ecx, eax
or ecx, 0x8a49a0
and ecx, 0x10ee7fe6
or eax, 0x15ef7fff
add eax, ecx
cmp eax, 0x66aa2b4e
jb 0x1401642b0
cmp qword [r11 + 0x820], 0
je 0x140164357
nop word cs:[rax + rax]
mov eax, dword [0x14021a588]
mov ecx, dword [0x14021a58c]
mov edx, ecx
not edx
or edx, eax
not eax
or eax, ecx
and eax, edx
not eax
imul rax, rax, 0x3519c54d
shr rax, 0x3d
add eax, 0xec0e174b
and eax, 0xa80c0604
cmp eax, 0xf5382a1a
ja 0x140164310
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
sub rsp, 0x20
mov rcx, r11
call fcn.14015a140
add rsp, 0x20
jmp 0x140164310