Function at 0x18001ff90
Capabilities:
Execute anti-debugging instructions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1b8
mov rdi, rdx
mov r14, rcx
rdtsc
mov rcx, rdx
shl rcx, 0x20
or rcx, rax
rdtsc
shl rdx, 0x20
or rdx, rax
cmp rcx, rdx
mov eax, 0xe393f8bb
mov r15d, 0x6b545963
cmove r15d, eax
lea rcx, [0x18003e010]
call fcn.180037830
xor ebx, ebx
test eax, eax
jne 0x18002233d
mov eax, r15d
xor eax, 0x737f95ef
mov ecx, dword [rsp + 0x1b4]
and ecx, eax
mov edx, dword [rsp + 0x1b4]
not edx
and edx, eax
add edx, ecx
mov r8d, r15d
xor r8d, 0x737f95ee
mov ebp, r15d
xor ebp, 0x6b545960
add r8d, ebp
sub r8d, edx
lea rcx, [0x18003e010]
lea rdx, [rsp + 0x20]
call fcn.180037fa0
test eax, eax
je 0x18002019c
movzx r8d, word [rsp + 0x22]
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov rcx, qword [rax + 0x30]
xor ebx, ebx
xor edx, edx
call qword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov rsi, rax
movzx eax, word [rsp + 0x20]
cmp eax, 0x2434
je 0x1800201a6
cmp eax, 0x2432
jne 0x180020224
movzx r8d, word [rsp + 0x22]
lea rcx, [0x18003e010]
mov rdx, rsi
call fcn.180037fa0
test eax, eax
je 0x1800222ef
mov eax, r15d
xor eax, 0x2f71b7dc
mov ecx, dword [rsp + 0xd0]
and ecx, eax
mov ebx, r15d
xor ebx, 0x94aba69d
imul ecx, ebx
mov edx, r15d
xor edx, 0x2f71b7a3
mov r14d, r15d
xor r14d, 0x6b545961
mov r8d, dword [rsp + 0xd0]
imul r8d, r14d
or eax, dword [rsp + 0xd0]
mov r9d, r15d
xor r9d, 0xd08e4823
and r9d, dword [rsp + 0xd0]
not r9d
mov ebp, r15d
xor ebp, 0x6b545962
imul r9d, ebp
add edx, r14d
add edx, r8d
add edx, ecx
sub edx, eax
add edx, r9d
lea rdi, [0x18003e018]
mov rcx, rdi
call fcn.1800383c0
movzx r8d, word [rsp + 0x22]
mov rcx, rdi
mov rdx, rsi
call fcn.18003a870
test rsi, rsi
je 0x1800222f3
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov rcx, qword [rax + 0x30]
xor edx, edx
mov r8, rsi
call qword [sym.imp.ntdll.dll_RtlFreeHeap]
mov eax, r15d
xor eax, 0xc37828dc
mov ecx, dword [rsp + 0xcc]
and ecx, eax
mov edx, dword [rsp + 0xcc]
xor edx, eax
add edx, ecx
mov ecx, dword [rsp + 0xcc]
or ecx, eax
not ecx
imul ebx, ecx
mov ecx, dword [rsp + 0xcc]
not ecx
or ecx, eax
imul ecx, ebp
xor r15d, 0x3c87d723
add r15d, ebp
sub r15d, edx
add r15d, ecx
add r15d, ebx
mov ebx, r15d
jmp 0x180022335
mov ebx, 0xffffffff
jmp 0x180022335
movzx r8d, word [rsp + 0x22]
lea rcx, [0x18003e010]
mov rdx, rsi
call fcn.180037fa0
test eax, eax
je 0x180022335
mov qword [r14], rsi
movzx eax, word [rsp + 0x22]
mov dword [rdi], eax
mov eax, r15d
xor eax, 0x80ba5725
mov ecx, dword [rsp + 0xc8]
and ecx, eax
mov edx, r15d
xor edx, 0x7f45a8da
mov r8d, dword [rsp + 0xc8]
and r8d, edx
add r8d, ecx
mov ecx, dword [rsp + 0xc8]
or ecx, eax
xor r15d, 0x6b545962
imul ecx, r15d
and eax, dword [rsp + 0xc8]
add r15d, edx
sub r15d, r8d
add r15d, eax
lea ebx, [rcx + r15]
inc ebx
jmp 0x180022335
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
mov rcx, qword [rax + 0x30]
xor edx, edx
mov r8, rsi
call qword [sym.imp.ntdll.dll_RtlFreeHeap]
mov ecx, dword [rsp + 0x138]
not ecx
mov eax, r15d
xor eax, 0x1d712649
and ecx, eax
mov esi, r15d
xor esi, 0x94aba69d
imul ecx, esi
mov edi, r15d
xor edi, 0x6b545962
lea edx, [rdi + rax]
sub edx, dword [rsp + 0x138]
xor eax, dword [rsp + 0x138]
add edx, ecx
imul eax, edi
add eax, edx
xor ecx, ecx
xchg rbx, r8
cpuid
xchg rbx, r8
cmp r8d, edx
je 0x1800202e6
mov ecx, r15d
xor ecx, 0xffffb980
mov eax, r15d
xor eax, 0x592e
add eax, ecx
sub ax, word [rsp + 0x72]
movzx edx, word [rsp + 0x72]
xor dx, r15w
xor edx, 0x467f
mov r8d, r15d
xor r8d, 0x5962
imul r8d, edx
movzx edx, word [rsp + 0x72]
not edx
or edx, ecx
mov ecx, r15d
xor ecx, 0xffffa69d
imul ecx, edx
add eax, ecx
add eax, r8d
mov word [rsp + 0x140], ax
mov ecx, r15d
xor ecx, 0x2d974c4
mov edx, dword [rsp + 0x134]
xor edx, r15d
xor edx, 0xfd268b3b
mov r8d, dword [rsp + 0x134]
not r8d
or r8d, ecx
mov eax, r15d
and ecx, dword [rsp + 0x134]
xor eax, 0x2d974cb
not ecx
add ecx, edx
imul ecx, edi
add eax, edi
sub eax, r8d
add eax, ecx
xor ecx, ecx
xchg rbx, r8
cpuid
xchg rbx, r8
cmp r8d, edx
je 0x18002038d
movzx eax, word [rsp + 0x70]
not eax
mov ecx, r15d
xor ecx, 0xffe9
movzx edx, word [rsp + 0x70]
xor dx, cx
movzx r8d, word [rsp + 0x70]
or r8w, cx
and ecx, eax
mov eax, r15d
xor eax, 0x5962
not r8d
add r8d, edx
imul r8d, eax
mov eax, r15d
xor eax, 0xffffffe8
mov edx, r15d
xor edx, 0x5906
add edx, eax
sub edx, ecx
add edx, r8d
mov word [rsp + 0x142], dx
mov ecx, dword [rsp + 0x130]
imul ecx, edi
mov edx, r15d
xor edx, 0x7d527a4d
mov r9d, dword [rsp + 0x130]
or r9d, edx
not r9d
mov r8d, r15d
xor r8d, 0x6b545961
xor edx, dword [rsp + 0x130]
imul r9d, r8d
mov eax, r15d
xor eax, 0x7d527a4c
add eax, edi
inc eax
add eax, ecx
add eax, edx
add eax, r9d
xor ecx, ecx
xchg rbx, r9
cpuid
xchg rbx, r9
cmp r9d, edx
je 0x180020456
mov ecx, r15d
xor ecx, 0x20aa
mov edx, r15d
xor edx, 0xdf54
mov eax, r15d
xor eax, 0x5917
add eax, ecx
sub ax, word [rsp + 0x54]
movzx ecx, word [rsp + 0x54]
xor cx, dx
mov r9d, r15d
xor r9d, 0x5962
imul r9d, ecx
movzx ecx, word [rsp + 0x54]
not ecx
mov r10d, r15d
xor r10d, 0xffffa69d
imul r10d, ecx
movzx ecx, word [rsp + 0x54]
not ecx
or ecx, edx
mov edx, r15d
xor edx, 0x5961
imul edx, ecx
add eax, r10d
add eax, edx
add eax, r9d
mov word [rsp + 0x144], ax
mov eax, r15d
xor eax, 0x5ecb38de
mov ecx, dword [rsp + 0x12c]
and ecx, eax
mov edx, r15d
xor edx, 0x6a9a19
mov r9d, dword [rsp + 0x12c]
xor r9d, eax
add r9d, ecx
mov ecx, dword [rsp + 0x12c]
not ecx
or ecx, eax
add ecx, r9d
mov eax, r15d
xor eax, 0xa134c721
add eax, edx
add eax, edi
sub eax, ecx
xor ecx, ecx
xchg rbx, r9
cpuid
xchg rbx, r9
cmp r9d, edx
je 0x18002051a
mov eax, r15d
xor eax, 0x6e3b
movzx ecx, word [rsp + 0x52]
xor cx, ax
mov edx, r15d
xor edx, 0x5962
movzx r9d, word [rsp + 0x52]
or r9w, ax
mov r10d, r15d
xor r10d, 0xffffa69d
imul r10d, r9d
movzx r9d, word [rsp + 0x52]
or r9w, ax
mov r11d, r15d
xor r11d, 0x91c4
or r11w, word [rsp + 0x52]
add r11d, ecx
imul r11d, edx
mov ecx, r15d
xor ecx, 0x5914
or eax, 1
add eax, ecx
add eax, r9d
add eax, r10d
add eax, r11d
mov word [rsp + 0x146], ax
mov ecx, r15d
xor ecx, 0x5a8782b2
mov edx, dword [rsp + 0x128]
and edx, ecx
mov eax, r15d
xor eax, 0xa5787d4c
or ecx, dword [rsp + 0x128]
add ecx, edx
mov edx, dword [rsp + 0x128]
not edx
add edx, ecx
imul edx, edi
add eax, r8d
add eax, edx
xor ecx, ecx
xchg rbx, r9
cpuid
xchg rbx, r9
cmp r9d, edx
je 0x1800205d1
movzx eax, word [rsp + 0x50]
not eax
mov ecx, r15d
xor ecx, 0x8cda
movzx edx, word [rsp + 0x50]
movzx r9d, word [rsp + 0x50]
or r9w, cx
movzx r10d, word [rsp + 0x50]
xor r10w, cx
and ecx, eax
mov eax, r15d
xor eax, 0x7325
and dx, ax
mov r11d, r15d
xor r11d, 0xffffa69d
imul r11d, edx
mov edx, r15d
xor edx, 0x5962
imul edx, r9d
add r10d, edx
mov edx, r15d
xor edx, 0x590c
or eax, 1
add eax, edx
sub eax, ecx
add eax, r11d
add eax, r10d
mov word [rsp + 0x148], ax
mov eax, r15d
xor eax, 0xc9cca4d7
mov ecx, dword [rsp + 0x1b0]
or ecx, eax
not ecx
imul ecx, edi
mov edx, dword [rsp + 0x1b0]
not edx
or edx, eax
mov eax, r15d
xor eax, 0xc9cca4d6
sub eax, edx
add eax, ecx
xor ecx, ecx
xchg rbx, r9
cpuid
xchg rbx, r9
cmp r9d, edx
je 0x180020677
mov eax, r15d
xor eax, 0x6f4f
movzx ecx, word [rsp + 0x4e]
or cx, ax
movzx edx, word [rsp + 0x4e]
or dx, ax
mov r9d, r15d
xor r9d, 0x6f4e
mov r10d, r15d
xor r10d, 0x90b0
or r10w, word [rsp + 0x4e]
mov r11d, r15d
xor r11d, 0x5962
and ax, word [rsp + 0x4e]
not eax
add eax, r10d
imul eax, r11d
mov r10d, r15d
xor r10d, 0x5911
add r10d, r9d
sub r10d, ecx
add r10d, edx
add eax, r10d
inc eax
mov word [rsp + 0x14a], ax
mov eax, dword [rsp + 0x124]
not eax
mov ecx, r15d
xor ecx, 0x7cff5af4
and eax, ecx
mov edx, dword [rsp + 0x124]
not edx
imul edx, edi
mov r9d, dword [rsp + 0x124]
not r9d
or r9d, ecx
add r9d, eax
mov eax, r15d
xor eax, 0x7cff5afb
add eax, edx
sub eax, r9d
xor ecx, ecx
xchg rbx, r9
cpuid
xchg rbx, r9
cmp r9d, edx
je 0x18002073a
mov ecx, r15d
xor ecx, 0x455c
movzx eax, word [rsp + 0x4c]
or ax, cx
mov edx, r15d
xor edx, 0xbaa3
movzx r9d, word [rsp + 0x4c]
xor r9w, dx
mov r10d, r15d
xor r10d, 0xffffa69d
movzx r11d, word [rsp + 0x4c]
not r11d
add r11d, r9d
imul r11d, r10d
movzx r9d, word [rsp + 0x4c]
not r9d
or r9d, ecx
mov ecx, r15d
xor ecx, 0x5960
imul ecx, r9d
mov r9d, r15d
xor r9d, 0x5908
add r9d, edx
sub r9d, eax
add r9d, ecx
add r9d, r11d
mov word [rsp + 0x14c], r9w
mov ecx, r15d
xor ecx, 0x5195fa6a
and ecx, dword [rsp + 0x1ac]
mov eax, r15d
xor eax, 0x5195fa69
mov edx, r15d
xor edx, 0xae6a0595
or edx, dword [rsp + 0x1ac]
imul edx, edi
add eax, edi
sub eax, ecx
add eax, edx
xor ecx, ecx
xchg rbx, r9
cpuid
xchg rbx, r9
cmp r9d, edx
je 0x1800207cb
mov eax, r15d
xor eax, 0x3623
movzx ecx, word [rsp + 0xde]
or cx, ax
not ecx
mov edx, r15d
xor edx, 0x5962
imul edx, ecx
movzx ecx, word [rsp + 0xde]
not ecx
or ecx, eax
mov eax, r15d
xor eax, 0x3622
mov r9d, r15d
xor r9d, 0x597c
add r9d, eax
sub r9d, ecx
add r9d, edx
mov word [rsp + 0x14e], r9w
lea r9d, [rdi + 1]
mov eax, r15d
xor eax, 0x40095619
mov ecx, dword [rsp + 0xc4]
and ecx, eax
mov edx, dword [rsp + 0xc4]
xor edx, eax
imul edx, edi
mov r10d, dword [rsp + 0xc4]
xor r10d, r15d
xor r10d, 0xbff6a9e6
imul r10d, r8d
mov r11d, dword [rsp + 0xc4]
not r11d
or r11d, eax
mov eax, r15d
xor eax, 0x40095618
add eax, edi
sub eax, ecx
add eax, r10d
add eax, edx
sub eax, r11d
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x18002089a
mov eax, r15d
xor eax, 0x5edf
movzx ecx, word [rsp + 0x4a]
and cx, ax
movzx edx, word [rsp + 0x4a]
not edx
mov r10d, r15d
xor r10d, 0xa120
movzx r11d, word [rsp + 0x4a]
or r11w, r10w
and r10d, edx
mov edx, r15d
xor edx, 0x5962
mov ebx, r15d
xor ebx, 0x5ede
or ax, word [rsp + 0x4a]
add eax, r10d
imul eax, edx
mov edx, r15d
xor edx, 0x5906
add edx, ebx
sub edx, ecx
add edx, r11d
add eax, edx
inc eax
mov word [rsp + 0x150], ax
mov ecx, dword [rsp + 0xc0]
imul ecx, esi
mov eax, r15d
xor eax, 0xdbe2ddd1
mov edx, r15d
xor edx, 0x241d222d
mov r10d, dword [rsp + 0xc0]
or r10d, edx
imul r10d, r8d
mov r11d, r15d
xor r11d, 0xdbe2ddd2
or r11d, dword [rsp + 0xc0]
imul r11d, edi
and edx, dword [rsp + 0xc0]
add edx, r11d
add eax, r9d
add eax, ecx
add eax, r10d
add eax, edx
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x18002095d
mov eax, r15d
xor eax, 0xab26
and ax, word [rsp + 0x48]
movzx ecx, word [rsp + 0x48]
mov edx, r15d
xor edx, 0x5962
mov r10d, r15d
mov r11d, r15d
xor r11d, 0x54d9
or r11w, word [rsp + 0x48]
xor r10d, 0xffffab24
movzx ebx, word [rsp + 0x48]
not ebx
mov r14d, r15d
xor r14d, 0x5911
add r14d, r10d
sub r14d, eax
add bx, cx
imul ebx, edx
add ebx, r11d
add ebx, r14d
mov word [rsp + 0x152], bx
mov ecx, r15d
xor ecx, 0x7180535
or ecx, dword [rsp + 0x1a8]
mov eax, r15d
xor eax, 0xf8e7fac8
mov edx, r15d
xor edx, 0xf8e7faca
and edx, dword [rsp + 0x1a8]
not edx
add edx, ecx
imul edx, edi
add eax, edi
add eax, edx
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180020a13
mov edx, r15d
xor edx, 0xbc51
movzx eax, word [rsp + 0x46]
and ax, dx
mov r10d, r15d
xor r10d, 0xffffbc50
mov ecx, r15d
xor ecx, 0x43ae
movzx r11d, word [rsp + 0x46]
or r11w, cx
not r11d
mov ebx, r15d
xor ebx, 0xffffa69d
imul ebx, r11d
xor dx, word [rsp + 0x46]
mov r11d, r15d
xor r11d, 0x5962
and cx, word [rsp + 0x46]
not ecx
add ecx, edx
imul ecx, r11d
mov edx, r15d
xor edx, 0x5911
add edx, r10d
sub edx, eax
add edx, ebx
add edx, ecx
mov word [rsp + 0x154], dx
mov ecx, r15d
xor ecx, 0xe4598524
mov eax, dword [rsp + 0xbc]
xor eax, ecx
imul eax, r8d
mov edx, dword [rsp + 0xbc]
or edx, ecx
imul edx, esi
mov r10d, r15d
xor r10d, 0x1ba67adb
or r10d, dword [rsp + 0xbc]
imul r10d, edi
add r10d, edx
add eax, r9d
add eax, ecx
and ecx, dword [rsp + 0xbc]
add eax, r10d
add eax, ecx
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180020aba
mov eax, r15d
xor eax, 0x8c9c
movzx ecx, word [rsp + 0x6e]
and cx, ax
mov edx, r15d
xor edx, 0x5962
mov r10d, r15d
xor r10d, 0x7363
mov r11d, r15d
xor r11d, 0x5913
add r11d, r10d
sub r11w, word [rsp + 0x6e]
or ax, word [rsp + 0x6e]
add eax, ecx
imul eax, edx
add r11d, eax
mov word [rsp + 0x156], r11w
mov eax, r15d
xor eax, 0xeebbb50
and eax, dword [rsp + 0x120]
imul eax, esi
mov ecx, r15d
xor ecx, 0xeebbb56
mov edx, dword [rsp + 0x120]
imul edx, edi
add edx, ecx
add edx, eax
mov eax, dword [rsp + 0x120]
xor eax, r15d
xor eax, 0xf11444af
add eax, edx
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180020b68
mov eax, r15d
xor eax, 0xe537
movzx ecx, word [rsp + 0x44]
and cx, ax
mov edx, r15d
xor edx, 0x5962
mov r10d, r15d
xor r10d, 0x1ac8
movzx r11d, word [rsp + 0x44]
or r11w, r10w
mov ebx, r15d
xor ebx, 0xffffde3b
or ax, word [rsp + 0x44]
add eax, ecx
and r10w, word [rsp + 0x44]
not r10d
add r10d, eax
imul r10d, edx
mov eax, r15d
xor eax, 0x5911
add eax, ebx
sub eax, r11d
add eax, r10d
mov word [rsp + 0x158], ax
mov ecx, r15d
xor ecx, 0xcb5dece5
lea eax, [r9 + rcx]
and ecx, dword [rsp + 0xb8]
imul ecx, esi
mov edx, dword [rsp + 0xb8]
not edx
mov r10d, r15d
xor r10d, 0x34a2131a
and edx, r10d
mov r11d, dword [rsp + 0xb8]
or r11d, r10d
imul r11d, edi
xor r10d, dword [rsp + 0xb8]
add r10d, r11d
sub eax, edx
add eax, ecx
add eax, r10d
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180020c28
movzx eax, word [rsp + 0x42]
not eax
mov ecx, r15d
xor ecx, 0xd71a
mov edx, ecx
and edx, eax
add dx, word [rsp + 0x42]
movzx eax, word [rsp + 0x42]
xor ax, cx
mov ecx, r15d
xor ecx, 0x5962
mov r10d, r15d
xor r10d, 0xffffd719
mov r11d, r15d
xor r11d, 0x28e5
or r11w, word [rsp + 0x42]
add r11d, eax
imul r11d, ecx
mov eax, r15d
xor eax, 0x5943
add eax, r10d
sub eax, edx
add eax, r11d
mov word [rsp + 0x15a], ax
mov ecx, r15d
xor ecx, 0xf92cc135
mov eax, dword [rsp + 0xb4]
and eax, ecx
mov edx, dword [rsp + 0xb4]
xor edx, ecx
mov r10d, dword [rsp + 0xb4]
not r10d
add r10d, eax
mov eax, r15d
xor eax, 0x6d33ec8
and ecx, dword [rsp + 0xb4]
imul r10d, edi
add eax, edi
add eax, edx
add eax, ecx
add eax, r10d
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180020cd9
mov eax, r15d
xor eax, 0x1c52
movzx ecx, word [rsp + 0x6c]
xor cx, ax
movzx edx, word [rsp + 0x6c]
not edx
mov r10d, r15d
xor r10d, 0x5962
imul r10d, edx
mov edx, r15d
and ax, word [rsp + 0x6c]
xor edx, 0xffffe3ac
not eax
mov r11d, r15d
xor r11d, 0xffffa69d
imul r11d, eax
mov eax, r15d
xor eax, 0x594f
add eax, edx
add eax, r10d
add eax, ecx
add eax, r11d
mov word [rsp + 0x15c], ax
mov eax, r15d
xor eax, 0x3d90ce99
and eax, dword [rsp + 0xb0]
imul eax, edi
mov ecx, r15d
xor ecx, 0x3d90ce98
mov edx, r15d
xor edx, 0xc26f3166
mov r10d, dword [rsp + 0xb0]
xor r10d, edx
mov r11d, dword [rsp + 0xb0]
not r11d
or r11d, edx
imul r11d, r8d
and edx, dword [rsp + 0xb0]
add ecx, edi
add ecx, r10d
add ecx, r11d
add ecx, eax
lea eax, [rdx + rcx]
add eax, 2
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180020d8b
mov eax, r15d
xor eax, 0x56b9
movzx ecx, word [rsp + 0x6a]
or cx, ax
not ecx
mov edx, r15d
xor edx, 0x5961
imul edx, ecx
movzx ecx, word [rsp + 0x6a]
mov r10d, r15d
xor r10d, 0x5943
add r10d, eax
add r10w, word [rsp + 0x6a]
xor cx, ax
add r10d, edx
lea eax, [rcx + r10]
add eax, 2
mov word [rsp + 0x15e], ax
mov ecx, r15d
xor ecx, 0xa020e61
mov eax, dword [rsp + 0x11c]
and eax, ecx
mov edx, r15d
xor edx, 0xa020e60
mov r10d, dword [rsp + 0x11c]
not r10d
add r10d, eax
mov eax, r15d
xor eax, 0x5607089f
add eax, edx
or ecx, dword [rsp + 0x11c]
add ecx, r10d
imul ecx, edi
add eax, edi
add eax, ecx
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180020e4e
movzx eax, word [rsp + 0x40]
not eax
mov ecx, r15d
xor ecx, 0x1903
movzx edx, word [rsp + 0x40]
xor dx, cx
movzx r10d, word [rsp + 0x40]
or r10w, cx
movzx r11d, word [rsp + 0x40]
xor r11w, cx
and ecx, eax
mov eax, r15d
xor eax, 0xffffa69d
imul eax, edx
mov edx, r15d
xor edx, 0x5962
add r10d, ecx
imul r10d, edx
mov ecx, r15d
xor ecx, 0xffffe6fc
mov edx, r15d
xor edx, 0x590a
add edx, ecx
add edx, r11d
add edx, eax
lea eax, [r10 + rdx]
inc eax
mov word [rsp + 0x160], ax
mov ecx, r15d
xor ecx, 0xcc536f84
mov edx, dword [rsp + 0xac]
and edx, ecx
imul edx, r8d
mov r10d, dword [rsp + 0xac]
imul r10d, esi
xor ecx, dword [rsp + 0xac]
imul ecx, edi
mov eax, r15d
xor eax, 0x33ac907b
add eax, r9d
add eax, r10d
add eax, edx
add eax, dword [rsp + 0xac]
add eax, ecx
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180020ef6
mov eax, r15d
xor eax, 0xa26c
movzx ecx, word [rsp + 0xdc]
or cx, ax
mov edx, r15d
xor edx, 0x5d92
movzx r10d, word [rsp + 0xdc]
not r10d
or r10d, eax
mov eax, r15d
xor eax, 0x5962
imul eax, r10d
mov r10d, r15d
xor r10d, 0x590d
add r10d, edx
add r10d, ecx
add eax, r10d
inc eax
mov word [rsp + 0x162], ax
mov eax, r15d
xor eax, 0xe273abc0
mov ecx, dword [rsp + 0x118]
xor ecx, eax
imul ecx, edi
mov edx, dword [rsp + 0x118]
or edx, eax
not edx
mov r10d, r8d
or r10d, 1
add eax, r10d
add eax, dword [rsp + 0x118]
imul edx, r8d
add eax, ecx
add eax, edx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x180020f9b
movzx eax, word [rsp + 0x68]
mov ecx, r15d
xor ecx, 0x5962
mov edx, r15d
xor edx, 0xb084
movzx r11d, word [rsp + 0x68]
xor r11w, dx
add r11w, ax
imul r11d, ecx
movzx eax, word [rsp + 0x68]
not eax
or eax, edx
mov ecx, r15d
xor ecx, 0x5961
imul ecx, eax
mov eax, r15d
xor eax, 0x4f7b
mov edx, r15d
xor edx, 0x591a
add edx, eax
add edx, ecx
add edx, r11d
mov word [rsp + 0x164], dx
mov eax, dword [rsp + 0xa8]
not eax
mov ecx, r15d
xor ecx, 0x4561999e
and eax, ecx
mov edx, dword [rsp + 0xa8]
xor edx, ecx
lea r11d, [rdi + rcx]
or ecx, dword [rsp + 0xa8]
imul eax, esi
not ecx
add ecx, edx
mov edx, r15d
xor edx, 0xba9e6661
or edx, dword [rsp + 0xa8]
imul ecx, edi
add eax, r11d
sub eax, edx
add eax, ecx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x180021055
mov eax, r15d
xor eax, 0x7fbf
movzx ecx, word [rsp + 0x3e]
and cx, ax
mov edx, r15d
xor edx, 0x5962
movzx r11d, word [rsp + 0x3e]
not r11d
mov ebx, r15d
xor ebx, 0x8040
and r11d, ebx
movzx r14d, word [rsp + 0x3e]
or r14w, bx
not r14d
add r14d, ecx
or ax, word [rsp + 0x3e]
imul r14d, edx
add eax, r11d
mov ecx, r15d
xor ecx, 0x5902
add ecx, ebx
sub ecx, eax
add ecx, r14d
mov word [rsp + 0x166], cx
mov ecx, r15d
xor ecx, 0xb6443b21
mov eax, dword [rsp + 0xa4]
and eax, ecx
imul eax, r8d
mov edx, r15d
xor edx, 0x49bbc4de
mov r11d, dword [rsp + 0xa4]
xor r11d, edx
lea ebx, [rdi + rdx]
or edx, dword [rsp + 0xa4]
not edx
imul edx, edi
or ecx, dword [rsp + 0xa4]
add ecx, r11d
add eax, ebx
add eax, edx
sub eax, ecx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x1800210fa
mov eax, r15d
xor eax, 0x3a52
movzx ecx, word [rsp + 0x66]
and cx, ax
mov edx, r15d
xor edx, 0xffffc5ac
mov r11d, r15d
xor r11d, 0x5908
add r11d, edx
mov edx, r15d
xor edx, 0x5961
sub r11w, word [rsp + 0x66]
xor ax, word [rsp + 0x66]
imul edx, ecx
add r11d, edx
add eax, r11d
inc eax
mov word [rsp + 0x168], ax
mov ecx, dword [rsp + 0xa0]
imul ecx, r8d
mov edx, r15d
xor edx, 0x7441d09d
mov eax, dword [rsp + 0xa0]
xor eax, edx
or edx, dword [rsp + 0xa0]
imul edx, esi
mov r11d, dword [rsp + 0xa0]
not r11d
add r11d, eax
mov eax, r15d
xor eax, 0x7441d09c
imul r11d, edi
add eax, edi
add eax, ecx
add eax, edx
add eax, r11d
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x1800211c3
movzx eax, word [rsp + 0x3c]
not eax
mov ecx, r15d
xor ecx, 0xb79f
movzx edx, word [rsp + 0x3c]
xor dx, cx
movzx r11d, word [rsp + 0x3c]
or r11w, cx
and ecx, eax
mov eax, r15d
xor eax, 0x5961
imul eax, edx
add r11d, ecx
movzx ecx, word [rsp + 0x3c]
xor cx, r15w
xor ecx, 0x4860
mov edx, r15d
xor edx, 0x5962
imul edx, ecx
mov ecx, r15d
xor ecx, 0xffffb79e
mov ebx, r15d
xor ebx, 0x590a
add ebx, ecx
sub ebx, r11d
add ebx, eax
add ebx, edx
mov word [rsp + 0x16a], bx
mov eax, dword [rsp + 0x114]
not eax
mov ecx, r15d
xor ecx, 0xf07c7d73
and eax, ecx
mov edx, dword [rsp + 0x114]
xor edx, ecx
or ecx, dword [rsp + 0x114]
add ecx, eax
mov eax, r15d
xor eax, 0xf83828c
imul ecx, edi
add eax, r8d
sub eax, edx
add eax, ecx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x180021280
mov eax, r15d
xor eax, 0xa40c
movzx edx, word [rsp + 0x3a]
and dx, ax
mov ecx, r15d
xor ecx, 0xffffa69d
imul ecx, edx
mov edx, r15d
xor edx, 0xffffa413
mov r11d, r15d
xor r11d, 0x5961
imul r11w, word [rsp + 0x3a]
or ax, word [rsp + 0x3a]
mov ebx, r15d
xor ebx, 0x5bf3
and bx, word [rsp + 0x3a]
not ebx
mov r14d, r15d
xor r14d, 0x5962
imul r14d, ebx
mov ebx, r15d
xor ebx, 0x5907
add ebx, edx
add ebx, r11d
add ebx, ecx
sub ebx, eax
add ebx, r14d
mov word [rsp + 0x16c], bx
mov ecx, r15d
xor ecx, 0x6e842766
mov edx, dword [rsp + 0x110]
xor edx, ecx
or ecx, dword [rsp + 0x110]
not ecx
mov eax, r15d
xor eax, 0x6e842765
mov r11d, r15d
xor r11d, 0x917bd899
or r11d, dword [rsp + 0x110]
add r11d, edx
add r11d, ecx
imul r11d, edi
add eax, r8d
add eax, r11d
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x18002132d
mov eax, r15d
xor eax, 0xe92a
movzx ecx, word [rsp + 0x64]
and cx, ax
mov edx, r15d
xor edx, 0xffffa69d
imul edx, ecx
mov ecx, r15d
xor ecx, 0x5962
imul cx, word [rsp + 0x64]
movzx r11d, word [rsp + 0x64]
xor r11w, r15w
xor r11d, 0x16d5
mov ebx, r15d
xor ebx, 0x5943
add ebx, eax
add ebx, ecx
add ebx, edx
lea eax, [r11 + rbx]
inc eax
mov word [rsp + 0x16e], ax
mov ecx, r15d
xor ecx, 0xa165ce30
mov edx, dword [rsp + 0x9c]
or edx, ecx
or ecx, dword [rsp + 0x9c]
not ecx
mov r11d, r15d
xor r11d, 0x94aba69e
imul ecx, r11d
mov ebx, r15d
xor ebx, 0x5e9a31cf
lea eax, [rdi + rbx]
xor ebx, dword [rsp + 0x9c]
mov r14d, dword [rsp + 0x9c]
not r14d
add r14d, ebx
imul r14d, edi
sub eax, edx
add eax, ecx
add eax, r14d
xor ecx, ecx
xchg rbx, rbx
cpuid
xchg rbx, rbx
cmp ebx, edx
je 0x180021405
movzx ecx, word [rsp + 0x38]
mov eax, r15d
xor eax, 0x5962
mov edx, r15d
xor edx, 0x139d
mov ebx, r15d
xor ebx, 0xfc1c
movzx r14d, word [rsp + 0x38]
or r14w, bx
mov r12d, r15d
xor r12d, 0xffffa69d
imul r12d, r14d
movzx r14d, word [rsp + 0x38]
not r14d
or r14d, ebx
movzx r13d, word [rsp + 0x38]
and r13w, bx
not r13d
mov ebx, r15d
xor ebx, 0x590e
add ebx, edx
add ebx, r12d
sub ebx, r14d
add r13w, cx
imul r13d, eax
add r13d, ebx
mov word [rsp + 0x170], r13w
mov ecx, r15d
xor ecx, 0xf23b53a4
mov edx, dword [rsp + 0x10c]
xor edx, ecx
lea eax, [r8 + rcx]
or ecx, dword [rsp + 0x10c]
mov ebx, r15d
xor ebx, 0xdc4ac5b
or ebx, dword [rsp + 0x10c]
add ebx, edx
imul ebx, edi
sub eax, ecx
add eax, ebx
xor ecx, ecx
xchg rbx, rbx
cpuid
xchg rbx, rbx
cmp ebx, edx
je 0x18002147f
mov eax, r15d
xor eax, 0xc250
movzx ecx, word [rsp + 0xda]
or cx, ax
movzx edx, word [rsp + 0xda]
not edx
or edx, eax
add edx, ecx
mov ecx, r15d
xor ecx, 0x5907
add ecx, eax
sub ecx, edx
mov word [rsp + 0x172], cx
mov ecx, r15d
xor ecx, 0x19ee2ea3
mov edx, dword [rsp + 0x108]
and edx, ecx
mov ebx, r15d
xor ebx, 0xe611d15c
and ebx, dword [rsp + 0x108]
mov eax, r15d
xor eax, 0xe611d123
xor ecx, dword [rsp + 0x108]
add ecx, edx
imul ecx, edi
add eax, edi
sub eax, ebx
add eax, ecx
xor ecx, ecx
xchg rbx, rbx
cpuid
xchg rbx, rbx
cmp ebx, edx
je 0x180021528
mov eax, r15d
xor eax, 0x6538
movzx ecx, word [rsp + 0x62]
and cx, ax
mov edx, r15d
xor edx, 0xffffa69d
imul edx, ecx
mov ecx, r15d
xor ecx, 0x9ac7
or cx, word [rsp + 0x62]
mov ebx, r15d
xor ebx, 0x5962
imul ebx, ecx
movzx ecx, word [rsp + 0x62]
and cx, ax
mov r14d, r15d
xor r14d, 0x5910
add r14d, eax
add r14d, edx
add r14d, ebx
lea eax, [rcx + r14]
inc eax
mov word [rsp + 0x174], ax
mov eax, dword [rsp + 0x104]
not eax
mov ecx, r15d
xor ecx, 0x53727aa1
and ecx, eax
mov eax, r15d
xor eax, 0xac8d855e
and eax, dword [rsp + 0x104]
mov edx, dword [rsp + 0x104]
not edx
add edx, eax
mov eax, r15d
xor eax, 0x53727aa0
imul edx, edi
add eax, edi
sub eax, ecx
add eax, edx
xor ecx, ecx
xchg rbx, rbx
cpuid
xchg rbx, rbx
cmp ebx, edx
je 0x1800215ae
mov eax, r15d
xor eax, 0xf7dd
movzx ecx, word [rsp + 0x60]
and cx, ax
mov edx, r15d
xor edx, 0x5911
mov ebx, eax
or ebx, 1
add ebx, edx
add bx, word [rsp + 0x60]
movzx edx, word [rsp + 0x60]
or dx, ax
add edx, ecx
sub ebx, edx
mov word [rsp + 0x176], bx
mov ecx, r15d
xor ecx, 0x96acb1c2
mov edx, dword [rsp + 0x100]
and edx, ecx
imul edx, r8d
mov eax, r15d
mov ebx, r15d
xor ebx, 0x69534e3d
or ebx, dword [rsp + 0x100]
and ecx, dword [rsp + 0x100]
xor eax, 0x69534e3c
not ecx
imul ecx, edi
add eax, edi
add eax, edx
sub eax, ebx
add eax, ecx
xor ecx, ecx
xchg rbx, rbx
cpuid
xchg rbx, rbx
cmp ebx, edx
je 0x18002164f
mov eax, r15d
xor eax, 0x4d50
and ax, word [rsp + 0x5e]
mov ecx, r15d
xor ecx, 0xb2af
movzx edx, word [rsp + 0x5e]
and dx, cx
mov ebx, r15d
xor ebx, 0x5962
xor cx, word [rsp + 0x5e]
add ecx, edx
imul ecx, ebx
mov edx, r15d
xor edx, 0x4d57
mov ebx, r15d
xor ebx, 0x5902
add ebx, edx
sub ebx, eax
add ebx, ecx
mov word [rsp + 0x178], bx
mov eax, r15d
xor eax, 0x48a60b4b
mov ecx, dword [rsp + 0x98]
and ecx, eax
imul ecx, r11d
mov edx, dword [rsp + 0x98]
mov r11d, dword [rsp + 0x98]
xor r11d, r15d
xor r11d, 0xb759f4b4
add r11d, edx
lea edx, [r9 + rax]
and eax, dword [rsp + 0x98]
imul r11d, edi
add eax, edx
add eax, ecx
add eax, r11d
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x180021706
mov eax, r15d
xor eax, 0xb8c8
movzx ecx, word [rsp + 0x36]
or cx, ax
movzx edx, word [rsp + 0x36]
or dx, ax
mov r11d, r15d
xor r11d, 0xffffb8ce
mov ebx, r15d
xor ebx, 0x4737
or bx, word [rsp + 0x36]
mov r14d, r15d
xor r14d, 0x5962
and ax, word [rsp + 0x36]
not eax
add eax, ebx
imul eax, r14d
mov ebx, r15d
xor ebx, 0x5904
add ebx, r11d
sub ebx, ecx
add ebx, edx
add ebx, eax
mov word [rsp + 0x17a], bx
mov ecx, dword [rsp + 0x94]
not ecx
mov eax, r15d
xor eax, 0x78114cca
and ecx, eax
mov edx, dword [rsp + 0x94]
or edx, eax
mov r11d, dword [rsp + 0x94]
not r11d
or r11d, eax
add r11d, edx
mov edx, r15d
xor edx, 0x87eeb335
or edx, dword [rsp + 0x94]
add edx, ecx
imul edx, edi
add eax, edi
sub eax, r11d
add eax, edx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x1800217b5
movzx eax, word [rsp + 0x5c]
not eax
mov ecx, r15d
xor ecx, 0xffffdb4d
and eax, ecx
mov edx, r15d
mov r11d, r15d
xor r11d, 0x24b2
mov ebx, r15d
xor ebx, 0x5905
add ebx, r11d
add bx, word [rsp + 0x5c]
xor edx, 0x5962
movzx r11d, word [rsp + 0x5c]
not r11d
or r11d, ecx
add r11d, eax
imul r11d, edx
lea eax, [rbx + r11]
inc eax
mov word [rsp + 0x17c], ax
mov ecx, dword [rsp + 0x90]
not ecx
mov edx, r15d
xor edx, 0x46b8d0ab
and ecx, edx
mov r11d, dword [rsp + 0x90]
or r11d, edx
imul r11d, edi
mov ebx, dword [rsp + 0x90]
or ebx, edx
not ebx
imul ebx, r8d
xor edx, dword [rsp + 0x90]
mov eax, r15d
xor eax, 0x46b8d0aa
add eax, r9d
sub eax, ecx
add eax, r11d
add eax, ebx
add eax, edx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x180021865
mov eax, r15d
xor eax, 0xe31c
or ax, word [rsp + 0xd8]
mov ecx, r15d
xor ecx, 0x5962
mov edx, r15d
xor edx, 0x1ce1
mov r11d, r15d
xor r11d, 0x1ce3
and r11w, word [rsp + 0xd8]
not r11d
add r11d, eax
imul r11d, ecx
mov eax, r15d
xor eax, 0x5943
add eax, edx
add eax, r11d
mov word [rsp + 0x17e], ax
mov eax, r15d
xor eax, 0x4940ddf9
mov ecx, dword [rsp + 0x8c]
xor ecx, eax
mov edx, r15d
xor edx, 0xb6bf2205
add edx, edi
add edx, ecx
mov ecx, dword [rsp + 0x8c]
xor ecx, eax
imul ecx, esi
mov r11d, dword [rsp + 0x8c]
not r11d
imul r11d, edi
add r11d, edx
or eax, dword [rsp + 0x8c]
add r11d, ecx
imul eax, r8d
add eax, r11d
inc eax
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x18002192f
movzx ecx, word [rsp + 0x34]
mov edx, r15d
xor edx, 0x5962
mov r11d, r15d
xor r11d, 0xd00e
movzx eax, word [rsp + 0x34]
xor ax, r11w
add ax, cx
imul eax, edx
movzx ecx, word [rsp + 0x34]
or cx, r11w
not ecx
mov edx, r15d
xor edx, 0x5960
imul edx, ecx
movzx ecx, word [rsp + 0x34]
not ecx
or ecx, r11d
mov r11d, r15d
xor r11d, 0x4bbf
mov ebx, r15d
xor ebx, 0x5905
add ebx, r11d
add ebx, edx
add ebx, eax
sub ebx, ecx
mov word [rsp + 0x180], bx
mov ecx, dword [rsp + 0x88]
not ecx
mov eax, r15d
xor eax, 0xe23cee55
and ecx, eax
imul ecx, ebp
mov edx, dword [rsp + 0x88]
imul edx, edi
mov r11d, dword [rsp + 0x88]
xor r11d, eax
imul r11d, esi
mov ebx, dword [rsp + 0x88]
not ebx
or ebx, eax
mov eax, r15d
xor eax, 0x1dc311aa
add eax, edi
add eax, ecx
add eax, edx
add eax, r11d
sub eax, ebx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x1800219ff
mov eax, r15d
xor eax, 0x909e
movzx ecx, word [rsp + 0x32]
xor cx, ax
mov edx, r15d
xor edx, 0x5962
mov r11d, r15d
xor r11d, 0x3567
mov ebx, r15d
xor ebx, 0x6f61
or bx, word [rsp + 0x32]
movzx r14d, word [rsp + 0x32]
not r14d
or r14d, eax
add r14d, ecx
imul r14d, edx
movzx ecx, word [rsp + 0x32]
and cx, ax
not ecx
mov eax, r15d
xor eax, 0xffffa69d
imul eax, ecx
mov ecx, r15d
xor ecx, 0x5911
add ecx, r11d
sub ecx, ebx
add ecx, eax
add ecx, r14d
mov word [rsp + 0x182], cx
mov ecx, dword [rsp + 0x84]
mov edx, r15d
xor edx, 0xc8dfa025
mov r11d, dword [rsp + 0x84]
or r11d, edx
mov eax, dword [rsp + 0x84]
or eax, edx
lea ebx, [r9 + rdx]
and edx, dword [rsp + 0x84]
imul r11d, esi
not edx
add edx, ecx
imul edx, edi
add eax, ebx
add eax, r11d
add eax, edx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x180021abf
mov eax, r15d
xor eax, 0xe17e
movzx ecx, word [rsp + 0x30]
xor cx, ax
mov edx, r15d
xor edx, 0x5962
imul edx, ecx
mov ecx, r15d
xor ecx, 0x1e80
or ax, word [rsp + 0x30]
mov r11d, r15d
xor r11d, 0x1e81
movzx ebx, word [rsp + 0x30]
xor bx, r11w
mov r14d, r15d
xor r14d, 0x5961
imul r14d, ebx
or r11w, word [rsp + 0x30]
mov ebx, r15d
xor ebx, 0x590c
add ebx, ecx
add ebx, eax
add ebx, edx
add ebx, r14d
sub ebx, r11d
inc ebx
mov word [rsp + 0x184], bx
mov ecx, dword [rsp + 0xfc]
not ecx
mov edx, r15d
xor edx, 0x18070ed0
and ecx, edx
imul ecx, r8d
mov eax, r15d
xor eax, 0xe7f8f12e
mov r11d, dword [rsp + 0xfc]
imul r11d, edi
xor edx, dword [rsp + 0xfc]
add eax, edi
add eax, ecx
add eax, r11d
sub eax, edx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x180021b7f
mov ecx, r15d
xor ecx, 0xc8f9
and cx, word [rsp + 0x2e]
mov eax, r15d
xor eax, 0x5962
imul eax, ecx
mov ecx, r15d
xor ecx, 0xffffc8f8
mov edx, r15d
xor edx, 0x3706
movzx r11d, word [rsp + 0x2e]
xor r11w, dx
movzx ebx, word [rsp + 0x2e]
not ebx
or ebx, edx
mov r14d, r15d
xor r14d, 0x5961
imul r14d, ebx
movzx ebx, word [rsp + 0x2e]
and bx, dx
mov edx, r15d
xor edx, 0x590e
add edx, ecx
add edx, r11d
add edx, r14d
add edx, eax
lea eax, [rbx + rdx]
add eax, 2
mov word [rsp + 0x186], ax
mov ecx, dword [rsp + 0x80]
not ecx
mov edx, r15d
xor edx, 0xac8c90b2
and ecx, edx
mov r11d, dword [rsp + 0x80]
or r11d, edx
mov eax, r15d
xor eax, 0x53736f4d
lea ebx, [rdi + rax]
or eax, dword [rsp + 0x80]
add eax, ecx
mov ecx, dword [rsp + 0x80]
not ecx
or ecx, edx
add ecx, r11d
imul ecx, edi
imul eax, esi
add eax, ebx
add eax, ecx
xor ecx, ecx
xchg rbx, r11
cpuid
xchg rbx, r11
cmp r11d, edx
je 0x180021c30
movzx eax, word [rsp + 0x5a]
not eax
mov ecx, r15d
xor ecx, 0xcbb
movzx edx, word [rsp + 0x5a]
or dx, cx
and ecx, eax
mov eax, r15d
xor eax, 0x5962
mov r11d, r15d
xor r11d, 0xfffff34b
add edx, ecx
movzx ecx, word [rsp + 0x5a]
xor cx, r15w
xor ecx, 0xfffff344
add ecx, edx
imul ecx, eax
mov eax, r15d
xor eax, 0x5942
add eax, r11d
add eax, ecx
mov word [rsp + 0x188], ax
mov eax, r15d
xor eax, 0xec26691c
mov ecx, dword [rsp + 0xf8]
xor ecx, eax
mov edx, dword [rsp + 0xf8]
not edx
or edx, eax
add edx, ecx
imul edx, edi
mov ecx, r15d
xor ecx, 0x13d996e3
and eax, dword [rsp + 0xf8]
add r10d, ecx
add r10d, eax
add r10d, edx
mov eax, r10d
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180021cb2
mov eax, r15d
xor eax, 0x5fff
movzx ecx, word [rsp + 0xd6]
or cx, ax
movzx edx, word [rsp + 0xd6]
not edx
or edx, eax
add edx, ecx
mov ecx, r15d
xor ecx, 0x5902
add ecx, eax
sub ecx, edx
mov word [rsp + 0x18a], cx
mov ecx, r15d
xor ecx, 0xe5565b6c
mov edx, dword [rsp + 0x7c]
or edx, ecx
imul edx, edi
mov r10d, r15d
xor r10d, 0x88afa281
add r10d, r9d
add r10d, dword [rsp + 0x7c]
mov eax, dword [rsp + 0x7c]
not eax
or eax, ecx
imul eax, r8d
add eax, r10d
add eax, edx
mov ecx, r15d
xor ecx, 0x1aa9a493
or ecx, dword [rsp + 0x7c]
sub eax, ecx
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180021d7d
movzx ecx, word [rsp + 0x2c]
xor cx, r15w
xor ecx, 0xffffc944
mov eax, r15d
xor eax, 0x5962
imul eax, ecx
mov ecx, r15d
xor ecx, 0x36bb
movzx edx, word [rsp + 0x2c]
xor dx, cx
mov r10d, r15d
xor r10d, 0x5961
imul r10d, edx
mov edx, r15d
xor edx, 0x5902
mov r11d, ecx
or r11d, 1
add r11d, edx
add r11w, word [rsp + 0x2c]
movzx edx, word [rsp + 0x2c]
or dx, cx
mov ecx, r15d
xor ecx, 0xffffa69d
imul ecx, edx
add ecx, r10d
add r11d, eax
add r11d, ecx
mov word [rsp + 0x18c], r11w
mov ecx, r15d
xor ecx, 0x1287d8e5
mov edx, dword [rsp + 0xf4]
and edx, ecx
mov eax, r15d
xor eax, 0xed782719
mov r10d, dword [rsp + 0xf4]
xor r10d, ecx
mov r11d, dword [rsp + 0xf4]
not r11d
or r11d, ecx
add r11d, edx
imul r11d, edi
add eax, r9d
add eax, r10d
add eax, r11d
xor ecx, ecx
xchg rbx, r10
cpuid
xchg rbx, r10
cmp r10d, edx
je 0x180021e46
mov ecx, r15d
xor ecx, 0x16f1
movzx edx, word [rsp + 0x2a]
or dx, cx
mov r10d, r15d
xor r10d, 0x5962
mov eax, r15d
xor eax, 0x4824
mov r11d, r15d
xor r11d, 0xe90e
or r11w, word [rsp + 0x2a]
mov ebx, r15d
xor ebx, 0xffffa69d
movzx r14d, word [rsp + 0x2a]
not r14d
or r14d, ecx
add r14d, edx
imul r14d, r10d
movzx edx, word [rsp + 0x2a]
and dx, cx
not edx
add edx, r11d
imul edx, ebx
mov ecx, r15d
xor ecx, 0x5900
add ecx, eax
add ecx, r14d
add ecx, edx
mov word [rsp + 0x18e], cx
mov eax, dword [rsp + 0xf0]
mov ecx, r15d
xor ecx, 0xb8944559
mov edx, dword [rsp + 0xf0]
xor edx, ecx
add edx, eax
add ebp, ecx
or ecx, dword [rsp + 0xf0]
not ecx
imul r8d, ecx
imul edx, edi
add r8d, ebp
add r8d, edx
xor ecx, ecx
mov eax, r8d
xchg rbx, r8
cpuid
xchg rbx, r8
cmp r8d, edx
je 0x180021ee6
mov eax, r15d
xor eax, 0x87e2
and ax, word [rsp + 0x58]
mov ecx, r15d
xor ecx, 0xffff87e0
mov edx, r15d
xor edx, 0x781d
movzx r8d, word [rsp + 0x58]
xor r8w, dx
mov r10d, r15d
xor r10d, 0x5962
and dx, word [rsp + 0x58]
imul r10d, r8d
mov r8d, r15d
xor r8d, 0x5909
add r8d, ecx
sub r8d, eax
add r8d, edx
add r8d, r10d
mov word [rsp + 0x190], r8w
mov ecx, r15d
xor ecx, 0xccb6e6bf
or ecx, dword [rsp + 0xec]
not ecx
imul ecx, esi
mov eax, r15d
xor eax, 0x33491947
mov edx, dword [rsp + 0xec]
xor edx, r15d
xor edx, 0x33491940
mov r8d, dword [rsp + 0xec]
not r8d
add r8d, edx
imul r8d, edi
add eax, edi
add eax, r8d
add eax, ecx
xor ecx, ecx
xchg rbx, r8
cpuid
xchg rbx, r8
cmp r8d, edx
je 0x180021fa1
mov eax, r15d
xor eax, 0xb048
movzx ecx, word [rsp + 0x56]
and cx, ax
mov edx, r15d
xor edx, 0x5961
imul edx, ecx
mov ecx, r15d
xor ax, word [rsp + 0x56]
xor ecx, 0x74c9
mov r8d, r15d
xor r8d, 0x5962
movzx r10d, word [rsp + 0x56]
not r10d
add r10d, eax
imul r10d, r8d
mov eax, r15d
xor eax, 0xffffb04f
add eax, ecx
mov ecx, r15d
xor ecx, 0x5906
add ecx, eax
add ecx, edx
add ecx, r10d
mov word [rsp + 0x192], cx
mov eax, dword [rsp + 0x78]
not eax
mov ecx, r15d
xor ecx, 0x49acdd01
and ecx, eax
mov edx, r15d
xor edx, 0xb65322fe
mov r8d, dword [rsp + 0x78]
xor r8d, edx
add r8d, ecx
imul r8d, edi
lea eax, [r9 + rdx]
add eax, dword [rsp + 0x78]
add eax, r8d
or edx, dword [rsp + 0x78]
sub eax, edx
xor ecx, ecx
xchg rbx, r8
cpuid
xchg rbx, r8
cmp r8d, edx
je 0x18002206f
mov eax, r15d
xor eax, 0x887b
mov edx, r15d
xor edx, 0x7784
movzx r8d, word [rsp + 0x28]
xor r8w, dx
mov ecx, r15d
xor ecx, 0xffffa69d
imul ecx, r8d
mov r8d, r15d
or dx, word [rsp + 0x28]
xor r8d, 0x778a
mov r10d, r15d
xor r10d, 0x5962
imul r10d, edx
movzx edx, word [rsp + 0x28]
not edx
or edx, eax
mov r11d, r15d
xor r11d, 0x5961
imul r11d, edx
add r11d, r10d
movzx edx, word [rsp + 0x28]
and dx, ax
mov eax, r15d
xor eax, 0x590d
add eax, r8d
add eax, ecx
add eax, r11d
add eax, edx
mov word [rsp + 0x194], ax
mov ecx, dword [rsp + 0xe8]
mov edx, r15d
xor edx, 0x51f338a2
mov r8d, r15d
xor r8d, 0x51f338a3
mov eax, dword [rsp + 0xe8]
xor eax, r8d
add eax, ecx
or r8d, dword [rsp + 0xe8]
imul r8d, esi
add r8d, edx
imul eax, edi
add eax, r8d
xor ecx, ecx
xchg rbx, r8
cpuid
xchg rbx, r8
cmp r8d, edx
je 0x18002213d
movzx ecx, word [rsp + 0x26]
not ecx
mov edx, r15d
xor edx, 0x59c
and ecx, edx
mov eax, r15d
xor eax, 0xffffa69d
imul eax, ecx
movzx ecx, word [rsp + 0x26]
xor cx, dx
mov r8d, r15d
xor r8d, 0x5961
imul r8d, ecx
movzx ecx, word [rsp + 0x26]
or cx, dx
mov r10d, r15d
xor r10d, 0x463
movzx r11d, word [rsp + 0x26]
not r11d
or r11d, edx
mov edx, r15d
xor edx, 0x5962
imul edx, r11d
mov r11d, r15d
xor r11d, 0x5907
add r11d, r10d
add r11d, eax
add r11d, r8d
sub r11d, ecx
add r11d, edx
mov word [rsp + 0x196], r11w
mov eax, r15d
xor eax, 0xfca88d6f
mov ecx, dword [rsp + 0xe4]
xor ecx, eax
mov edx, r15d
xor edx, 0x3577297
or eax, dword [rsp + 0xe4]
imul eax, edi
mov r8d, r15d
xor r8d, 0x3577290
or r8d, dword [rsp + 0xe4]
add eax, edx
add r8d, ecx
sub eax, r8d
xor ecx, ecx
xchg rbx, r8
cpuid
xchg rbx, r8
cmp r8d, edx
je 0x180022206
mov ecx, r15d
xor ecx, 0x1aae
movzx edx, word [rsp + 0x24]
xor dx, cx
movzx eax, word [rsp + 0x24]
not eax
or eax, ecx
add eax, edx
mov edx, r15d
xor edx, 0xffffdeff
mov r8d, r15d
xor r8d, 0xe551
or r8w, word [rsp + 0x24]
mov r10d, r15d
xor r10d, 0x5962
imul r10d, r8d
movzx r8d, word [rsp + 0x24]
and r8w, cx
not r8d
mov ecx, r15d
xor ecx, 0x5961
imul ecx, r8d
mov r8d, r15d
xor r8d, 0x594d
add r8d, edx
sub r8d, eax
add r8d, r10d
add r8d, ecx
mov word [rsp + 0x198], r8w
mov eax, dword [rsp + 0xe0]
not eax
mov ecx, r15d
xor ecx, 0x1bf37bde
and eax, ecx
mov edx, r15d
xor edx, 0xe40c8420
or ecx, dword [rsp + 0xe0]
mov r8d, dword [rsp + 0xe0]
xor r8d, r15d
xor r8d, 0xe40c8421
add r8d, eax
imul r8d, edi
add r9d, edx
add r9d, ecx
add r9d, r8d
xor ecx, ecx
mov eax, r9d
xchg rbx, r8
cpuid
xchg rbx, r8
cmp r8d, edx
je 0x180022268
mov word [rsp + 0x19a], 0
lea rcx, [rsp + 0x140]
call fcn.18003c320
xorps xmm0, xmm0
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x170], xmm0
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x150], xmm0
movaps xmmword [rsp + 0x140], xmm0
mov dword [rsp + 0x198], 0
mov qword [rsp + 0x190], 0
mov eax, dword [rsp + 0x74]
mov ebx, r15d
xor ebx, 0xadfb9f5d
mov ecx, dword [rsp + 0x74]
not ecx
add ecx, eax
xor r15d, 0x520460a2
or r15d, dword [rsp + 0x74]
mov eax, dword [rsp + 0x74]
and eax, ebx
not eax
add eax, r15d
imul eax, edi
imul ecx, esi
add ebx, edi
add ebx, ecx
jmp 0x180022333
xor ebx, ebx
jmp 0x180022335
mov eax, r15d
xor eax, 0x868a19de
mov ecx, dword [rsp + 0x13c]
and ecx, eax
imul ecx, r14d
mov ebx, r15d
xor ebx, 0x7975e620
xor r15d, 0x7975e621
or r15d, dword [rsp + 0x13c]
and eax, dword [rsp + 0x13c]
not eax
imul eax, ebp
add ebx, ebp
add ebx, ecx
sub ebx, r15d
add ebx, eax
mov dword [rsp + 0x20], 0
mov eax, ebx
add rsp, 0x1b8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret