Function at 0x14001c100
Capabilities:
Execute anti-debugging instructions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x168
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x90], 8
mov qword [rsp + 0x98], 0
lea rcx, [rsp + 0x30]
call fcn.1401a39e0
cmp byte [rsp + 0x30], 0x12
jne 0x14001db53
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 8
mov qword [rsp + 0x40], 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 0x14001c1bf
cmp r9d, ebx
jne 0x14001c1bf
cmp r8d, eax
jne 0x14001c1bf
cmp r11d, esi
jne 0x14001c1bf
cmp ebx, 0x4d566572
je 0x14001c28d
jmp 0x14001c34f
lea rax, [0x1401f55a3]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
movabs rdx, 0x549dc1c729e67e83
mov qword [rsp + 0x60], rdx
mov rdx, qword [rsp + 0x60]
call fcn.14000c330
mov r14, qword [rax]
mov r15, qword [rax + 8]
movzx ebp, byte [rax + 0x10]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x11
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dbfa
mov rsi, rax
xor bpl, 0x36
movabs rax, 0xddbfd37a56634bb0
xor r14, rax
movabs rax, 0x3ccc16ffddc092d2
xor r15, rax
mov qword [rsi], r14
mov qword [rsi + 8], r15
mov byte [rsi + 0x10], bpl
mov r14, qword [rsp + 0x40]
cmp r14, qword [rsp + 0x30]
jne 0x14001c25a
lea rcx, [rsp + 0x30]
call fcn.140049050
mov rax, qword [rsp + 0x38]
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 + 0x40], r14
cmp ebx, 0x4d566572
jne 0x14001c34f
cmp edi, 0x65726177
jne 0x14001c34f
lea rax, [0x1401f9f9a]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
movabs rdx, 0xe50a50f41c9f5a6e
mov qword [rsp + 0x60], rdx
mov rdx, qword [rsp + 0x60]
call fcn.14000e030
mov rbx, qword [rax]
mov rdi, qword [rax + 8]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x10
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dbeb
mov rsi, rax
movabs rax, 0xb9895fc2504d528c
xor rdi, rax
movabs rax, 0xf81869998e665c4e
xor rbx, rax
mov qword [rsi], rbx
mov qword [rsi + 8], rdi
mov rdi, qword [rsp + 0x40]
cmp rdi, qword [rsp + 0x30]
jne 0x14001c328
lea rcx, [rsp + 0x30]
call fcn.140049050
mov rax, qword [rsp + 0x38]
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 + 0x40], rdi
mov eax, 1
xor ecx, ecx
mov r8, rbx
cpuid
xchg rbx, r8
mov r15, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
lea rax, [rsi*8]
lea rbx, [rax + rax*2]
mov rax, qword [rsp + 0x88]
mov r14, qword [rsp + 0x98]
sub rax, r14
cmp rax, rsi
jb 0x14001dae6
lea rcx, [r14 + r14*2]
shl rcx, 3
add rcx, qword [rsp + 0x90]
mov rdx, rdi
mov r8, rbx
call fcn.1401ef240
add rsi, r14
mov qword [rsp + 0x98], rsi
test r15, r15
je 0x14001c3d6
shl r15, 3
lea rdx, [r15 + r15*2]
mov r8d, 8
mov rcx, rdi
call fcn.140055580
rdtsc
mov qword [rsp + 0xc8], rax
mov eax, 1
cpuid
rdtsc
mov qword [rsp + 0xc0], rax
rdtsc
mov r11, rax
mov eax, 1
cpuid
rdtsc
mov rdi, rax
rdtsc
mov qword [rsp + 0xb8], 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 + 0xc8]
add rdi, qword [rsp + 0xc0]
mov eax, 1
cpuid
add r10, qword [rsp + 0xb8]
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, 0x2719
jbe 0x14001c5a4
lea rax, [0x1401f66ea]
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
movabs rax, 0xcf83c429fb3e9782
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000d900
mov rbx, qword [rax]
movzx edi, word [rax + 8]
movzx eax, byte [0x14027f2b8]
mov ecx, 0xa
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dc09
mov rsi, rax
mov eax, edi
shr eax, 8
xor al, 0xad
xor dil, 0x33
movabs rcx, 0xd5c685ee70623ba5
xor rbx, rcx
mov qword [rsi], rbx
mov byte [rsi + 8], dil
mov byte [rsi + 9], al
mov rdi, qword [rsp + 0x98]
cmp rdi, qword [rsp + 0x88]
jne 0x14001c577
lea rcx, [rsp + 0x88]
call fcn.140049050
mov rax, qword [rsp + 0x90]
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 + 0x98], rdi
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], 8
mov qword [rsp + 0xb0], 0
lea r13, [rsp + 0x30]
mov rcx, r13
call fcn.1401a3ac0
cmp byte [rsp + 0x30], 0x12
jne 0x14001db53
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xe0], rax
movzx eax, byte [0x14027f2b8]
mov ecx, 0x150
mov edx, 8
call fcn.140055570
test rax, rax
je 0x14001db82
mov rdi, rax
lea rax, [0x1401fcb06]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xa51bb760497e0108
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000c1a0
mov rsi, qword [rax]
mov r14, qword [rax + 8]
mov r15, qword [rax + 0x10]
mov r12, qword [rax + 0x18]
movzx ebx, byte [rax + 0x20]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x21
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db91
xor bl, 0x12
movabs rcx, 0x483a6320efd85595
xor rsi, rcx
movabs rcx, 0x3677a6288f9240ef
xor r14, rcx
movabs rcx, 0xe9cc579194ea2951
xor r15, rcx
movabs rcx, 0x55ea94e904f687ce
xor r12, rcx
mov qword [rax], rsi
mov qword [rax + 8], r14
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r12
mov qword [rsp + 0xc8], rax
mov byte [rax + 0x20], bl
lea rax, [0x1401f1c8f]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xb40a6562ff073d5b
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000e1a0
mov rbx, qword [rax]
mov r14, qword [rax + 8]
mov rsi, qword [rax + 0x10]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x18
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db73
movabs rcx, 0xef6e4ed853dc9560
xor rsi, rcx
movabs rcx, 0xe085119c0ffa14ab
xor rbx, rcx
movabs rcx, 0x2ded5a351460a827
xor r14, rcx
mov qword [rax], rbx
mov qword [rax + 8], r14
mov qword [rsp + 0xc0], rax
mov qword [rax + 0x10], rsi
lea rax, [0x1401f2eba]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x7bbf3b48de915bd0
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000bbd0
mov r12, qword [rax]
mov r15, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov ebx, dword [rax + 0x18]
movzx esi, word [rax + 0x1c]
movzx ebp, byte [rax + 0x1e]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x1f
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db55
shl ebp, 0x10
or esi, ebp
mov r8d, esi
shr r8d, 0x10
xor r8b, 0x74
mov ecx, esi
shr ecx, 8
xor cl, 0xf2
xor sil, 0xcd
xor ebx, 0xa673b726
movabs rdx, 0x5a64ca732ac258fd
xor r14, rdx
movabs rdx, 0x1e0be27f3f813d87
xor r15, rdx
movabs rdx, 0x7df1f0969ffe36c5
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], sil
mov byte [rax + 0x1d], cl
mov qword [rsp + 0xb8], rax
mov byte [rax + 0x1e], r8b
lea rax, [0x1401f9248]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x44e000fbffc0f6d3
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000cc80
mov r12, qword [rax]
mov r15, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov rbx, qword [rax + 0x18]
movzx esi, word [rax + 0x20]
movzx ebp, byte [rax + 0x22]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x23
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dba0
shl ebp, 0x10
or esi, ebp
mov r8d, esi
shr r8d, 0x10
xor r8b, 0x26
mov ecx, esi
shr ecx, 8
xor cl, 0x64
xor sil, 0x4d
movabs rdx, 0xffc8422be822d27d
xor rbx, rdx
movabs rdx, 0xafd9e032d3d7bc5c
xor r14, rdx
movabs rdx, 0xb5870dc38eec5b63
xor r15, rdx
movabs rdx, 0x713c4c68c7c203b
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], sil
mov byte [rax + 0x21], cl
mov qword [rsp + 0xd8], rax
mov byte [rax + 0x22], r8b
lea rax, [0x1401f4394]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xaa1651ea92d58245
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000c4b0
mov rbx, qword [rax]
mov r14, qword [rax + 8]
mov rsi, qword [rax + 0x10]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x18
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db73
movabs rcx, 0xba54ce2e1fdf2eef
xor rsi, rcx
movabs rcx, 0x7729691337b61d7f
xor rbx, rcx
movabs rcx, 0x1917308c1b6fa6d6
xor r14, rcx
mov qword [rax], rbx
mov qword [rax + 8], r14
mov qword [rsp + 0xf8], rax
mov qword [rax + 0x10], rsi
lea rax, [0x1401f7591]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xfca44bd511df66ea
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000d300
mov r15, qword [rax]
mov r14, qword [rax + 8]
mov ebx, dword [rax + 0x10]
movzx esi, word [rax + 0x14]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x16
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dbaf
mov edx, esi
shr edx, 8
xor dl, 0x8c
xor sil, 0xa8
xor ebx, 0xaedb1f36
movabs rcx, 0xc1924569d0ac623c
xor r14, rcx
movabs rcx, 0xd9263a87ed17997b
xor r15, rcx
mov qword [rax], r15
mov qword [rax + 8], r14
mov dword [rax + 0x10], ebx
mov byte [rax + 0x14], sil
mov qword [rsp + 0xf0], rax
mov byte [rax + 0x15], dl
lea rax, [0x1401efdb4]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x8f90bd257b69a2c4
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000d660
mov r15, r13
mov r13, qword [rax]
mov r12, qword [rax + 8]
mov r14, qword [rax + 0x10]
mov ebx, dword [rax + 0x18]
movzx esi, word [rax + 0x1c]
movzx ebp, byte [rax + 0x1e]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x1f
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db55
shl ebp, 0x10
or esi, ebp
mov r8d, esi
shr r8d, 0x10
xor r8b, 0xa
mov ecx, esi
shr ecx, 8
xor cl, 0x84
xor sil, 0xf6
xor ebx, 0x82d1741f
movabs rdx, 0xcc22a7970f184a5e
xor r14, rdx
movabs rdx, 0x49dbc16564682967
xor r12, rdx
movabs rdx, 0xa26b3b02468d6662
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], sil
mov byte [rax + 0x1d], cl
mov qword [rsp + 0xe8], rax
mov byte [rax + 0x1e], r8b
lea rax, [0x1401f48fb]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x608b910164854164
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000c640
mov r12, r15
mov r15, qword [rax]
mov r14, qword [rax + 8]
mov rbx, qword [rax + 0x10]
mov rsi, qword [rax + 0x18]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x20
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db64
movabs rcx, 0x20ba00986e244082
xor rsi, rcx
movabs rcx, 0xe1abb3255a1e0e6c
xor rbx, rcx
movabs rcx, 0xc3ecdfe4e39db939
xor r14, rcx
movabs rcx, 0x2d3db7f88fb53cec
xor r15, rcx
mov qword [rax], r15
mov qword [rax + 8], r14
mov qword [rax + 0x10], rbx
mov qword [rsp + 0x138], rax
mov qword [rax + 0x18], rsi
lea rax, [0x1401fdc0e]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x23839aedb6e1598
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000d6b0
mov r15, qword [rax]
mov r14, qword [rax + 8]
mov rbx, qword [rax + 0x10]
mov rsi, qword [rax + 0x18]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x20
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db64
movabs rcx, 0xa3363e7d836c32e
xor rsi, rcx
movabs rcx, 0xb1e1dba40f90d5b7
xor rbx, rcx
movabs rcx, 0x748aafec75fe5d47
xor r14, rcx
movabs rcx, 0x5adeea6e19df6510
xor r15, rcx
mov qword [rax], r15
mov qword [rax + 8], r14
mov qword [rax + 0x10], rbx
mov qword [rsp + 0x130], rax
mov qword [rax + 0x18], rsi
lea rax, [0x1401fdd8f]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xe38743c57c8ed856
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000cd60
mov rbx, qword [rax]
mov rbp, qword [rax + 8]
mov r13, qword [rax + 0x10]
mov r14d, dword [rax + 0x18]
movzx esi, word [rax + 0x1c]
movzx r15d, byte [rax + 0x1e]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x1f
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db55
shl r15d, 0x10
or esi, r15d
mov r8d, esi
shr r8d, 0x10
xor r8b, 0xd7
mov ecx, esi
shr ecx, 8
xor cl, 0x8d
xor sil, 0x69
xor r14d, 0x810d51d2
movabs rdx, 0x3819e1863aa81546
xor r13, rdx
movabs rdx, 0x605feb185f01f819
xor rbp, rdx
movabs rdx, 0x9fd144982e66aa0b
xor rbx, rdx
mov qword [rax], rbx
mov qword [rax + 8], rbp
mov qword [rax + 0x10], r13
mov dword [rax + 0x18], r14d
mov byte [rax + 0x1c], sil
mov byte [rax + 0x1d], cl
mov qword [rsp + 0x128], rax
mov byte [rax + 0x1e], r8b
lea rax, [0x1401fa032]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xbd4f5e8ebcdd4b3c
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000b8c0
mov r15, qword [rax]
mov r14, qword [rax + 8]
mov rbx, qword [rax + 0x10]
mov rsi, qword [rax + 0x18]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x20
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db64
movabs rcx, 0xe7061ebef95ff2fe
xor rsi, rcx
movabs rcx, 0xbd2dd6c4a5282e33
xor rbx, rcx
movabs rcx, 0x5d1d7d0d2df49725
xor r14, rcx
movabs rcx, 0x9d277ef9620926b6
xor r15, rcx
mov qword [rax], r15
mov qword [rax + 8], r14
mov qword [rax + 0x10], rbx
mov qword [rsp + 0x120], rax
mov qword [rax + 0x18], rsi
lea rax, [0x1401fd46b]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x85082892525a87f9
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000d740
mov rbx, qword [rax]
mov r14, qword [rax + 8]
mov r15, qword [rax + 0x10]
mov rbp, qword [rax + 0x18]
movzx esi, word [rax + 0x20]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x22
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dbbe
mov r13, rax
mov eax, esi
shr eax, 8
xor al, 0xec
xor sil, 0xb9
movabs rcx, 0x95ed5a56abe09424
xor rbx, rcx
movabs rcx, 0xd293d854ea5725a5
xor r14, rcx
movabs rcx, 0xa030bc9d9ab89f98
xor r15, rcx
movabs rcx, 0xf4548d6543cbaecc
xor rbp, rcx
mov qword [r13], rbx
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, [0x1401f48f8]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x299bd4d6d3cb44fc
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000b840
mov rsi, qword [rax]
mov r15, qword [rax + 8]
mov ebp, dword [rax + 0x10]
movzx ebx, word [rax + 0x14]
movzx r12d, byte [rax + 0x16]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x17
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dbcd
mov r14, rax
shl r12d, 0x10
or ebx, r12d
mov eax, ebx
shr eax, 0x10
xor al, 0x97
mov ecx, ebx
shr ecx, 8
xor cl, 0xae
xor bl, 0x4d
xor ebp, 0x5472b2fb
movabs rdx, 0x2d13e98af53e6c9c
xor r15, rdx
movabs rdx, 0x77e0d97bf289b8d2
xor rsi, rdx
mov qword [r14], rsi
mov qword [r14 + 8], r15
mov dword [r14 + 0x10], ebp
mov byte [r14 + 0x14], bl
mov byte [r14 + 0x15], cl
mov byte [r14 + 0x16], al
lea rax, [0x1401f9893]
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x30]
movabs rax, 0x489fe1b4f35ff874
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000dd20
mov r12, qword [rax]
mov rbp, qword [rax + 8]
mov r15, qword [rax + 0x10]
mov esi, dword [rax + 0x18]
movzx ebx, byte [rax + 0x1c]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x1d
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dbdc
movabs rcx, 0x40ec48eae00f94e3
xor r15, rcx
movabs rcx, 0x68a1aa74dcdde4d7
xor rbp, rcx
movabs rcx, 0xd7b1b2c34988ecad
xor r12, rcx
mov qword [rax], r12
mov qword [rax + 8], rbp
mov qword [rax + 0x10], r15
xor esi, 0xf7dcee52
mov dword [rax + 0x18], esi
xor bl, 0x79
mov byte [rax + 0x1c], bl
mov qword [rdi], 0x21
mov rcx, qword [rsp + 0xc8]
mov qword [rdi + 8], rcx
movabs rbp, 0x7ffffffffffffff1
mov qword [rdi + 0x10], 0x21
mov qword [rdi + 0x18], 0x18
mov rcx, qword [rsp + 0xc0]
mov qword [rdi + 0x20], rcx
mov qword [rdi + 0x28], 0x18
mov qword [rdi + 0x30], 0x1f
mov rcx, qword [rsp + 0xb8]
mov qword [rdi + 0x38], rcx
mov qword [rdi + 0x40], 0x1f
mov qword [rdi + 0x48], 0x23
mov rcx, qword [rsp + 0xd8]
mov qword [rdi + 0x50], rcx
mov qword [rdi + 0x58], 0x23
mov qword [rdi + 0x60], 0x18
mov rcx, qword [rsp + 0xf8]
mov qword [rdi + 0x68], rcx
mov qword [rdi + 0x70], 0x18
mov qword [rdi + 0x78], 0x16
mov rcx, qword [rsp + 0xf0]
mov qword [rdi + 0x80], rcx
mov qword [rdi + 0x88], 0x16
mov qword [rdi + 0x90], 0x1f
mov rcx, qword [rsp + 0xe8]
mov qword [rdi + 0x98], rcx
mov qword [rdi + 0xa0], 0x1f
mov qword [rdi + 0xa8], 0x20
mov rcx, qword [rsp + 0x138]
mov qword [rdi + 0xb0], rcx
mov qword [rdi + 0xb8], 0x20
mov qword [rdi + 0xc0], 0x20
mov rcx, qword [rsp + 0x130]
mov qword [rdi + 0xc8], rcx
mov qword [rdi + 0xd0], 0x20
mov qword [rdi + 0xd8], 0x1f
mov rcx, qword [rsp + 0x128]
mov qword [rdi + 0xe0], rcx
mov qword [rdi + 0xe8], 0x1f
mov qword [rdi + 0xf0], 0x20
mov rcx, qword [rsp + 0x120]
mov qword [rdi + 0xf8], rcx
mov qword [rdi + 0x100], 0x20
mov qword [rdi + 0x108], 0x22
mov qword [rdi + 0x110], r13
mov qword [rdi + 0x118], 0x22
mov qword [rdi + 0x120], 0x17
mov qword [rdi + 0x128], r14
mov qword [rdi + 0x130], 0x17
mov qword [rdi + 0x138], 0x1d
mov qword [rdi + 0x140], rax
mov qword [rdi + 0x148], 0x1d
mov dword [rsp + 0xd4], 0
lea r14, [rsp + 0x108]
lea r12, [rsp + 0x38]
xor r13d, r13d
add rbp, 0xf
lea rbx, [rsp + 0x60]
lea r15, [rsp + 0x100]
lea rsi, [rsp + 0x30]
jmp 0x14001d1b1
add r13, 0x18
cmp r13, 0x150
je 0x14001d358
mov rax, qword [rdi + r13]
cmp rax, rbp
je 0x14001d349
mov qword [rsp + 0x100], rax
movups xmm0, xmmword [rdi + r13 + 8]
movups xmmword [r14], xmm0
mov rcx, rbx
mov rdx, r15
call fcn.1401cf100
mov rcx, rsi
lea rdx, [rsp + 0xe0]
mov r8, rbx
call fcn.14004b100
cmp byte [rsp + 0x30], 0x12
jne 0x14001db53
mov rax, qword [r12 + 0x10]
mov qword [rsp + 0x70], rax
movdqu xmm0, xmmword [r12]
movdqa xmmword [rsp + 0x60], xmm0
test rax, rax
jne 0x14001d2ef
mov rbx, r12
mov r12, rbp
mov rbp, rdi
mov rdx, rsi
mov rdi, r15
mov r15, r14
lea rax, [rsp + 0xd4]
mov qword [rsp + 0x140], rax
lea rax, [0x1401d1410]
mov qword [rsp + 0x148], rax
lea rax, [0x1401fec68]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], 2
mov qword [rsp + 0x50], 0
lea rax, [rsp + 0x140]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
lea rcx, [rsp + 0x150]
call fcn.1401cf430
mov r14, qword [rsp + 0xb0]
cmp r14, qword [rsp + 0xa0]
jne 0x14001d2a9
lea rcx, [rsp + 0xa0]
call fcn.140049050
mov rax, qword [rsp + 0xa8]
lea rcx, [r14 + r14*2]
mov rdx, qword [rsp + 0x160]
mov qword [rax + rcx*8 + 0x10], rdx
movdqu xmm0, xmmword [rsp + 0x150]
movdqu xmmword [rax + rcx*8], xmm0
inc r14
mov qword [rsp + 0xb0], r14
mov r14, r15
mov r15, rdi
mov rdi, rbp
mov rbp, r12
mov r12, rbx
lea rbx, [rsp + 0x60]
inc dword [rsp + 0xd4]
mov rcx, rbx
call fcn.14003a8c0
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14001d320
mov rcx, qword [rsp + 0x68]
shl rax, 4
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.140055580
mov rdx, qword [rsp + 0x100]
test rdx, rdx
je 0x14001d1a0
mov rcx, qword [rsp + 0x108]
mov r8d, 1
call fcn.140055580
jmp 0x14001d1a0
mov rax, r13
sub rax, 0x138
jne 0x14001da9b
mov edx, 0x150
mov r8d, 8
mov rcx, rdi
call fcn.140055580
lea rax, [0x1401f62be]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x9017de956a90e99e
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000c920
movabs rcx, 0xe2020f3869823f09
xor rcx, qword [rax]
movabs rdx, 0xf847caf5df4e878a
xor rdx, qword [rax + 8]
movabs r8, 0x757594d622342559
xor r8, qword [rax + 0x10]
mov r9d, 0x3a09d301
xor r9d, dword [rax + 0x18]
movzx r10d, byte [rax + 0x1e]
movzx eax, word [rax + 0x1c]
mov r11d, eax
shr r11d, 8
xor al, 0x95
xor r11b, 0x95
xor r10b, 0x57
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], r8
mov dword [rsp + 0x78], r9d
mov byte [rsp + 0x7c], al
mov byte [rsp + 0x7d], r11b
mov byte [rsp + 0x7e], r10b
lea rsi, [rsp + 0x30]
lea rdx, [rsp + 0xe0]
lea r8, [rsp + 0x60]
mov r9d, 0x1f
mov rcx, rsi
call fcn.14004b3b0
cmp byte [rsp + 0x30], 0x12
jne 0x14001db53
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x110], rax
movdqu xmm0, xmmword [rsp + 0x38]
movdqa xmmword [rsp + 0x100], xmm0
cmp rax, 2
jae 0x14001d515
lea rax, [0x1401f1afd]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x564b5e616623c4b3
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000c4d0
mov r14, qword [rax]
mov rbx, qword [rax + 8]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x10
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001dbeb
mov rdi, rax
movabs rax, 0x94524e2dcb9a1bff
xor rbx, rax
movabs rax, 0x767156433116282a
xor r14, rax
mov qword [rdi], r14
mov qword [rdi + 8], rbx
mov rbx, qword [rsp + 0xb0]
cmp rbx, qword [rsp + 0xa0]
jne 0x14001d4e8
lea rcx, [rsp + 0xa0]
call fcn.140049050
mov rax, qword [rsp + 0xa8]
lea rcx, [rbx + rbx*2]
mov qword [rax + rcx*8], 0x10
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], 0x10
inc rbx
mov qword [rsp + 0xb0], rbx
lea rax, [0x1401fb2de]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x40526068c3b4efa0
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.14000ce80
movabs rcx, 0x8acac0717f2a148c
xor rcx, qword [rax]
movabs rdx, 0xd841492e8a55ab73
xor rdx, qword [rax + 8]
movabs r8, 0x329918c0ddfac21c
xor r8, qword [rax + 0x10]
movabs r9, 0x37c50bf121a31000
xor r9, qword [rax + 0x18]
movabs r10, 0x4126f03541d7752c
xor r10, qword [rax + 0x20]
mov r11d, 0x7b23eb05
xor r11d, dword [rax + 0x28]
movzx eax, byte [rax + 0x2c]
xor al, 0xa4
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x50], r10
mov dword [rsp + 0x58], r11d
mov byte [rsp + 0x5c], al
lea rcx, [rsp + 0x60]
lea rdx, [rsp + 0xe0]
lea r8, [rsp + 0x30]
mov r9d, 0x2d
call fcn.14004b3b0
cmp byte [rsp + 0x60], 0x12
jne 0x14001db53
mov rax, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
lea rdx, [rcx + rcx*2]
shl rdx, 4
add rdx, rsi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0x48], rdx
test rcx, rcx
jne 0x14001d72e
lea rcx, [rsp + 0x30]
call fcn.140038260
mov r15, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xb0]
lea rcx, [rsp + 0x100]
call fcn.14003a8c0
mov rax, qword [rsp + 0x100]
test rax, rax
je 0x14001d674
mov rcx, qword [rsp + 0x108]
shl rax, 4
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.140055580
lea rcx, [rsp + 0xe0]
call fcn.14005aee0
lea rax, [rdi*8]
lea rbx, [rax + rax*2]
mov rax, qword [rsp + 0x88]
mov r14, qword [rsp + 0x98]
sub rax, r14
cmp rax, rdi
jb 0x14001db15
lea rcx, [r14 + r14*2]
shl rcx, 3
add rcx, qword [rsp + 0x90]
mov rdx, rsi
mov r8, rbx
call fcn.1401ef240
add rdi, r14
mov qword [rsp + 0x98], rdi
test r15, r15
je 0x14001d6ea
shl r15, 3
lea rdx, [r15 + r15*2]
mov r8d, 8
mov rcx, rsi
call fcn.140055580
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x118]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rsp + 0x88]
movups xmmword [rax], xmm0
add rsp, 0x168
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp rsi, qword [rsp + 0xe8]
je 0x14001d61d
mov rax, rsi
add rsi, 0x30
mov qword [rsp + 0x38], rsi
mov r15, qword [rax]
test r15, r15
je 0x14001d61d
mov rcx, qword [rax + 8]
mov r12, qword [rax + 0x18]
test r12, r12
mov qword [rsp + 0xd8], rcx
je 0x14001da50
mov qword [rsp + 0xf8], rsi
lea rbp, [r15 + 0x10]
movdqa xmm0, xmmword [r15]
pmovmskb eax, xmm0
not eax
mov qword [rsp + 0xf0], r15
mov rdi, rbp
mov rsi, r12
mov qword [rsp + 0xb8], r12
jmp 0x14001d7df
mov rax, qword [rsp + 0xa8]
lea rcx, [rsi + rsi*2]
mov qword [rax + rcx*8], 0x15
mov qword [rax + rcx*8 + 8], r13
mov qword [rax + rcx*8 + 0x10], 0x15
inc rsi
mov qword [rsp + 0xb0], rsi
mov r12, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xc8]
mov ebx, dword [rsp + 0xc0]
mov eax, ebx
dec rsi
je 0x14001d930
test ax, ax
je 0x14001d7f0
lea ebx, [rax - 1]
and ebx, eax
jmp 0x14001d817
movdqa xmm0, xmmword [rdi]
pmovmskb eax, xmm0
add r15, 0xfffffffffffffc80
add rdi, 0x10
cmp eax, 0xffff
je 0x14001d7f0
mov ecx, 0xfffffffe
sub ecx, eax
not eax
mov ebx, eax
and ebx, ecx
tzcnt eax, eax
neg rax
imul r13, rax, 0x38
add r13, r15
add r13, 0xffffffffffffffe0
je 0x14001d930
mov rcx, r13
lea rdx, [0x1401fec20]
call fcn.14001bf60
test al, al
jne 0x14001d859
mov rcx, r13
lea rdx, [0x1401fec40]
call fcn.14001bf60
test al, al
je 0x14001d7d4
mov dword [rsp + 0xc0], ebx
mov qword [rsp + 0xc8], rsi
lea rax, [0x1401f68a0]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
movabs rdx, 0xfe06c9481ba4f63a
mov qword [rsp + 0x60], rdx
mov rdx, qword [rsp + 0x60]
call fcn.14000e4b0
mov r14, qword [rax]
mov rbx, qword [rax + 8]
mov esi, dword [rax + 0x10]
movzx r12d, byte [rax + 0x14]
movzx eax, byte [0x14027f2b8]
mov ecx, 0x15
mov edx, 1
call fcn.140055570
test rax, rax
je 0x14001db44
mov r13, rax
xor r12b, 0x61
xor esi, 0x9cd43138
movabs rax, 0x859540fd2182b095
xor rbx, rax
movabs rax, 0x60ca0633d74a078e
xor r14, rax
mov qword [r13], r14
mov qword [r13 + 8], rbx
mov dword [r13 + 0x10], esi
mov byte [r13 + 0x14], r12b
mov rsi, qword [rsp + 0xb0]
cmp rsi, qword [rsp + 0xa0]
jne 0x14001d790
lea rcx, [rsp + 0xa0]
call fcn.140049050
jmp 0x14001d790
cmp qword [rsp + 0xd8], 0
mov rsi, qword [rsp + 0xf8]
lea r14, [0x1401fef00]
mov r15, qword [rsp + 0xf0]
je 0x14001d720
test r12, r12
je 0x14001da59
movdqa xmm0, xmmword [r15]
pmovmskb eax, xmm0
not eax
mov rdi, r15
jmp 0x14001d991
add r13, 0xffffffffffffffe8
mov rcx, r13
call fcn.14005aee0
nop dword [rax + rax]
dec r12
lea eax, [rbx - 1]
and eax, ebx
test r12, r12
je 0x14001da59
test ax, ax
jne 0x14001d9bd
nop word cs:[rax + rax]
movdqa xmm0, xmmword [rbp]
pmovmskb eax, xmm0
add rdi, 0xfffffffffffffc80
add rbp, 0x10
cmp eax, 0xffff
je 0x14001d9a0
not eax
mov ebx, eax
tzcnt eax, ebx
neg rax
imul rax, rax, 0x38
lea r13, [rdi + rax]
mov rdx, qword [rdi + rax - 0x38]
test rdx, rdx
je 0x14001d9e7
mov rcx, qword [r13 - 0x30]
mov r8d, 1
call fcn.140055580
movzx eax, byte [r13 - 0x20]
cmp rax, 0xf
ja case.0x14001d9fd.15
movsxd rax, dword [r14 + rax*4]
add rax, r14
jmp rax
mov rdx, qword [r13 - 0x18]
test rdx, rdx
je case.0x14001d9fd.0
mov rcx, qword [r13 - 0x10]
mov r8d, 1
call fcn.140055580
jmp case.0x14001d9fd.0
lea rcx, [r13 - 0x18]
call fcn.14003a2f0
mov rdx, qword [r13 - 0x18]
test rdx, rdx
je case.0x14001d9fd.0
mov rcx, qword [r13 - 0x10]
shl rdx, 5
mov r8d, 8
call fcn.140055580
jmp case.0x14001d9fd.0
test rcx, rcx
je 0x14001d720
mov r8, qword [rsp + 0xd8]
lea rax, [r8 + 1]
mov ecx, 0x38
mul rcx
add rax, 0xf
and rax, 0xfffffffffffffff0
add r8, rax
add r8, 0x11
je 0x14001d720
mov rdx, r8
sub r15, rax
mov r8d, 0x10
mov rcx, r15
call fcn.140055580
jmp 0x14001d720
neg rax
lea r14, [rdi + r13]
add r14, 0x20
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
mov rbx, rdx
shr rbx, 4
jmp 0x14001dacd
add r14, 0x18
dec rbx
je 0x14001d358
mov rdx, qword [r14 - 8]
test rdx, rdx
je 0x14001dac0
mov rcx, qword [r14]
mov r8d, 1
call fcn.140055580
jmp 0x14001dac0
mov qword [rsp + 0x20], 0x18
lea rcx, [rsp + 0x88]
mov r9d, 8
mov rdx, r14
mov r8, rsi
call fcn.1401f03e0
mov r14, qword [rsp + 0x98]
jmp 0x14001c395
mov qword [rsp + 0x20], 0x18
lea rcx, [rsp + 0x88]
mov r9d, 8
mov rdx, r14
mov r8, rdi
call fcn.1401f03e0
mov r14, qword [rsp + 0x98]
jmp 0x14001d6a9
mov ecx, 1
mov edx, 0x15
call fcn.14018ba60
ud2
mov ecx, 1
mov edx, 0x1f
call fcn.14018ba60
mov ecx, 1
mov edx, 0x20
call fcn.14018ba60
mov ecx, 1
mov edx, 0x18
call fcn.14018ba60
mov ecx, 8
mov edx, 0x150
call fcn.14018ba60
mov ecx, 1
mov edx, 0x21
call fcn.14018ba60
mov ecx, 1
mov edx, 0x23
call fcn.14018ba60
mov ecx, 1
mov edx, 0x16
call fcn.14018ba60
mov ecx, 1
mov edx, 0x22
call fcn.14018ba60
mov ecx, 1
mov edx, 0x17
call fcn.14018ba60
mov ecx, 1
mov edx, 0x1d
call fcn.14018ba60
mov ecx, 1
mov edx, 0x10
call fcn.14018ba60
mov ecx, 1
mov edx, 0x11
call fcn.14018ba60
mov ecx, 1
mov edx, 0xa
call fcn.14018ba60
int3