Function at 0x14001aa20
Capabilities:
Execute anti-debugging instructions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x148
mov r12, rcx
mov qword [rsp + 0x98], 0
mov qword [rsp + 0xa0], 8
mov qword [rsp + 0xa8], 0
lea rcx, [rsp + 0x28]
call fcn.140042340
cmp byte [rsp + 0x28], 0x12
jne 0x14001c5d9
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], 8
mov qword [rsp + 0x38], 0
mov eax, 0x4201337
xor ecx, ecx
mov r11, rbx
cpuid
xchg rbx, r11
mov r9d, ecx
mov r10d, edx
mov r8d, eax
mov eax, 0x40000000
xor ecx, ecx
mov rsi, rbx
cpuid
xchg rbx, rsi
mov ebx, ecx
mov edi, edx
cmp r10d, edx
jne 0x14001aada
cmp r9d, ebx
jne 0x14001aada
cmp r8d, eax
jne 0x14001aada
cmp r11d, esi
jne 0x14001aada
cmp ebx, 0x4d566572
je 0x14001aba8
jmp 0x14001ac6a
lea rax, [0x140093478]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
movabs rdx, 0x6560597a83cee2c2
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x70]
call fcn.14000e670
mov r14, qword [rax]
mov r15, qword [rax + 8]
movzx ebp, byte [rax + 0x10]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x11
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c68f
mov rsi, rax
xor bpl, 0x59
movabs rax, 0xd634f633ed0482fe
xor r14, rax
movabs rax, 0xf17e22e856a4fb0a
xor r15, rax
mov qword [rsi], r14
mov qword [rsi + 8], r15
mov byte [rsi + 0x10], bpl
mov r14, qword [rsp + 0x38]
cmp r14, qword [rsp + 0x28]
jne 0x14001ab75
lea rcx, [rsp + 0x28]
call fcn.14002ae90
mov rax, qword [rsp + 0x30]
lea rcx, [r14 + r14*2]
mov qword [rax + rcx*8], 0x11
mov qword [rax + rcx*8 + 8], rsi
mov qword [rax + rcx*8 + 0x10], 0x11
inc r14
mov qword [rsp + 0x38], r14
cmp ebx, 0x4d566572
jne 0x14001ac6a
cmp edi, 0x65726177
jne 0x14001ac6a
lea rax, [0x14009d80e]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
movabs rdx, 0xb387f0d9b37507ce
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x70]
call fcn.14000f100
mov rbx, qword [rax]
mov rdi, qword [rax + 8]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x10
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c69e
mov rsi, rax
movabs rax, 0x9e5d3aac2d8b186f
xor rdi, rax
movabs rax, 0xcb3b7ba8be5545df
xor rbx, rax
mov qword [rsi], rbx
mov qword [rsi + 8], rdi
mov rdi, qword [rsp + 0x38]
cmp rdi, qword [rsp + 0x28]
jne 0x14001ac43
lea rcx, [rsp + 0x28]
call fcn.14000c850
mov rax, qword [rsp + 0x30]
lea rcx, [rdi + rdi*2]
mov qword [rax + rcx*8], 0x10
mov qword [rax + rcx*8 + 8], rsi
mov qword [rax + rcx*8 + 0x10], 0x10
inc rdi
mov qword [rsp + 0x38], rdi
mov eax, 1
xor ecx, ecx
mov r8, rbx
cpuid
xchg rbx, r8
mov r15, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
lea rax, [rsi*8]
lea rbx, [rax + rax*2]
mov rax, qword [rsp + 0x98]
mov r14, qword [rsp + 0xa8]
sub rax, r14
cmp rax, rsi
jb 0x14001c56c
mov qword [rsp + 0x110], r12
lea rcx, [r14 + r14*2]
shl rcx, 3
add rcx, qword [rsp + 0xa0]
mov rdx, rdi
mov r8, rbx
call fcn.140096e90
add rsi, r14
mov qword [rsp + 0xa8], rsi
test r15, r15
je 0x14001acf9
shl r15, 3
lea rdx, [r15 + r15*2]
mov r8d, 8
mov rcx, rdi
call fcn.14003cdf0
rdtsc
mov qword [rsp + 0x68], rax
mov eax, 1
cpuid
rdtsc
mov qword [rsp + 0x60], rax
rdtsc
mov r11, rax
mov eax, 1
cpuid
rdtsc
mov rdi, rax
rdtsc
mov qword [rsp + 0x58], rax
mov eax, 1
cpuid
rdtsc
mov r13, rax
rdtsc
mov r10, rax
mov eax, 1
cpuid
rdtsc
mov rbx, rax
rdtsc
mov rbp, rax
mov eax, 1
cpuid
rdtsc
mov rsi, rax
rdtsc
mov r9, rax
mov eax, 1
cpuid
rdtsc
mov r15, rax
rdtsc
mov r14, rax
mov eax, 1
cpuid
rdtsc
mov r12, rax
rdtsc
mov r8, rax
add r11, qword [rsp + 0x68]
add rdi, qword [rsp + 0x60]
mov eax, 1
cpuid
add r10, qword [rsp + 0x58]
add r10, r11
rdtsc
mov r11, rax
add rbx, r13
add rbx, rdi
rdtsc
mov rdi, rax
add r9, rbp
add r15, rsi
add r9, r14
mov eax, 1
cpuid
add r9, r10
add r15, r12
rdtsc
mov r10, rax
add r15, rbx
add rdi, r8
rdtsc
add r10, r11
add r10, r15
add rdi, rax
mov eax, 1
cpuid
add rdi, r9
sub r10, rdi
rdtsc
add r10, rax
cmp r10, 0xa
jae 0x14001aeb2
lea rax, [0x14009d6fd]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x28]
mov rcx, qword [rsp + 0x28]
movabs rax, 0x5e592234b239f67c
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14000e8d0
mov rbx, qword [rax]
movzx edi, word [rax + 8]
movzx eax, byte [0x1400bdb30]
mov ecx, 0xa
mov edx, 1
call fcn.14000bce0
test rax, rax
je 0x14001c6ad
mov rsi, rax
mov eax, edi
shr eax, 8
xor al, 0xe8
xor dil, 0x7f
movabs rcx, 0xd9b32517a92d3cab
xor rbx, rcx
mov qword [rsi], rbx
mov byte [rsi + 8], dil
mov byte [rsi + 9], al
mov rdi, qword [rsp + 0xa8]
cmp rdi, qword [rsp + 0x98]
jne 0x14001ae85
lea rcx, [rsp + 0x98]
call fcn.14000c850
mov rax, qword [rsp + 0xa0]
lea rcx, [rdi + rdi*2]
mov qword [rax + rcx*8], 0xa
mov qword [rax + rcx*8 + 8], rsi
mov qword [rax + rcx*8 + 0x10], 0xa
inc rdi
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], 8
mov qword [rsp + 0xe0], 0
lea rbp, [rsp + 0x28]
mov rcx, rbp
call fcn.140042420
cmp byte [rsp + 0x28], 0x12
jne 0x14001c5d9
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xf0], rax
movzx eax, byte [0x1400bdb30]
mov ecx, 0x150
mov edx, 8
call fcn.14000bce0
mov qword [rsp + 0x100], rax
test rax, rax
je 0x14001c5f9
lea rax, [0x14009af62]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0xc71d8c5c3b8fe973
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14000cb30
mov rsi, qword [rax]
mov rdi, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov r15, qword [rax + 0x18]
movzx ebx, byte [rax + 0x20]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x21
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c608
mov r13, rax
xor bl, 0x63
movabs rax, 0xd1208de75e3dfdc5
xor rsi, rax
movabs rax, 0xe599fb6fd31db889
xor rdi, rax
movabs rax, 0x8f63c5a3847ab4b5
xor r14, rax
movabs rax, 0x776f45ea0d2c1748
xor r15, rax
mov qword [r13], rsi
mov qword [r13 + 8], rdi
mov qword [r13 + 0x10], r14
mov qword [r13 + 0x18], r15
mov byte [r13 + 0x20], bl
lea rax, [0x1400945fd]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x3988a1d63e91bca5
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14000e2f0
mov rdi, qword [rax]
mov rbx, qword [rax + 8]
mov rsi, qword [rax + 0x10]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x18
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c617
movabs rcx, 0xe94ba2da8e2d42a6
xor rsi, rcx
movabs rcx, 0x34eb9ce00ffe432d
xor rdi, rcx
movabs rcx, 0xc3ebd2b8a980543b
xor rbx, rcx
mov qword [rax], rdi
mov qword [rax + 8], rbx
mov qword [rsp + 0x68], rax
mov qword [rax + 0x10], rsi
lea rax, [0x14008eb52]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x706b67602664a5fa
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c6e0
mov r12, qword [rax]
mov r15, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov ebx, dword [rax + 0x18]
movzx edi, word [rax + 0x1c]
movzx esi, byte [rax + 0x1e]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x1f
mov edx, 1
call fcn.14000bce0
test rax, rax
je 0x14001c626
shl esi, 0x10
or edi, esi
mov r8d, edi
shr r8d, 0x10
xor r8b, 0xf7
mov ecx, edi
shr ecx, 8
xor cl, 0x7f
xor dil, 0x68
xor ebx, 0xa6117600
movabs rdx, 0xcf89ab733473475f
xor r14, rdx
movabs rdx, 0xb4bb5f133b5a6a79
xor r15, rdx
movabs rdx, 0x10a84dd09a73286f
xor r12, rdx
mov qword [rax], r12
mov qword [rax + 8], r15
mov qword [rax + 0x10], r14
mov dword [rax + 0x18], ebx
mov byte [rax + 0x1c], dil
mov byte [rax + 0x1d], cl
mov qword [rsp + 0x60], rax
mov byte [rax + 0x1e], r8b
lea rax, [0x14009a62c]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0xc2b0e94a810c64cd
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c700
mov r12, qword [rax]
mov r15, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov rbx, qword [rax + 0x18]
movzx edi, word [rax + 0x20]
movzx esi, byte [rax + 0x22]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x23
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c635
shl esi, 0x10
or edi, esi
mov r8d, edi
shr r8d, 0x10
xor r8b, 0xa5
mov ecx, edi
shr ecx, 8
xor cl, 0x2c
xor dil, 0x21
movabs rdx, 0x234ba7d9f04e4497
xor rbx, rdx
movabs rdx, 0x20bb28a0c2ea3e36
xor r14, rdx
movabs rdx, 0x654213610c0ba737
xor r15, rdx
movabs rdx, 0xe8622b533914983a
xor r12, rdx
mov qword [rax], r12
mov qword [rax + 8], r15
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], rbx
mov byte [rax + 0x20], dil
mov byte [rax + 0x21], cl
mov qword [rsp + 0x58], rax
mov byte [rax + 0x22], r8b
lea rax, [0x14009a0a8]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x7c9c8c796c7d9a00
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14000e4e0
mov rdi, qword [rax]
mov rbx, qword [rax + 8]
mov rsi, qword [rax + 0x10]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x18
mov edx, 1
call fcn.14000bce0
test rax, rax
je 0x14001c644
mov r15, rax
mov qword [rsp + 0xc8], r13
movabs rax, 0xd121961c332e955e
xor rsi, rax
movabs rax, 0xd45cdd784d9940bf
xor rdi, rax
movabs rax, 0xbfcb816db18caaa1
xor rbx, rax
mov qword [r15], rdi
mov qword [r15 + 8], rbx
mov qword [r15 + 0x10], rsi
lea rax, [0x140097c11]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0xbb5a27e9205a15cc
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c720
mov r14, qword [rax]
mov rbx, qword [rax + 8]
mov edi, dword [rax + 0x10]
movzx esi, word [rax + 0x14]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x16
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c653
mov edx, esi
shr edx, 8
xor dl, 0x87
xor sil, 7
xor edi, 0x240e2b55
movabs rcx, 0xa45b9e3be4e9f8a5
xor rbx, rcx
movabs rcx, 0xf15691ed93fc267
xor r14, rcx
mov qword [rax], r14
mov qword [rax + 8], rbx
mov dword [rax + 0x10], edi
mov byte [rax + 0x14], sil
mov qword [rsp + 0xe8], rax
mov byte [rax + 0x15], dl
lea rax, [0x14009224a]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x2e124fbe06a6c2b2
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c740
mov r13, qword [rax]
mov r12, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov ebx, dword [rax + 0x18]
movzx edi, word [rax + 0x1c]
movzx esi, byte [rax + 0x1e]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x1f
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c5ea
shl esi, 0x10
or edi, esi
mov r8d, edi
shr r8d, 0x10
xor r8b, 0xf0
mov ecx, edi
shr ecx, 8
xor cl, 0x48
xor dil, 0xcf
xor ebx, 0x709cbe89
movabs rdx, 0xae12d1bb351ebbea
xor r14, rdx
movabs rdx, 0x7f1123134b5ea2f3
xor r12, rdx
movabs rdx, 0xc87e51b762060afb
xor r13, rdx
mov qword [rax], r13
mov qword [rax + 8], r12
mov qword [rax + 0x10], r14
mov dword [rax + 0x18], ebx
mov byte [rax + 0x1c], dil
mov byte [rax + 0x1d], cl
mov qword [rsp + 0xc0], rax
mov byte [rax + 0x1e], r8b
lea rax, [0x14008f9e0]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x9c542d97f245e1ef
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c760
mov r14, qword [rax]
mov rbx, qword [rax + 8]
mov rdi, qword [rax + 0x10]
mov rsi, qword [rax + 0x18]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x20
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c5db
mov qword [rsp + 0xb8], r15
movabs rcx, 0x592fe5f764212770
xor rsi, rcx
movabs rcx, 0xe70c396095bf4b0f
xor rdi, rcx
movabs rcx, 0x390bce936303d01
xor rbx, rcx
movabs rcx, 0xf4b2470852add279
xor r14, rcx
mov qword [rax], r14
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
mov qword [rsp + 0xb0], rax
mov qword [rax + 0x18], rsi
lea rax, [0x1400999e8]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x667ca69b54795ade
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c780
mov r14, qword [rax]
mov rbx, qword [rax + 8]
mov rdi, qword [rax + 0x10]
mov rsi, qword [rax + 0x18]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x20
mov edx, 1
call fcn.14000bce0
test rax, rax
je 0x14001c5db
movabs rcx, 0xcf8ebef071892a9d
xor rsi, rcx
movabs rcx, 0xf516bc714fb3cd5d
xor rdi, rcx
movabs rcx, 0x72266d3d14c32695
xor rbx, rcx
movabs rcx, 0x6d23e826ddd90aa0
xor r14, rcx
mov qword [rax], r14
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
mov qword [rsp + 0x108], rax
mov qword [rax + 0x18], rsi
lea rax, [0x14008ef27]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0xf00e518542c4013c
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14000d200
mov rsi, qword [rax]
mov r13, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov ebx, dword [rax + 0x18]
movzx edi, word [rax + 0x1c]
mov r15, rbp
movzx ebp, byte [rax + 0x1e]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x1f
mov edx, 1
call fcn.14000bce0
test rax, rax
je 0x14001c5ea
mov r12, rax
shl ebp, 0x10
or edi, ebp
mov eax, edi
shr eax, 0x10
xor al, 0x23
mov ecx, edi
shr ecx, 8
xor cl, 0x56
xor dil, 0xe0
xor ebx, 0xb7a87651
movabs rdx, 0xfdbd17d206f353d6
xor r14, rdx
movabs rdx, 0xe9aa27b854f9c6ae
xor r13, rdx
movabs rdx, 0x8b9797d8a6d83c73
xor rsi, rdx
mov qword [r12], rsi
mov qword [r12 + 8], r13
mov qword [r12 + 0x10], r14
mov dword [r12 + 0x18], ebx
mov byte [r12 + 0x1c], dil
mov byte [r12 + 0x1d], cl
mov byte [r12 + 0x1e], al
lea rax, [0x140093246]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0xffd57e57356da06e
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c7a0
mov r14, qword [rax]
mov rbx, qword [rax + 8]
mov rdi, qword [rax + 0x10]
mov rsi, qword [rax + 0x18]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x20
mov edx, 1
call fcn.14000bce0
test rax, rax
je 0x14001c5db
mov r13, r15
movabs rcx, 0x47494d7fd388bc92
xor rsi, rcx
movabs rcx, 0x74ee3f50306158ee
xor rdi, rcx
movabs rcx, 0xd060bef140b062a3
xor rbx, rcx
movabs rcx, 0x4daa3fe8c72d325b
xor r14, rcx
mov qword [rax], r14
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
mov qword [rsp + 0xf8], rax
mov qword [rax + 0x18], rsi
lea rax, [0x140094937]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x5503214d358405b8
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c7c0
mov rdi, qword [rax]
mov r14, qword [rax + 8]
mov r15, qword [rax + 0x10]
mov rbx, r13
mov rbp, qword [rax + 0x18]
movzx esi, word [rax + 0x20]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x22
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c662
mov r13, rax
mov eax, esi
shr eax, 8
xor al, 0x44
xor sil, 0xdf
movabs rcx, 0xafe8a013aaff6dd1
xor rdi, rcx
movabs rcx, 0xb12f9d68c6b92126
xor r14, rcx
movabs rcx, 0xb7c3d9312d53909
xor r15, rcx
movabs rcx, 0x8dd48d05150d6574
xor rbp, rcx
mov qword [r13], rdi
mov qword [r13 + 8], r14
mov qword [r13 + 0x10], r15
mov qword [r13 + 0x18], rbp
mov byte [r13 + 0x20], sil
mov byte [r13 + 0x21], al
lea rax, [0x14009b8d1]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0xa6bb72f4c99b6f45
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14000d5f0
mov r15, qword [rax]
mov rbp, qword [rax + 8]
mov edi, dword [rax + 0x10]
movzx esi, word [rax + 0x14]
movzx ebx, byte [rax + 0x16]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x17
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c671
mov r14, rax
shl ebx, 0x10
or esi, ebx
mov eax, esi
shr eax, 0x10
xor al, 0x56
mov ecx, esi
shr ecx, 8
xor cl, 0xfd
xor sil, 0xe8
xor edi, 0x7aa70d6d
movabs rdx, 0xd10d48c784293ded
xor rbp, rdx
movabs rdx, 0x6abcba2df81c464
xor r15, rdx
mov qword [r14], r15
mov qword [r14 + 8], rbp
mov dword [r14 + 0x10], edi
mov byte [r14 + 0x14], sil
mov byte [r14 + 0x15], cl
mov byte [r14 + 0x16], al
lea rax, [0x1400926a0]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x28]
mov rcx, qword [rsp + 0x28]
movabs rax, 0x7024526cc45871da
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c7e0
mov rbx, qword [rax]
mov rbp, qword [rax + 8]
mov r15, qword [rax + 0x10]
mov edi, dword [rax + 0x18]
movzx esi, byte [rax + 0x1c]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x1d
mov edx, 1
call fcn.14003cde0
test rax, rax
je 0x14001c680
movabs rcx, 0xbab268cde2f7fe5
xor r15, rcx
movabs rcx, 0xf5acc18b930e7248
xor rbp, rcx
movabs rcx, 0x99aef81e076288e1
xor rbx, rcx
mov qword [rax], rbx
mov qword [rax + 8], rbp
mov qword [rax + 0x10], r15
xor edi, 0x8028b711
mov dword [rax + 0x18], edi
xor sil, 0xf4
mov byte [rax + 0x1c], sil
movabs r8, 0x7ffffffffffffff1
mov rcx, qword [rsp + 0x100]
mov qword [rcx], 0x21
mov rdx, qword [rsp + 0xc8]
mov qword [rcx + 8], rdx
mov qword [rcx + 0x10], 0x21
mov qword [rcx + 0x18], 0x18
mov rdx, qword [rsp + 0x68]
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], 0x18
mov qword [rcx + 0x30], 0x1f
mov rdx, qword [rsp + 0x60]
mov qword [rcx + 0x38], rdx
mov qword [rcx + 0x40], 0x1f
mov qword [rcx + 0x48], 0x23
mov rdx, qword [rsp + 0x58]
mov qword [rcx + 0x50], rdx
mov qword [rcx + 0x58], 0x23
mov qword [rcx + 0x60], 0x18
mov rdx, qword [rsp + 0xb8]
mov qword [rcx + 0x68], rdx
mov qword [rcx + 0x70], 0x18
mov qword [rcx + 0x78], 0x16
mov rdx, qword [rsp + 0xe8]
mov qword [rcx + 0x80], rdx
mov qword [rcx + 0x88], 0x16
mov qword [rcx + 0x90], 0x1f
mov rdx, qword [rsp + 0xc0]
mov qword [rcx + 0x98], rdx
mov qword [rcx + 0xa0], 0x1f
mov qword [rcx + 0xa8], 0x20
mov rdx, qword [rsp + 0xb0]
mov qword [rcx + 0xb0], rdx
mov qword [rcx + 0xb8], 0x20
mov qword [rcx + 0xc0], 0x20
mov rdx, qword [rsp + 0x108]
mov qword [rcx + 0xc8], rdx
mov qword [rcx + 0xd0], 0x20
mov qword [rcx + 0xd8], 0x1f
mov qword [rcx + 0xe0], r12
mov qword [rcx + 0xe8], 0x1f
mov qword [rcx + 0xf0], 0x20
mov rdx, qword [rsp + 0xf8]
mov qword [rcx + 0xf8], rdx
mov qword [rcx + 0x100], 0x20
mov qword [rcx + 0x108], 0x22
mov qword [rcx + 0x110], r13
mov qword [rcx + 0x118], 0x22
mov qword [rcx + 0x120], 0x17
mov qword [rcx + 0x128], r14
mov qword [rcx + 0x130], 0x17
mov qword [rcx + 0x138], 0x1d
mov qword [rcx + 0x140], rax
mov qword [rcx + 0x148], 0x1d
mov dword [rsp + 0x94], 0
lea rax, [rcx + 0x20]
mov ecx, 0x138
xor edx, edx
add r8, 0xf
mov qword [rsp + 0xf8], r8
lea rbx, [0x14009e810]
lea rdi, [0x14009e850]
jmp 0x14001baca
mov rcx, qword [rsp + 0xc0]
add rcx, 0xffffffffffffffe8
mov rax, qword [rsp + 0xb0]
add rax, 0x18
mov rdx, qword [rsp + 0xb8]
cmp rdx, 0xe
je 0x14001beb7
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xb0], rax
lea rax, [rdx + rdx*2]
inc rdx
mov qword [rsp + 0xb8], rdx
mov rdx, qword [rsp + 0x100]
mov rcx, qword [rdx + rax*8]
cmp rcx, qword [rsp + 0xf8]
je 0x14001bea0
lea rax, [rdx + rax*8]
mov qword [rsp + 0x118], rcx
movdqu xmm0, xmmword [rax + 8]
lea rax, [rsp + 0x120]
movdqu xmmword [rax], xmm0
lea rsi, [rsp + 0x70]
mov rcx, rsi
lea rdx, [rsp + 0x118]
call fcn.14007a040
lea rcx, [rsp + 0x28]
lea rdx, [rsp + 0xf0]
mov r8, rsi
call fcn.140031190
cmp byte [rsp + 0x28], 0x12
jne 0x14001c5d9
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x108], rax
mov r14, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xc8], rax
test rax, rax
je 0x14001bda0
inc dword [rsp + 0x94]
xor esi, esi
mov qword [rsp + 0xe8], r14
jmp 0x14001bba1
inc rsi
cmp rsi, qword [rsp + 0xc8]
je 0x14001be54
lea r12, [rsi + rsi*2]
shl r12, 4
mov rax, qword [r14 + r12 + 8]
test rax, rax
je 0x14001bb90
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
add r12, r14
mov rbp, qword [r12 + 0x18]
test rbp, rbp
je 0x14001bd50
mov r13, qword [r12]
movdqa xmm0, xmmword [r13]
pmovmskb eax, xmm0
not eax
lea r14, [r13 + 0x10]
mov qword [rsp + 0x58], r12
jmp 0x14001bc11
add r15, 0xffffffffffffffe8
mov rcx, r15
call fcn.14001c8a0
nop word cs:[rax + rax]
dec rbp
lea eax, [rsi - 1]
and eax, esi
test rbp, rbp
je 0x14001bd50
test ax, ax
jne 0x14001bc3d
nop word cs:[rax + rax]
movdqa xmm0, xmmword [r14]
pmovmskb eax, xmm0
add r13, 0xfffffffffffffc80
add r14, 0x10
cmp eax, 0xffff
je 0x14001bc20
not eax
mov esi, eax
tzcnt eax, esi
neg rax
imul rax, rax, 0x38
lea r15, [rax + r13]
mov rdx, qword [r13 + rax - 0x38]
test rdx, rdx
je 0x14001bc67
mov rcx, qword [r15 - 0x30]
mov r8d, 1
call fcn.14003cdf0
movzx eax, byte [r15 - 0x20]
cmp rax, 0xf
ja case.default.0x14001bc7d
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov rdx, qword [r15 - 0x18]
test rdx, rdx
je case.0x14001bc7d.0
mov rcx, qword [r15 - 0x10]
mov r8d, 1
call fcn.14003cdf0
jmp case.0x14001bc7d.0
mov rbx, qword [r15 - 8]
test rbx, rbx
je 0x14001bd0d
mov r12, qword [r15 - 0x10]
add r12, 8
jmp 0x14001bcc9
mov rcx, r12
call fcn.14002bfa0
nop dword [rax + rax]
add r12, 0x20
dec rbx
je 0x14001bd0d
movzx eax, byte [r12 - 8]
cmp rax, 0xf
ja case.default.0x14001bcdc
movsxd rax, dword [rdi + rax*4]
add rax, rdi
jmp rax
mov rdx, qword [r12]
test rdx, rdx
je case.0x14001bcdc.0
mov rcx, qword [r12 + 8]
mov r8d, 1
call fcn.14000bc80
jmp case.0x14001bcdc.0
mov rcx, r12
call fcn.14001c8a0
jmp case.0x14001bcdc.0
mov rcx, r12
call fcn.140041d70
jmp case.0x14001bcdc.0
mov rdx, qword [r15 - 0x18]
test rdx, rdx
lea rbx, [0x14009e810]
mov r12, qword [rsp + 0x58]
je case.0x14001bc7d.0
mov rcx, qword [r15 - 0x10]
shl rdx, 5
mov r8d, 8
call fcn.14003cdf0
jmp case.0x14001bc7d.0
add r15, 0xffffffffffffffe8
mov rcx, r15
call fcn.140041d70
jmp case.0x14001bc7d.0
mov r9, qword [rsp + 0x60]
lea rax, [r9 + 1]
mov ecx, 0x38
mul rcx
add rax, 0xf
and rax, 0xfffffffffffffff0
add r9, rax
add r9, 0x11
mov r14, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0x68]
je 0x14001bb90
mov rcx, qword [r12]
sub rcx, rax
mov r8d, 0x10
mov rdx, r9
call fcn.14003cdf0
jmp 0x14001bb90
lea rax, [rsp + 0x94]
mov qword [rsp + 0x70], rax
lea rax, [0x14007b6f0]
mov qword [rsp + 0x78], rax
lea rax, str._WMI___fail
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 2
mov qword [rsp + 0x48], 0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 1
lea rcx, [rsp + 0x130]
lea rdx, [rsp + 0x28]
call fcn.14007a4b0
mov rsi, qword [rsp + 0xe0]
cmp rsi, qword [rsp + 0xd0]
jne 0x14001be1b
lea rcx, [rsp + 0xd0]
call fcn.14000c850
mov rax, qword [rsp + 0xd8]
lea rcx, [rsi + rsi*2]
mov rdx, qword [rsp + 0x140]
mov qword [rax + rcx*8 + 0x10], rdx
movdqu xmm0, xmmword [rsp + 0x130]
movdqu xmmword [rax + rcx*8], xmm0
inc rsi
mov qword [rsp + 0xe0], rsi
inc dword [rsp + 0x94]
mov rax, qword [rsp + 0x108]
test rax, rax
je 0x14001be77
shl rax, 4
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, r14
call fcn.14000bc80
mov rdx, qword [rsp + 0x118]
test rdx, rdx
je 0x14001baa0
mov rcx, qword [rsp + 0x120]
mov r8d, 1
call fcn.14003cdf0
jmp 0x14001baa0
cmp qword [rsp + 0xb8], 0xe
mov rax, qword [rsp + 0xc0]
jne 0x14001c515
mov edx, 0x150
mov r8d, 8
mov rcx, qword [rsp + 0x100]
call fcn.14000bc80
lea rax, [0x14009427d]
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x28]
mov rcx, qword [rsp + 0x28]
movabs rax, 0x682b6e9edb16f36f
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c800
movabs rcx, 0xb453ebda62037e7c
xor rcx, qword [rax]
movabs rdx, 0xd4f0dd3eec31268e
xor rdx, qword [rax + 8]
movabs r8, 0x376d952a25b82835
xor r8, qword [rax + 0x10]
mov r9d, 0x3cda6e0e
xor r9d, dword [rax + 0x18]
movzx r10d, byte [rax + 0x1e]
movzx eax, word [rax + 0x1c]
mov r11d, eax
shr r11d, 8
xor al, 0xe3
xor r11b, 0x46
xor r10b, 0x69
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x80], r8
mov dword [rsp + 0x88], r9d
mov byte [rsp + 0x8c], al
mov byte [rsp + 0x8d], r11b
mov byte [rsp + 0x8e], r10b
lea rdi, [rsp + 0x28]
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0x70]
mov r9d, 0x1f
mov rcx, rdi
call fcn.140030ed0
cmp byte [rsp + 0x28], 0x12
jne 0x14001c5d9
mov r12, qword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
mov r13, qword [rsp + 0x40]
cmp r13, 2
jae 0x14001c080
lea rax, [0x14009caf7]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x136cd2ed93807c37
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14001c820
mov r14, qword [rax]
mov rbx, qword [rax + 8]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x10
mov edx, 1
call fcn.14000bce0
test rax, rax
je 0x14001c6bc
mov rsi, rax
movabs rax, 0x73a9f12df4152807
xor rbx, rax
movabs rax, 0xd97908d6854591ae
xor r14, rax
mov qword [rsi], r14
mov qword [rsi + 8], rbx
mov rbx, qword [rsp + 0xe0]
cmp rbx, qword [rsp + 0xd0]
jne 0x14001c053
lea rcx, [rsp + 0xd0]
call fcn.14000c850
mov rax, qword [rsp + 0xd8]
lea rcx, [rbx + rbx*2]
mov qword [rax + rcx*8], 0x10
mov qword [rax + rcx*8 + 8], rsi
mov qword [rax + rcx*8 + 0x10], 0x10
inc rbx
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xc0], r12
mov qword [rsp + 0xe8], r15
lea rax, [0x14009a36c]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x28]
movabs rax, 0x679bf259f3594c11
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
call fcn.14000d5d0
movabs rcx, 0xfe35cdf8baf4e19b
xor rcx, qword [rax]
movabs rdx, 0x2f70ad8fb6d7299d
xor rdx, qword [rax + 8]
movabs r8, 0x621fbdea62eb4d0f
xor r8, qword [rax + 0x10]
movabs r9, 0xd413d12421f4505b
xor r9, qword [rax + 0x18]
movabs r10, 0x8d615c8968d7c1df
xor r10, qword [rax + 0x20]
mov r11d, 0x78f5d1d1
xor r11d, dword [rax + 0x28]
movzx eax, byte [rax + 0x2c]
xor al, 0x76
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x48], r10
mov dword [rsp + 0x50], r11d
mov byte [rsp + 0x54], al
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0x28]
mov r9d, 0x2d
call fcn.140030ed0
cmp byte [rsp + 0x70], 0x12
jne 0x14001c5d9
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xb0], rax
mov rdi, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
lea rdx, [rax + rax*2]
shl rdx, 4
add rdx, rdi
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0xc8], rdi
test rax, rax
je 0x14001c398
mov rax, qword [rsp + 0xc8]
jmp 0x14001c1ca
lea rcx, [rsp + 0x28]
call fcn.14001c840
mov rax, qword [rsp + 0x60]
cmp rax, qword [rsp + 0x58]
je 0x14001c3d1
lea rdi, [rax + 0x30]
mov r13, qword [rax]
test r13, r13
je 0x14001c398
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x28], r13
mov rcx, qword [rax + 0x28]
lea rdx, [rsp + 0x30]
mov qword [rdx + 0x20], rcx
movdqu xmm0, xmmword [rax + 8]
movups xmm1, xmmword [rax + 0x18]
movups xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx], xmm0
mov r14, qword [rsp + 0x40]
test r14, r14
je 0x14001c1b0
lea rdi, [r13 + 0x10]
movdqa xmm0, xmmword [r13]
pmovmskb eax, xmm0
not eax
jmp 0x14001c25d
mov rax, qword [rsp + 0xd8]
lea rcx, [rbx + rbx*2]
mov qword [rax + rcx*8], 0x15
mov qword [rax + rcx*8 + 8], rsi
mov qword [rax + rcx*8 + 0x10], 0x15
inc rbx
mov qword [rsp + 0xe0], rbx
mov r14, qword [rsp + 0x68]
mov eax, ebp
dec r14
je 0x14001c1b0
test ax, ax
je 0x14001c270
lea ebp, [rax - 1]
and ebp, eax
jmp 0x14001c297
movdqa xmm0, xmmword [rdi]
pmovmskb eax, xmm0
add r13, 0xfffffffffffffc80
add rdi, 0x10
cmp eax, 0xffff
je 0x14001c270
mov ecx, 0xfffffffe
sub ecx, eax
not eax
mov ebp, eax
and ebp, ecx
tzcnt eax, eax
neg rax
imul rsi, rax, 0x38
add rsi, r13
add rsi, 0xffffffffffffffe0
je 0x14001c1b0
mov rcx, rsi
lea rdx, [0x14009e528]
call fcn.14001a880
test al, al
jne 0x14001c2d9
mov rcx, rsi
lea rdx, [0x14009e548]
call fcn.14001c860
test al, al
je 0x14001c252
mov qword [rsp + 0x68], r14
lea rax, [0x14009ba74]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
movabs rdx, 0x1dd57785e33b9d57
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x70]
call fcn.14001c880
mov r12, qword [rax]
mov r14, qword [rax + 8]
mov ebx, dword [rax + 0x10]
movzx r15d, byte [rax + 0x14]
movzx eax, byte [0x1400bdb30]
mov ecx, 0x15
mov edx, 1
call fcn.14000bce0
test rax, rax
je 0x14001c5ca
mov rsi, rax
xor r15b, 0x79
xor ebx, 0x6d99ef63
movabs rax, 0x8891b04fa7efcaf7
xor r14, rax
movabs rax, 0x6027088c5385ff3d
xor r12, rax
mov qword [rsi], r12
mov qword [rsi + 8], r14
mov dword [rsi + 0x10], ebx
mov byte [rsi + 0x14], r15b
mov rbx, qword [rsp + 0xe0]
cmp rbx, qword [rsp + 0xd0]
jne 0x14001c220
lea rcx, [rsp + 0xd0]
call fcn.14000c850
jmp 0x14001c220
mov r8, qword [rsp + 0x58]
mov rax, r8
sub rax, rdi
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
cmp r8, rdi
je 0x14001c3d1
mov rsi, rdx
shr rsi, 5
nop dword [rax]
mov rcx, rdi
call fcn.140029150
add rdi, 0x30
dec rsi
jne 0x14001c3c0
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x14001c3f9
shl rax, 4
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, qword [rsp + 0xc8]
call fcn.14003cdf0
mov r12, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0xe0]
mov r13, qword [rsp + 0xb8]
test r13, r13
mov r14, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xc0]
je 0x14001c451
mov rsi, r14
nop word cs:[rax + rax]
mov rcx, rsi
call fcn.14001c840
add rsi, 0x30
dec r13
jne 0x14001c440
test r15, r15
je 0x14001c46c
shl r15, 4
lea rdx, [r15 + r15*2]
mov r8d, 8
mov rcx, r14
call fcn.14000bc80
lea rcx, [rsp + 0xf0]
call fcn.14001c8a0
lea rax, [rbx*8]
lea rsi, [rax + rax*2]
mov rax, qword [rsp + 0x98]
mov r14, qword [rsp + 0xa8]
sub rax, r14
cmp rax, rbx
jb 0x14001c59b
lea rcx, [r14 + r14*2]
shl rcx, 3
add rcx, qword [rsp + 0xa0]
mov rdx, rdi
mov r8, rsi
call fcn.140096e90
add rbx, r14
mov qword [rsp + 0xa8], rbx
test r12, r12
je 0x14001c4e2
shl r12, 3
lea rdx, [r12 + r12*2]
mov r8d, 8
mov rcx, rdi
call fcn.14000bc80
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x110]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rsp + 0x98]
movups xmmword [rax], xmm0
add rsp, 0x148
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
mov rax, qword [rsp + 0xb0]
mov rbx, rdx
shr rbx, 4
jmp 0x14001c54d
add rax, 0x18
dec rbx
je 0x14001beb7
mov rdx, qword [rax - 8]
test rdx, rdx
je 0x14001c540
mov rcx, qword [rax]
mov r8d, 1
mov rsi, rax
call fcn.14000bc80
mov rax, rsi
jmp 0x14001c540
mov qword [rsp + 0x20], 0x18
lea rcx, [rsp + 0x98]
mov r9d, 8
mov rdx, r14
mov r8, rsi
call fcn.140098860
mov r14, qword [rsp + 0xa8]
jmp 0x14001acb0
mov qword [rsp + 0x20], 0x18
lea rcx, [rsp + 0x98]
mov r9d, 8
mov rdx, r14
mov r8, rbx
call fcn.140098860
mov r14, qword [rsp + 0xa8]
jmp 0x14001c4a1
mov ecx, 1
mov edx, 0x15
call fcn.14000bcc0
ud2
mov ecx, 1
mov edx, 0x20
call fcn.140047520
mov ecx, 1
mov edx, 0x1f
call fcn.140047520
mov ecx, 8
mov edx, 0x150
call fcn.140047520
mov ecx, 1
mov edx, 0x21
call fcn.140047520
mov ecx, 1
mov edx, 0x18
call fcn.140047520
mov ecx, 1
mov edx, 0x1f
call fcn.14000bcc0
mov ecx, 1
mov edx, 0x23
call fcn.14000bcc0
mov ecx, 1
mov edx, 0x18
call fcn.14000bcc0
mov ecx, 1
mov edx, 0x16
call fcn.14000bcc0
mov ecx, 1
mov edx, 0x22
call fcn.140047520
mov ecx, 1
mov edx, 0x17
call fcn.14000bcc0
mov ecx, 1
mov edx, 0x1d
call fcn.14000bcc0
mov ecx, 1
mov edx, 0x11
call fcn.14000bcc0
mov ecx, 1
mov edx, 0x10
call fcn.14000bcc0
mov ecx, 1
mov edx, 0xa
call fcn.14000bcc0
mov ecx, 1
mov edx, 0x10
call fcn.140047520
int3