Function at 0x1800de990
Capabilities:
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x948
movdqa xmmword [rsp + 0x930], xmm12
movdqa xmmword [rsp + 0x920], xmm11
movdqa xmmword [rsp + 0x910], xmm10
movdqa xmmword [rsp + 0x900], xmm9
movaps xmmword [rsp + 0x8f0], xmm8
movdqa xmmword [rsp + 0x8e0], xmm7
movdqa xmmword [rsp + 0x8d0], xmm6
mov r14, r8
mov r13, rdx
mov qword [rsp + 0x38], rcx
mov rcx, qword [rdx + 0x130]
test rcx, rcx
je 0x1800dea0d
mov rdx, qword [r14]
call fcn.18011b1c0
test al, al
je 0x1800e142f
lea rax, [r13 + 0x20]
mov qword [rsp + 0x248], rax
lea rdi, [r13 + 0x88]
lea rax, [r13 + 0xe0]
mov qword [rsp + 0x190], rax
lea rax, [r13 + 0xe3]
mov qword [rsp + 0x330], rax
lea rbp, [rsp + 0x5a]
lea rax, [r13 + 0x28]
mov qword [rsp + 0x198], rax
lea rax, [0x1801dbb08]
lea rcx, str.description___is_deprecated__use_Display
pxor xmm7, xmm7
movaps xmm8, xmmword [0x18018b8c0]
movq xmm0, rcx
movq xmm9, rax
punpcklqdq xmm9, xmm0
movdqa xmm10, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm11, xmmword [0x18018b810]
movdqa xmm6, xmmword [0x18018bc20]
lea rax, [r13 + 0xc8]
mov qword [rsp + 0x160], rax
lea rax, [r13 + 0xf8]
mov qword [rsp + 0x588], rax
lea rax, [r13 + 0x58]
mov qword [rsp + 0x598], rax
lea rax, [r13 + 0x70]
mov qword [rsp + 0x590], rax
lea r15, [rsp + 0x5a0]
lea r12, [rsp + 0x3e0]
mov qword [rsp + 0x340], r14
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x348], r13
jmp 0x1800deb6a
mov rax, qword [rsp + 0x2b8]
mov rdx, qword [rsp + 0x2c0]
mov r8, qword [rsp + 0x2c8]
lea rcx, [rsp + 0x2d0]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x2e0]
mov r8, qword [rsp + 0x2e8]
lea rcx, [rsp + 0x2f0]
call qword [rax + 0x10]
mov rcx, r15
call fcn.18007a830
lea rcx, [rsp + 0x750]
call fcn.18007a830
lea rcx, [rsp + 0x7b0]
call fcn.1800437e0
lea rcx, [rsp + 0x7c0]
call fcn.1800922e0
mov rdi, qword [rsp + 0x48]
mov rdx, qword [r13 + 0x118]
mov rax, qword [r13 + 0x120]
mov rcx, r15
mov r8, r14
call qword [rax + 0x18]
mov rax, qword [rsp + 0x5a0]
cmp rax, 3
je 0x1800dee20
cmp eax, 4
je 0x1800e15bc
mov r8d, 0xa0
lea rcx, [rsp + 0x750]
mov rdx, r15
call fcn.180170ea0
movzx eax, word [rsp + 0x7b8]
lea ecx, [rax - 0x12d]
cmp ecx, 3
jae 0x1800def6c
cmp qword [r13], 0
je 0x1800debec
mov rax, qword [r13 + 8]
test rax, rax
je 0x1800debec
mov rdx, qword [r13 + 0x10]
mov r8, qword [r13 + 0x18]
mov rcx, qword [rsp + 0x248]
call qword [rax + 0x10]
mov qword [r13], 0
lea rdx, [0x1801dcf30]
jmp 0x1800dec1c
add rdx, 0x20
lea rax, [0x1801dcfb0]
cmp rdx, rax
mov r13, qword [rsp + 0x348]
je 0x1800dee90
mov rax, qword [r13 + 0x60]
test rax, rax
je 0x1800dec00
mov rcx, qword [rsp + 0x198]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x40], rax
call fcn.18003f340
mov r9, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x28]
mov ebp, eax
movzx r15d, ax
mov rax, qword [rsp + 0x348]
movzx r14d, word [rax + 0x80]
and r15d, r14d
mov rdi, qword [rax + 0x40]
mov r12, qword [rax + 0x48]
mov r10, qword [rax + 0x50]
xor r13d, r13d
mov qword [rsp + 0x250], r10
jmp 0x1800dec96
movzx eax, byte [rax + 8]
cmp al, byte [rdx + 8]
je 0x1800ded4c
nop word cs:[rax + rax]
inc r13
inc r15
mov rax, r15
nop dword [rax]
mov r15, rax
mov eax, 0
cmp r15, r12
jae 0x1800deca0
movzx ebx, word [rdi + r15*4]
cmp rbx, 0xffff
je 0x1800dec00
movzx eax, word [rdi + r15*4 + 2]
mov ecx, eax
and ecx, r14d
mov r8d, r15d
sub r8d, ecx
and r8d, r14d
cmp r13, r8
ja 0x1800dec00
cmp ax, bp
jne 0x1800dec90
cmp r9, rbx
jbe case.default.0x1800df29c
imul rsi, rbx, 0x68
mov rcx, qword [r10 + rsi + 0x40]
test rcx, rcx
setne al
cmp qword [rdx], 0
sete r8b
cmp al, r8b
je 0x1800dec90
lea rax, [r10 + rsi]
add rax, 0x40
test rcx, rcx
je 0x1800dec78
mov r8, qword [rax + 0x10]
cmp r8, qword [rdx + 0x10]
jne 0x1800dec90
mov rdx, qword [rdx + 8]
mov rcx, qword [rax + 8]
call fcn.1801718f0
mov r10, qword [rsp + 0x250]
mov r9, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x28]
test eax, eax
jne 0x1800dec90
cmp qword [r10 + rsi], 0
mov rdi, qword [rsp + 0x198]
je 0x1800ded6a
add r10, rsi
mov rdx, qword [r10 + 8]
mov rcx, rdi
call fcn.180079eb0
lea rcx, [rsp + 0x50]
mov rdx, rdi
mov r8, r15
mov r9, rbx
call fcn.1800e2070
lea rcx, [rsp + 0x5a]
mov rax, qword [rcx + 0x2e]
mov qword [rsp + 0x400], rax
movdqu xmm0, xmmword [rcx + 0xe]
movdqu xmm1, xmmword [rcx + 0x1e]
movdqa xmmword [rsp + 0x3f0], xmm1
movdqa xmmword [rsp + 0x3e0], xmm0
mov rax, qword [rsp + 0x90]
test rax, rax
je 0x1800dedd2
mov rdx, qword [rsp + 0x98]
mov r8, qword [rsp + 0xa0]
lea rcx, [rsp + 0xa8]
call qword [rax + 0x10]
cmp byte [rsp + 0x400], 2
mov rdx, qword [rsp + 0x28]
je 0x1800dec00
mov rax, qword [rsp + 0x3e0]
mov rdx, qword [rsp + 0x3e8]
mov r8, qword [rsp + 0x3f0]
lea rcx, [rsp + 0x3f8]
call qword [rax + 0x10]
mov rdx, qword [rsp + 0x28]
jmp 0x1800dec00
mov r15, qword [rsp + 0x5a8]
mov qword [rsp + 0x288], r15
mov rsi, qword [r15]
test rsi, rsi
je 0x1800e1646
mov rax, qword [r15 + 8]
mov rcx, rsi
call qword [rax + 0x38]
movabs rcx, 0xee9074f02dceb440
cmp rax, rcx
jne 0x1800e1646
movzx eax, byte [rsi]
test eax, eax
je 0x1800def10
cmp eax, 1
jne 0x1800e1646
cmp byte [rsi + 1], 2
jne 0x1800e1646
cmp dword [rsi + 4], 0
je 0x1800def24
jmp 0x1800e1646
mov rax, qword [rsp + 0x190]
movzx eax, byte [rax]
mov ecx, eax
or ecx, 4
cmp ecx, 5
mov rdi, qword [rsp + 0x48]
lea rbp, [rsp + 0x5a]
lea r14, [rsp + 0x50]
lea r12, [rsp + 0x3e0]
je 0x1800def91
cmp al, 0xa
jb 0x1800deee4
cmp qword [r13 + 0xf0], 0
je 0x1800deee4
mov r8, qword [r13 + 0xe8]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0x190]
movabs rcx, 0x101010101010101
mov qword [rax + 0x10], rcx
movups xmmword [rax], xmm8
jmp 0x1800def91
cmp byte [rsi + 1], 2
jne 0x1800e1646
cmp dword [rsi + 8], 7
jne 0x1800e1646
cmp qword [r13], 0
je 0x1800df1ab
mov rax, qword [r13 + 8]
test rax, rax
je 0x1800e1646
mov r8, qword [r13 + 0x10]
mov r9, qword [r13 + 0x18]
lea rcx, [rsp + 0x2a8]
mov rdx, qword [rsp + 0x248]
call qword [rax]
mov rax, qword [r13 + 0x128]
cmp rax, 1
jbe 0x1800df1e6
jmp 0x1800e1639
add eax, 0xfffffecd
cmp eax, 2
lea r14, [rsp + 0x50]
jae 0x1800e1805
cmp qword [r13], 0
je 0x1800def91
cmp qword [r13 + 8], 0
je 0x1800e1805
movups xmm0, xmmword [0x1801dcfc0]
movaps xmmword [rsp + 0x60], xmm0
movdqu xmm0, xmmword [0x1801dcfb0]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x750]
mov rdx, r14
call fcn.1800421e0
mov rsi, rax
mov rax, qword [rsp + 0x50]
test rax, rax
je 0x1800defda
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x68]
call qword [rax + 0x10]
test rsi, rsi
je 0x1800e1805
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
mov rcx, r12
call fcn.180027530
cmp qword [rsp + 0x3e0], 0
jne 0x1800e1805
mov r8, qword [rsp + 0x3e8]
test r8, r8
je 0x1800e1805
mov r9, qword [rsp + 0x3f0]
movdqa xmmword [rsp + 0x3e0], xmm7
mov qword [rsp + 0x3f0], 0
mov qword [rsp + 0x400], rdi
mov rcx, r14
mov rdx, r12
call fcn.18011dc20
mov esi, dword [rsp + 0x50]
cmp esi, 2
je 0x1800e1805
mov eax, dword [rbp + 0x4a]
lea rdi, [rsp + 0x3ea]
mov dword [rdi + 0x4a], eax
movups xmm0, xmmword [rbp + 0x3a]
movups xmmword [rdi + 0x3a], xmm0
movdqu xmm0, xmmword [rbp - 6]
movdqu xmm1, xmmword [rbp + 0xa]
movups xmm2, xmmword [rbp + 0x1a]
movups xmm3, xmmword [rbp + 0x2a]
movups xmmword [rdi + 0x2a], xmm3
movups xmmword [rdi + 0x1a], xmm2
movdqu xmmword [rdi + 0xa], xmm1
movdqu xmmword [rdi - 6], xmm0
mov dword [rsp + 0x3e0], esi
mov rcx, r14
mov rdx, r12
call fcn.180080b10
movzx ebx, byte [rsp + 0x50]
mov rcx, r14
call fcn.1800814a0
cmp bl, 3
je 0x1800e161d
mov eax, dword [rdi + 2]
mov dword [rsp + 0x7f8], eax
mov rdx, qword [rdi - 6]
mov qword [rsp + 0x7f0], rdx
mov rcx, qword [rsp + 0x3f0]
mov r8, qword [rsp + 0x3f8]
movups xmm0, xmmword [rdi + 0x16]
movups xmm1, xmmword [rdi + 0x26]
movups xmm2, xmmword [rdi + 0x36]
movaps xmmword [rsp + 0x640], xmm0
movaps xmmword [rsp + 0x650], xmm1
movaps xmmword [rsp + 0x660], xmm2
mov r9, qword [rdi + 0x46]
mov qword [rsp + 0x670], r9
lea r9, [rsp + 0x1d4]
mov dword [r9 + 8], eax
mov qword [r9], rdx
mov rax, qword [rsp + 0x670]
mov qword [r9 + 0x4c], rax
movdqa xmm0, xmmword [rsp + 0x640]
movdqa xmm1, xmmword [rsp + 0x650]
movaps xmm2, xmmword [rsp + 0x660]
movups xmmword [r9 + 0x3c], xmm2
movdqu xmmword [r9 + 0x2c], xmm1
movdqu xmmword [r9 + 0x1c], xmm0
mov dword [rsp + 0x1d0], esi
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], r8
mov rax, qword [r13 + 0x110]
cmp byte [rax + 0x1b8], 0
je 0x1800df830
mov r9d, dword [rsp + 0x1fc]
test r9, r9
je 0x1800df2c9
mov rdx, qword [rsp + 0x1f0]
cmp rdx, r9
jbe 0x1800df2a6
cmp byte [rcx + r9], 0xbf
jg 0x1800df2ac
jmp 0x1800e2000
lea rax, [0x1801dbb08]
mov qword [rsp + 0x2a8], rax
lea rax, str.description___is_deprecated__use_Display
mov qword [rsp + 0x2b0], rax
lea rax, [rsp + 0x2b8]
movdqu xmmword [rax], xmm7
mov rax, qword [r13 + 0x128]
cmp rax, 1
ja 0x1800e1639
inc rax
mov qword [r13 + 0x128], rax
lea rcx, [rsp + 0x50]
mov r14, rdi
mov rdx, rdi
call fcn.180080b10
cmp byte [rsp + 0x50], 3
je case.default.0x1800df29c
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x3c0], rax
movups xmm0, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0x3b0], xmm0
movdqu xmm0, xmmword [rsp + 0x50]
movdqu xmm1, xmmword [rsp + 0x60]
movups xmm2, xmmword [rsp + 0x70]
movups xmm3, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x3a0], xmm3
movaps xmmword [rsp + 0x390], xmm2
movdqa xmmword [rsp + 0x380], xmm1
movdqa xmmword [rsp + 0x370], xmm0
movdqa xmmword [rsp + 0x4f0], xmm7
movdqa xmmword [rsp + 0x1d0], xmm7
movdqa xmmword [rsp + 0x350], xmm7
mov rax, qword [rsp + 0x190]
movzx ecx, byte [rax]
xor eax, eax
lea rdx, [0x1800e200c]
movsxd r8, dword [rdx + rcx*4]
add r8, rdx
jmp r8
mov al, 1
jmp case.0x1800df29c.0
jne 0x1800e2000
cmp r9d, 4
jne 0x1800df2c9
lea rdx, [0x180202050]
mov r8, r9
call fcn.1801718f0
test eax, eax
je 0x1800df4b9
mov rsi, qword [r13 + 0xa8]
mov rbx, qword [r13 + 0x98]
test rsi, rsi
je 0x1800df31f
js case.default.0x1800df29c
mov rax, qword [0x180219958]
test rax, rax
jne 0x1800df304
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e186a
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15, rax
test rax, rax
jne 0x1800df325
jmp 0x1800e186a
mov r15d, 1
mov rcx, r15
mov rdx, rbx
mov r8, rsi
call fcn.180170ea0
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rsi
mov rax, qword [rsp + 0x160]
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x36], xmm0
movzx eax, byte [rax + 0x10]
mov byte [rbp + 0x46], al
mov eax, dword [r13 + 0xb0]
mov ecx, dword [r13 + 0xc4]
movdqu xmm0, xmmword [r13 + 0x88]
movdqu xmm1, xmmword [r13 + 0xb4]
movdqu xmmword [rsp + 0x7c], xmm1
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x8c], ecx
movdqu xmmword [rsp + 0x50], xmm0
mov rcx, r14
call fcn.1801270b0
mov rcx, r14
call fcn.1801274d0
cmp dword [rsp + 0x58], 0
je 0x1800df3bc
mov esi, dword [rsp + 0x5c]
mov rax, qword [rsp + 0x70]
cmp rax, rsi
jae 0x1800df3c6
mov rsi, rax
jmp 0x1800df4fb
mov rsi, qword [rsp + 0x70]
jmp 0x1800df4fb
test rsi, rsi
je 0x1800df4f6
cmp rax, rsi
jbe 0x1800df4f0
mov rax, qword [rsp + 0x60]
cmp byte [rax + rsi], 0xc0
jge 0x1800df4f6
jmp case.default.0x1800df29c
mov al, 2
jmp case.0x1800df29c.0
mov al, 3
jmp case.0x1800df29c.0
mov r9d, dword [r13 + 0xb4]
mov rsi, qword [r13 + 0xa8]
test r9, r9
je 0x1800df2d0
mov rcx, qword [r13 + 0x98]
cmp rsi, r9
jbe 0x1800e0332
cmp byte [rcx + r9], 0xbf
jg 0x1800e0338
jmp 0x1800e1ffd
jne case.default.0x1800df29c
mov qword [rsp + 0x70], rsi
mov dword [rsp + 0x58], 0
mov r8d, dword [rsp + 0x7c]
mov r15, qword [rsp + 0x60]
mov rax, rsi
inc r8d
je 0x1800df52f
mov rax, rsi
sub rax, r8
jbe 0x1800df529
cmp byte [r15 + r8], 0xbf
jg 0x1800df52f
jmp 0x1800e1fb7
jne 0x1800e1fb7
test rax, rax
je 0x1800df545
cmp byte [r15 + r8], 0x2f
setne al
test al, al
jne 0x1800df54f
jmp 0x1800df615
mov al, 1
test al, al
je 0x1800df615
cmp dword [rsp + 0x50], 0
jne 0x1800df615
test rsi, rsi
je 0x1800df60b
lea rcx, [r15 + rsi]
xor eax, eax
nop dword [rax]
movzx edx, byte [rcx - 1]
test dl, dl
js 0x1800df580
dec rcx
jmp 0x1800df5df
movzx r8d, byte [rcx - 2]
cmp r8b, 0xc0
jge 0x1800df5b0
movzx r9d, byte [rcx - 3]
cmp r9b, 0xc0
jge 0x1800df5ba
movzx r10d, byte [rcx - 4]
add rcx, 0xfffffffffffffffc
and r10d, 7
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
jmp 0x1800df5c2
add rcx, 0xfffffffffffffffe
and r8d, 0x1f
jmp 0x1800df5cd
add rcx, 0xfffffffffffffffd
and r9d, 0xf
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
shl r8d, 6
and edx, 0x3f
or edx, r8d
cmp edx, 0x110000
je 0x1800df5ec
cmp edx, 0x20
jne 0x1800df5ec
inc rax
cmp r15, rcx
jne 0x1800df570
mov rcx, rsi
sub rcx, rax
jb 0x1800df615
je 0x1800df60d
cmp rsi, rcx
jbe 0x1800e0324
cmp byte [r15 + rcx], 0xc0
jge 0x1800df60d
jmp case.default.0x1800df29c
xor ecx, ecx
mov qword [rsp + 0x70], rcx
mov rsi, rcx
xor eax, eax
nop word [rax + rax]
mov rbx, rax
cmp rsi, rax
je 0x1800df65d
movzx r8d, byte [r15 + rbx]
cmp r8b, 0x20
setae cl
cmp r8b, 0x7f
setne dl
lea rax, [rbx + 1]
cmp r8b, 9
je 0x1800df620
and cl, dl
jne 0x1800df620
mov dil, 2
cmp qword [rsp + 0x68], 0
jne 0x1800df74e
jmp 0x1800df760
test rsi, rsi
je 0x1800df6dd
js case.default.0x1800df29c
mov rax, qword [0x180219958]
test rax, rax
jne 0x1800df68a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e186a
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e186a
mov rdi, rax
mov rcx, rax
mov rdx, r15
mov r8, rsi
call fcn.180170ea0
test dil, 1
mov qword [rsp + 0x328], rdi
jne 0x1800df709
or rdi, 1
mov qword [rsp + 0x240], rdi
mov qword [rsp + 0x238], rsi
lea rax, [0x1801c85d0]
jmp 0x1800df720
lea rax, str.description___is_deprecated__use_Display
mov qword [rsp + 0x328], rax
xor eax, eax
mov qword [rsp + 0x240], rax
xor eax, eax
mov qword [rsp + 0x238], rax
lea rax, [0x1801dbb08]
jmp 0x1800df720
mov qword [rsp + 0x240], rdi
mov qword [rsp + 0x238], rsi
lea rax, [0x1801c85e8]
mov qword [rsp + 0x230], rax
mov eax, dword [rsp + 0x3e0]
mov ecx, dword [rsp + 0x3e3]
mov dword [rsp + 0x643], ecx
mov dword [rsp + 0x640], eax
xor edi, edi
cmp qword [rsp + 0x68], 0
je 0x1800df760
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp rsi, rbx
jne 0x1800df830
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x728], rax
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x730], rax
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x738], rax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x740], rax
mov byte [rsp + 0x748], dil
mov eax, dword [rsp + 0x640]
mov ecx, dword [rsp + 0x643]
lea rdx, [rsp + 0x749]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
movups xmm0, xmmword [0x1801dcfe0]
movaps xmmword [rsp + 0x3f0], xmm0
movdqu xmm0, xmmword [0x1801dcfd0]
movdqa xmmword [rsp + 0x3e0], xmm0
mov rcx, r14
mov rdx, qword [rsp + 0x198]
mov r8, r12
lea r9, [rsp + 0x728]
call fcn.180079aa0
cmp byte [rsp + 0x70], 2
je 0x1800df830
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x68]
call qword [rax + 0x10]
nop word cs:[rax + rax]
mov r15, qword [r13 + 0x98]
mov rsi, qword [r13 + 0xa8]
test rsi, rsi
je 0x1800df886
js case.default.0x1800df29c
mov rax, qword [0x180219958]
test rax, rax
jne 0x1800df86b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e186a
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x1800df88b
jmp 0x1800e186a
mov ebx, 1
mov rcx, rbx
mov rdx, r15
mov r8, rsi
call fcn.180170ea0
movdqu xmm12, xmmword [r13 + 0xb4]
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + 0x10]
mov byte [rsp + 0x360], al
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x350], xmm0
movzx r14d, word [r13 + 0xb0]
movzx r10d, word [r13 + 0xb2]
mov r8d, dword [r13 + 0xc4]
mov r15d, dword [r13 + 0x88]
mov r12d, dword [r13 + 0x8c]
mov ebp, dword [r13 + 0x90]
mov edi, dword [r13 + 0x94]
mov rdx, qword [r13 + 0x108]
cmp rdx, qword [r13 + 0x100]
jne 0x1800df92d
mov rcx, qword [rsp + 0x588]
mov dword [rsp + 0x28], r8d
mov word [rsp + 0x40], r10w
call fcn.1800e22c0
movzx r10d, word [rsp + 0x40]
mov r8d, dword [rsp + 0x28]
mov rdx, qword [r13 + 0x108]
mov rax, qword [r13 + 0xf8]
imul rcx, rdx, 0x58
mov dword [rax + rcx], r15d
mov dword [rax + rcx + 4], r12d
mov dword [rax + rcx + 8], ebp
mov dword [rax + rcx + 0xc], edi
mov qword [rax + rcx + 0x10], rbx
mov qword [rax + rcx + 0x18], rsi
mov qword [rax + rcx + 0x20], rsi
mov word [rax + rcx + 0x28], r14w
mov word [rax + rcx + 0x2a], r10w
movdqu xmmword [rax + rcx + 0x2c], xmm12
mov dword [rax + rcx + 0x3c], r8d
movzx r8d, byte [rsp + 0x360]
mov byte [rax + rcx + 0x50], r8b
movdqa xmm0, xmmword [rsp + 0x350]
movdqu xmmword [rax + rcx + 0x40], xmm0
mov r8d, dword [rsp + 0x509]
mov r9d, dword [rsp + 0x50c]
mov dword [rax + rcx + 0x54], r9d
mov dword [rax + rcx + 0x51], r8d
inc rdx
mov qword [r13 + 0x108], rdx
mov rax, qword [r13 + 0x110]
mov rcx, qword [rax + 0x188]
test rcx, rcx
je 0x1800df9f0
cmp ecx, 1
mov rbx, qword [rsp + 0x48]
lea r14, [rsp + 0x50]
lea r12, [rsp + 0x3e0]
jne 0x1800e17e3
cmp qword [rax + 0x190], rdx
ja 0x1800dfa57
jmp 0x1800e1ab1
mov rcx, qword [r13 + 0xf8]
movzx r8d, word [rsp + 0x7b8]
lea r9, [rsp + 0x1d0]
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rdx
mov word [rsp + 0x68], r8w
mov rdx, qword [rax + 0x190]
mov rax, qword [rax + 0x198]
lea r12, [rsp + 0x3e0]
mov rcx, r12
lea r14, [rsp + 0x50]
mov r8, r14
call qword [rax + 0x28]
mov rax, qword [rsp + 0x3e0]
test rax, rax
mov rbx, qword [rsp + 0x48]
jne 0x1800e17d9
mov ebp, dword [rsp + 0x1fc]
test rbp, rbp
je 0x1800e150b
mov r15, qword [rsp + 0x1e0]
mov rsi, qword [rsp + 0x1f0]
cmp rsi, rbp
jbe 0x1800dfa88
cmp byte [r15 + rbp], 0xbf
jg 0x1800dfa8e
jmp 0x1800e1f49
jne 0x1800e1f49
cmp ebp, 4
jne 0x1800dfaa9
mov rcx, r15
lea rdx, [0x180202050]
mov r8, rbp
call fcn.1801718f0
test eax, eax
je 0x1800dfae3
cmp rsi, rbp
jbe 0x1800dfaba
cmp byte [r15 + rbp], 0xbf
jg 0x1800dfac0
jmp 0x1800e1f49
jne 0x1800e1f49
cmp ebp, 5
jne 0x1800e150b
mov rcx, r15
lea rdx, [0x180202054]
mov r8, rbp
call fcn.1801718f0
test eax, eax
jne 0x1800e150b
mov rax, qword [r13 + 0x110]
cmp byte [rax + 0x1ba], 0
je 0x1800dfb2d
cmp rsi, rbp
jbe 0x1800dfb04
cmp byte [r15 + rbp], 0xbf
jg 0x1800dfb0a
jmp 0x1800e1f49
jne 0x1800e1f49
cmp ebp, 5
jne 0x1800e15cd
mov rcx, r15
lea rdx, [0x180202054]
mov r8, rbp
call fcn.1801718f0
test eax, eax
jne 0x1800e15cd
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0xa0], rax
movups xmm0, xmmword [rsp + 0x210]
movaps xmmword [rsp + 0x90], xmm0
movups xmm0, xmmword [rsp + 0x1d0]
movups xmm1, xmmword [rsp + 0x1e0]
movups xmm2, xmmword [rsp + 0x1f0]
movups xmm3, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x80], xmm3
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
cmp qword [r13 + 0xa0], 0
je 0x1800dfba4
mov r8, qword [r13 + 0x98]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0xa0]
mov qword [rbx + 0x50], rax
movaps xmm0, xmmword [rsp + 0x90]
movups xmmword [rbx + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movaps xmm2, xmmword [rsp + 0x70]
movaps xmm3, xmmword [rsp + 0x80]
movups xmmword [rbx + 0x30], xmm3
movups xmmword [rbx + 0x20], xmm2
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx], xmm0
mov rax, qword [rsp + 0x198]
movups xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0x5f0], xmm0
movups xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x5e0], xmm0
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmm3, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x5d0], xmm3
movaps xmmword [rsp + 0x5c0], xmm2
movdqa xmmword [rsp + 0x5b0], xmm1
movdqa xmmword [rsp + 0x5a0], xmm0
mov qword [r13 + 0x28], 0
mov qword [r13 + 0x40], 2
mov qword [r13 + 0x48], 0
mov qword [r13 + 0x50], 8
mov rax, qword [rsp + 0x598]
movdqu xmmword [rax], xmm7
mov qword [r13 + 0x68], 8
mov rax, qword [rsp + 0x590]
movdqu xmmword [rax], xmm7
mov word [rax + 0x10], 0
mov rax, qword [r13 + 0x108]
lea rcx, [rax - 1]
imul rcx, rcx, 0x58
add rcx, qword [r13 + 0xf8]
mov r15d, 0
cmp rax, 1
cmovae r15, rcx
lea rdi, [rsp + 0x5a]
jae 0x1800dfcb3
lea r15, [rsp + 0x5a0]
jmp 0x1800e0a07
mov rax, qword [rsp + 0x160]
cmp byte [rax], 0
je 0x1800dfcfb
mov r8d, dword [r13 + 0xbc]
mov eax, dword [r13 + 0xc0]
mov rcx, qword [r13 + 0x98]
mov rdx, qword [r13 + 0xa8]
cmp eax, r8d
jb 0x1800e1f7e
test r8, r8
je 0x1800dfd10
cmp rdx, r8
jbe 0x1800dfd0a
cmp byte [rcx + r8], 0xc0
jge 0x1800dfd10
jmp 0x1800e1f7e
cmp byte [r15 + 0x40], 0
je 0x1800dfdb5
xor ecx, ecx
jmp 0x1800dfd3c
jne 0x1800e1f7e
test rax, rax
je 0x1800dfd2b
cmp rdx, rax
jbe 0x1800dfd25
cmp byte [rcx + rax], 0xbf
jg 0x1800dfd2b
jmp 0x1800e1f7e
jne 0x1800e1f7e
cmp byte [r15 + 0x40], 0
je 0x1800e03e4
add rcx, r8
sub rax, r8
mov r8d, dword [r15 + 0x34]
mov r9d, dword [r15 + 0x38]
mov rdx, qword [r15 + 0x10]
mov r10, qword [r15 + 0x20]
cmp r9d, r8d
jb 0x1800e1f88
test r8, r8
je 0x1800dfd71
cmp r10, r8
jbe 0x1800dfd6b
cmp byte [rdx + r8], 0xc0
jge 0x1800dfd71
jmp 0x1800e1f88
jne 0x1800e1f88
test r9, r9
je 0x1800dfd8d
cmp r10, r9
jbe 0x1800dfd87
cmp byte [rdx + r9], 0xbf
jg 0x1800dfd8d
jmp 0x1800e1f88
jne 0x1800e1f88
test rcx, rcx
je 0x1800e03e4
sub r9, r8
cmp rax, r9
jne 0x1800e03e4
add rdx, r8
mov r8, rax
call fcn.1801718f0
test eax, eax
jne 0x1800e03e4
cmp word [r13 + 0xb0], 0
je 0x1800dfde0
movzx esi, word [r13 + 0xb2]
cmp word [r15 + 0x28], 0
jne 0x1800e0383
mov rbp, rbx
mov bx, 1
jmp 0x1800e0393
mov r9d, dword [r13 + 0xb4]
mov rcx, qword [r13 + 0x98]
test r9, r9
je 0x1800e0364
mov rdx, qword [r13 + 0xa8]
cmp rdx, r9
jbe 0x1800e035e
cmp byte [rcx + r9], 0xbf
jg 0x1800e0364
jmp 0x1800e2000
movzx r8d, byte [rsp + 0x54]
mov byte [rsp + 0x34], r8b
mov r8d, dword [rsp + 0x50]
mov dword [rsp + 0x30], r8d
mov r8, qword [rsp + 0x4e0]
mov r9, qword [rsp + 0x4e6]
mov qword [rsp + 0x300], r8
mov qword [rsp + 0x306], r9
movaps xmm0, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x640], xmm0
movaps xmm0, xmmword [rsp + 0x350]
movaps xmmword [rsp + 0x7f0], xmm0
mov r8d, dword [rsp + 0x258]
mov dword [rsp + 0x1c0], r8d
movzx r8d, word [rsp + 0x25c]
mov word [rsp + 0x1c4], r8w
mov r8, qword [rsp + 0x570]
mov r9, qword [rsp + 0x577]
mov qword [rsp + 0x317], r9
mov qword [rsp + 0x310], r8
movaps xmm0, xmmword [rsp + 0x4f0]
movaps xmmword [rsp + 0x510], xmm0
movzx r8d, word [rsp + 0x174]
mov word [rsp + 0x26c], r8w
mov r8d, dword [rsp + 0x170]
mov dword [rsp + 0x268], r8d
movzx r8d, byte [rsp + 0x34]
mov byte [rsp + 0x16c], r8b
mov r8d, dword [rsp + 0x30]
mov dword [rsp + 0x168], r8d
mov r8d, dword [rsp + 0x278]
mov r9d, dword [rsp + 0x27b]
mov dword [rsp + 0x29b], r9d
mov dword [rsp + 0x298], r8d
mov r8, qword [rsp + 0x300]
mov r9, qword [rsp + 0x306]
mov qword [rbp + 6], r9
mov qword [rbp], r8
mov qword [rsp + 0x68], 2
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 8
movaps xmm0, xmmword [rsp + 0x640]
movups xmmword [rbp + 0x26], xmm0
mov qword [rsp + 0x90], 8
movaps xmm0, xmmword [rsp + 0x7f0]
movups xmmword [rbp + 0x3e], xmm0
mov word [rsp + 0xa8], 0
movzx r8d, word [rsp + 0x1c4]
mov word [rbp + 0x54], r8w
mov r8d, dword [rsp + 0x1c0]
mov dword [rbp + 0x50], r8d
mov byte [rsp + 0xb0], 0
mov r8, qword [rsp + 0x310]
mov r9, qword [rsp + 0x317]
mov qword [rbp + 0x5e], r9
mov qword [rbp + 0x57], r8
lea r8, [0x1801dbb08]
mov qword [rsp + 0xc0], r8
lea r9, str.description___is_deprecated__use_Display
mov qword [rsp + 0xc8], r9
movaps xmm0, xmmword [rsp + 0x510]
movups xmmword [rbp + 0x76], xmm0
mov qword [rsp + 0xe0], r8
lea r8, [0x1801dd080]
mov qword [rsp + 0xe8], r8
mov qword [rsp + 0xf0], 1
mov qword [rsp + 0xf8], 0
mov word [rsp + 0x100], 0xffff
movzx r8d, word [rsp + 0x26c]
mov word [rbp + 0xac], r8w
mov r8d, dword [rsp + 0x268]
mov dword [rbp + 0xa8], r8d
movzx r8d, byte [rsp + 0x16c]
mov byte [rbp + 0xb5], r8b
mov r8d, dword [rsp + 0x168]
mov dword [rbp + 0xb1], r8d
mov qword [rsp + 0x120], 0
mov byte [rsp + 0x128], 2
mov r8d, dword [rsp + 0x298]
mov r9d, dword [rsp + 0x29b]
mov dword [rbp + 0xd2], r9d
mov dword [rbp + 0xcf], r8d
mov r8, qword [rsp + 0x3c0]
mov qword [rsp + 0x560], r8
movaps xmm0, xmmword [rsp + 0x3b0]
movaps xmmword [rsp + 0x550], xmm0
movaps xmm0, xmmword [rsp + 0x370]
movaps xmm1, xmmword [rsp + 0x380]
movaps xmm2, xmmword [rsp + 0x390]
movaps xmm3, xmmword [rsp + 0x3a0]
movaps xmmword [rsp + 0x540], xmm3
movaps xmmword [rsp + 0x530], xmm2
movaps xmmword [rsp + 0x520], xmm1
movaps xmmword [rsp + 0x510], xmm0
mov qword [rsp + 0x50], 0
mov byte [rsp + 0x108], al
mov byte [rsp + 0x109], cl
mov byte [rsp + 0x10a], dl
mov qword [rsp + 0x110], r15
mov qword [rsp + 0x118], rsi
lea rcx, [rsp + 0x640]
lea r15, [rsp + 0x50]
mov rdx, r15
lea r8, [rsp + 0x510]
call fcn.180081bd0
mov rsi, qword [rsp + 0x640]
movzx ebx, byte [rsp + 0x648]
movzx edi, byte [rsp + 0x649]
mov r8d, 0xd6
lea r12, [rsp + 0x7f0]
mov rcx, r12
lea rdx, [rsp + 0x64a]
call fcn.180170ea0
movups xmm0, xmmword [rsp + 0x2a8]
movups xmm1, xmmword [rsp + 0x2b8]
movaps xmmword [rsp + 0x650], xmm1
movaps xmmword [rsp + 0x640], xmm0
cmp rsi, 3
je 0x1800e1f5c
mov r8d, 0xd6
mov rcx, r15
mov rdx, r12
call fcn.180170ea0
movups xmm0, xmmword [rsp + 0x2a8]
movups xmm1, xmmword [rsp + 0x2b8]
movups xmmword [rbp + 0xcc], xmm0
movups xmmword [rbp + 0xdc], xmm1
mov r8d, 0xf6
lea rcx, [rsp + 0x3ea]
mov rdx, r15
call fcn.180170ea0
mov qword [rsp + 0x3e0], rsi
mov byte [rsp + 0x3e8], bl
mov byte [rsp + 0x3e9], dil
mov rcx, r15
mov rdx, qword [rsp + 0x198]
call fcn.180081de0
lea r12, [rsp + 0x3e0]
mov rcx, r12
call fcn.18007a830
movups xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x430], xmm0
movups xmm0, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0x420], xmm0
movdqu xmm0, xmmword [rsp + 0x50]
movdqu xmm1, xmmword [rsp + 0x60]
movups xmm2, xmmword [rsp + 0x70]
movups xmm3, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x410], xmm3
movaps xmmword [rsp + 0x400], xmm2
movdqa xmmword [rsp + 0x3f0], xmm1
movdqa xmmword [rsp + 0x3e0], xmm0
mov rsi, qword [r13 + 0x110]
add rsi, 0x10
mov r8d, 0x100
mov rcx, r15
mov rdx, r12
call fcn.180170ea0
mov rcx, rsi
mov rdx, r15
call fcn.1800822f0
mov rsi, rax
mov rbx, rdx
mov rcx, qword [r13 + 0x118]
mov rax, qword [r13 + 0x120]
call qword [rax]
mov rax, qword [r13 + 0x120]
cmp qword [rax + 8], 0
lea r15, [rsp + 0x5a0]
je 0x1800e02f9
mov r8, qword [r13 + 0x118]
cmp qword [rax + 0x10], 0x11
jb 0x1800e02ea
mov r8, qword [r8 - 8]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x118], rsi
mov qword [r13 + 0x120], rbx
lea rcx, [rsp + 0x288]
call fcn.180054030
mov rdi, r14
mov r14, qword [rsp + 0x340]
jmp 0x1800deb6a
test rax, rax
je 0x1800df60d
jmp case.default.0x1800df29c
jne 0x1800e1ffd
cmp r9d, 5
jne 0x1800df2c9
lea rdx, [0x180202054]
mov r8, r9
call fcn.1801718f0
test eax, eax
jne 0x1800df2c9
jmp 0x1800df830
jne 0x1800e2000
mov rbp, rbx
mov rdx, r9
call fcn.18011ef70
mov ebx, eax
mov esi, edx
cmp word [r15 + 0x28], 0
je 0x1800e0393
test bx, bx
je 0x1800e03e4
mov rbx, rbp
movzx edx, word [r15 + 0x2a]
mov ax, 1
test ax, ax
jne 0x1800e03d0
jmp 0x1800e03e4
mov r9d, dword [r15 + 0x2c]
mov rcx, qword [r15 + 0x10]
test r9, r9
je 0x1800e03bb
mov rdx, qword [r15 + 0x20]
cmp rdx, r9
jbe 0x1800e03b5
cmp byte [rcx + r9], 0xbf
jg 0x1800e03bb
jmp 0x1800e2000
jne 0x1800e2000
mov rdx, r9
call fcn.18011ef70
test bx, bx
je 0x1800e03db
mov rbx, rbp
test ax, ax
je 0x1800e03e4
cmp si, dx
je 0x1800dfca6
jmp 0x1800e03e4
test ax, ax
je 0x1800e141f
movups xmm0, xmmword [0x1801dd000]
movaps xmmword [rsp + 0x3f0], xmm0
movups xmm0, xmmword [0x1801dcff0]
movaps xmmword [rsp + 0x3e0], xmm0
mov rcx, r14
lea r15, [rsp + 0x5a0]
mov rdx, r15
mov r8, r12
call fcn.1800578b0
cmp byte [rsp + 0x70], 2
je 0x1800e0436
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x68]
call qword [rax + 0x10]
movups xmm0, xmmword [0x1801dd7c0]
movaps xmmword [rsp + 0x3f0], xmm0
movups xmm0, xmmword [0x1801dd7b0]
movaps xmmword [rsp + 0x3e0], xmm0
mov rcx, r14
mov rdx, r15
mov r8, r12
call fcn.1800578b0
cmp byte [rsp + 0x70], 2
je 0x1800e0480
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x68]
call qword [rax + 0x10]
mov dword [rsp + 0x3e0], 0x6b6f6f63
mov word [rsp + 0x3e4], 0x6569
mov byte [rsp + 0x3e6], 0x32
mov edx, 7
mov rcx, r12
call fcn.18004c900
cmp al, 0x51
jne 0x1800e0515
movd xmm0, dword [rsp + 0x3e0]
pcmpeqb xmm0, xmm7
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
movmskps ecx, xmm0
test ecx, ecx
jne 0x1800e05dc
cmp byte [rsp + 0x3e4], 0
je 0x1800e05dc
cmp byte [rsp + 0x3e5], 0
je 0x1800e05dc
mov r12b, 1
cmp byte [rsp + 0x3e6], 0
lea rsi, [rsp + 0x3e0]
je 0x1800e05dc
mov rbp, qword [rsp + 0x5d8]
test rbp, rbp
jne 0x1800e053e
jmp 0x1800e094c
movzx ecx, al
mov rsi, qword [rsp + 0x228]
and rsi, 0xffffffffffffff00
or rsi, rcx
mov r12b, 2
mov rbp, qword [rsp + 0x5d8]
test rbp, rbp
je 0x1800e094c
cmp dword [rsp + 0x5a0], 2
jne 0x1800e05e6
xor ecx, ecx
cmp al, 0x51
sete cl
movdqu xmm0, xmmword [rsp + 0x5a8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm10
movdqa xmmword [rsp + 0x50], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm11
movdqa xmmword [rsp + 0x60], xmm1
movdqa xmmword [rsp + 0x70], xmm0
lea rax, [rsp + 0x5a]
movdqa xmmword [rax + 0x26], xmm7
mov qword [rax + 0x36], 0
mov qword [rsp + 0x7f0], rcx
mov r8d, 8
mov rcx, r14
lea rdi, [rsp + 0x7f0]
mov rdx, rdi
call fcn.18000daa0
cmp r12b, 2
jne 0x1800e066e
movzx eax, sil
mov qword [rsp + 0x7f0], rax
mov r8d, 8
mov rcx, r14
mov rdx, rdi
jmp 0x1800e067a
mov r12, qword [rsp + 0x48]
jmp 0x1800e0966
xor ecx, ecx
cmp al, 0x51
sete cl
movabs rdx, 0xcbf29ce484222325
xor rcx, rdx
movabs rdx, 0x1efac7090aef4a21
imul rcx, rdx
cmp al, 0x51
jne 0x1800e0775
movzx eax, byte [rsi]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
movzx eax, byte [rsi + 1]
xor rax, rcx
imul rax, r8
movzx ecx, byte [rsi + 2]
xor rcx, rax
imul rcx, r8
movzx eax, byte [rsi + 3]
xor rax, rcx
imul rax, r8
movzx ecx, byte [rsi + 4]
xor rcx, rax
imul rcx, r8
movzx edx, byte [rsi + 5]
xor rdx, rcx
imul rdx, r8
movzx eax, byte [rsi + 6]
xor rax, rdx
imul rax, r8
mov r12b, 1
jmp 0x1800e0783
mov r8d, 7
mov rcx, r14
mov rdx, rsi
call fcn.18000daa0
mov rcx, qword [rsp + 0x60]
mov r9, qword [rsp + 0x80]
shl r9, 0x38
or r9, qword [rsp + 0x88]
mov rax, qword [rsp + 0x68]
mov r8, qword [rsp + 0x50]
add r8, rcx
rol rcx, 0xd
xor rax, r9
xor rcx, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x58]
add rdx, rax
rol rax, 0x10
xor rax, rdx
add r8, rax
rol rax, 0x15
add rdx, rcx
rol rcx, 0x11
xor rax, r8
xor rcx, rdx
rol rdx, 0x20
xor r8, r9
add r8, rcx
rol rcx, 0xd
xor rcx, r8
rol r8, 0x20
xor rdx, 0xff
add rdx, rax
rol rax, 0x10
xor rax, rdx
add r8, rax
rol rax, 0x15
add rdx, rcx
rol rcx, 0x11
xor rcx, rdx
rol rdx, 0x20
xor rax, r8
add r8, rcx
rol rcx, 0xd
xor rcx, r8
rol r8, 0x20
add rdx, rax
rol rax, 0x10
xor rax, rdx
add r8, rax
rol rax, 0x15
add rdx, rcx
rol rcx, 0x11
xor rcx, rdx
rol rdx, 0x20
xor rax, r8
add r8, rcx
rol rcx, 0xd
xor rcx, r8
add rdx, rax
shl rax, 0x10
xor rax, rdx
shr rax, 0x2b
add rdx, rcx
shr rcx, 0x2f
xor rcx, rax
mov rax, rdx
shr rax, 0x20
xor rax, rdx
xor rax, rcx
jmp 0x1800e0783
movzx eax, sil
xor rax, rcx
imul rax, rdx
mov r12b, 2
and eax, 0x7fff
movzx ecx, word [rsp + 0x5f8]
mov r15d, eax
and r15d, ecx
mov r8, qword [rsp + 0x5b8]
mov r9, qword [rsp + 0x5c0]
mov rdx, qword [rsp + 0x5c8]
xor r10d, r10d
jmp 0x1800e07c6
inc r10
inc r15
mov r11, r15
nop dword [rax]
mov r15, r11
mov r11d, 0
cmp r15, r9
jae 0x1800e07d0
movzx ebx, word [r8 + r15*4]
cmp rbx, 0xffff
je 0x1800e094c
movzx r11d, word [r8 + r15*4 + 2]
mov edi, r11d
and edi, ecx
mov r14d, r15d
sub r14d, edi
and r14d, ecx
cmp r10, r14
lea r14, [rsp + 0x50]
ja 0x1800e094c
cmp r11w, ax
jne 0x1800e07c0
cmp rbp, rbx
jbe case.default.0x1800df29c
imul r11, rbx, 0x68
lea rdi, [rdx + r11]
add rdi, 0x40
cmp qword [rdx + r11 + 0x40], 0
je 0x1800e0866
cmp r12b, 2
je 0x1800e07c0
cmp qword [rdi + 0x10], 7
jne 0x1800e07c0
mov rdi, qword [rdi + 8]
mov r14d, dword [rdi]
xor r14d, dword [rsi]
mov edi, dword [rdi + 3]
xor edi, dword [rsi + 3]
or edi, r14d
lea r14, [rsp + 0x50]
jne 0x1800e07c0
jmp 0x1800e087a
cmp r12b, 2
jne 0x1800e07c0
cmp byte [rdi + 8], sil
jne 0x1800e07c0
cmp qword [rdx + r11], 0
lea rdi, [rsp + 0x5a0]
je 0x1800e0898
add rdx, r11
mov rdx, qword [rdx + 8]
mov rcx, rdi
call fcn.180079eb0
mov rcx, r14
mov rdx, rdi
mov r8, r15
mov r9, rbx
call fcn.1800e2070
lea rcx, [rsp + 0x68]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x660], rax
movups xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x650], xmm1
movaps xmmword [rsp + 0x640], xmm0
mov rax, qword [rsp + 0x90]
test rax, rax
mov r12, qword [rsp + 0x48]
lea rdi, [rsp + 0x5a]
lea rbx, [rsp + 0x3e0]
je 0x1800e090d
mov rdx, qword [rsp + 0x98]
mov r8, qword [rsp + 0xa0]
lea rcx, [rsp + 0xa8]
call qword [rax + 0x10]
cmp byte [rsp + 0x660], 2
je 0x1800e093a
mov rax, qword [rsp + 0x640]
mov rdx, qword [rsp + 0x648]
mov r8, qword [rsp + 0x650]
lea rcx, [rsp + 0x658]
call qword [rax + 0x10]
mov qword [rsp + 0x228], rsi
lea r15, [rsp + 0x5a0]
jmp 0x1800e096e
mov qword [rsp + 0x228], rsi
mov r12, qword [rsp + 0x48]
lea rdi, [rsp + 0x5a]
lea r15, [rsp + 0x5a0]
lea rbx, [rsp + 0x3e0]
movups xmm0, xmmword [0x1801dcf20]
movaps xmmword [rsp + 0x3f0], xmm0
movups xmm0, xmmword [0x1801dcf10]
movaps xmmword [rsp + 0x3e0], xmm0
mov rcx, r14
mov rdx, r15
mov r8, rbx
call fcn.1800578b0
cmp byte [rsp + 0x70], 2
je 0x1800e09b8
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x68]
call qword [rax + 0x10]
movups xmm0, xmmword [0x1801dd7e0]
movaps xmmword [rsp + 0x3f0], xmm0
movdqu xmm0, xmmword [0x1801dd7d0]
movdqa xmmword [rsp + 0x3e0], xmm0
mov rcx, r14
mov rdx, r15
mov r8, rbx
call fcn.1800578b0
cmp byte [rsp + 0x70], 2
je 0x1800e0a04
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x68]
call qword [rax + 0x10]
mov rbx, r12
mov rcx, r14
mov rdx, rbx
call fcn.180080b10
movzx eax, byte [rsp + 0x50]
cmp al, 3
je 0x1800e1a8a
mov ecx, dword [rdi - 9]
mov edx, dword [rdi - 6]
lea r8, [rsp + 0x2b8]
mov dword [r8 - 0xc], edx
mov dword [r8 - 0xf], ecx
mov rcx, qword [rsp + 0x58]
movups xmm0, xmmword [rdi + 6]
movups xmm1, xmmword [rdi + 0x16]
movups xmm2, xmmword [rdi + 0x26]
movups xmm3, xmmword [rdi + 0x36]
movups xmmword [r8 + 0x10], xmm1
movups xmmword [r8 + 0x20], xmm2
movups xmmword [r8 + 0x30], xmm3
mov rdx, qword [rdi + 0x46]
mov qword [r8 + 0x40], rdx
movups xmmword [r8], xmm0
mov byte [rsp + 0x2a8], al
mov qword [rsp + 0x2b0], rcx
cmp qword [r13], 0
je 0x1800e0af0
mov rax, qword [r13 + 8]
test rax, rax
je 0x1800e0af0
mov r8, qword [r13 + 0x10]
mov r9, qword [r13 + 0x18]
mov rcx, r14
mov rdx, qword [rsp + 0x248]
call qword [rax]
movdqa xmm12, xmmword [rsp + 0x50]
movups xmm0, xmmword [rdi + 6]
movaps xmmword [rsp + 0x4e0], xmm0
movdqa xmmword [rsp + 0x4f0], xmm7
movdqa xmmword [rsp + 0x510], xmm7
movdqa xmmword [rsp + 0x370], xmm7
mov rax, qword [rsp + 0x190]
movzx eax, byte [rax]
xor ebx, ebx
lea rcx, [0x1800e2038]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movdqa xmmword [rsp + 0x4e0], xmm7
movdqa xmmword [rsp + 0x4f0], xmm7
movdqa xmmword [rsp + 0x510], xmm7
movdqa xmmword [rsp + 0x370], xmm7
mov rax, qword [rsp + 0x190]
movzx eax, byte [rax]
xor ebx, ebx
lea rcx, [0x1800e2038]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
movdqa xmm12, xmm9
jmp rax
mov bl, 1
jmp case.0x1800e0b34.0
mov bl, 2
jmp case.0x1800e0b34.0
mov bl, 3
jmp case.0x1800e0b34.0
mov bl, 4
jmp case.0x1800e0b34.0
mov bl, 5
jmp case.0x1800e0b34.0
mov bl, 6
jmp case.0x1800e0b34.0
mov bl, 7
jmp case.0x1800e0b34.0
mov bl, 8
jmp case.0x1800e0b34.0
movzx eax, byte [r13 + 0xe1]
mov byte [rsp + 0x27], al
movzx eax, byte [r13 + 0xe2]
mov byte [rsp + 0x26], al
mov rcx, qword [rsp + 0x330]
movzx eax, byte [rcx + 4]
mov byte [rsp + 0x54], al
mov eax, dword [rcx]
mov dword [rsp + 0x50], eax
mov rax, qword [r13 + 0xe8]
mov qword [rsp + 0x338], rax
movzx eax, byte [r13 + 0xf0]
mov rcx, qword [rsp + 0x158]
and rcx, 0xffffffffffffff00
or rcx, rax
mov qword [rsp + 0x158], rcx
mov bl, 9
jmp case.0x1800e0b34.0
mov rsi, qword [r13 + 0xe8]
mov rax, qword [r13 + 0xf0]
mov qword [rsp + 0x158], rax
test rax, rax
je 0x1800e0c34
js case.default.0x1800df29c
mov rax, qword [0x180219958]
test rax, rax
jne 0x1800e0c17
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1fe9
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x158]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
jne 0x1800e0c39
jmp 0x1800e1fe9
mov eax, 1
mov qword [rsp + 0x338], rax
mov rcx, rax
mov rdx, rsi
mov r8, qword [rsp + 0x158]
call fcn.180170ea0
mov bl, 0xa
nop word cs:[rax + rax]
movzx eax, byte [rsp + 0x54]
mov byte [rsp + 0x184], al
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x180], eax
mov rax, qword [rsp + 0x268]
mov rcx, qword [rsp + 0x26e]
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c6], rcx
movaps xmm0, xmmword [rsp + 0x510]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x370]
movaps xmmword [rsp + 0x640], xmm0
mov eax, dword [rsp + 0x3da]
mov dword [rsp + 0x1b8], eax
movzx eax, word [rsp + 0x3de]
mov word [rsp + 0x1bc], ax
mov rax, qword [rsp + 0x298]
mov rcx, qword [rsp + 0x29f]
mov qword [rsp + 0x28f], rcx
mov qword [rsp + 0x288], rax
movaps xmm0, xmmword [rsp + 0x4f0]
movaps xmmword [rsp + 0x7f0], xmm0
movzx eax, word [rsp + 0x3d8]
mov word [rsp + 0x1b4], ax
mov eax, dword [rsp + 0x3d4]
mov dword [rsp + 0x1b0], eax
movzx eax, byte [rsp + 0x184]
mov byte [rsp + 0x18c], al
mov eax, dword [rsp + 0x180]
mov dword [rsp + 0x188], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16b]
mov dword [rsp + 0x173], ecx
mov dword [rsp + 0x170], eax
mov rax, qword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x1c6]
mov qword [rsp + 0x25e], rcx
mov qword [rsp + 0x258], rax
movaps xmm0, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x310], xmm0
movaps xmm0, xmmword [rsp + 0x640]
movaps xmmword [rsp + 0x570], xmm0
movzx eax, word [rsp + 0x1bc]
mov word [rsp + 0x1ac], ax
mov eax, dword [rsp + 0x1b8]
mov dword [rsp + 0x1a8], eax
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x28f]
mov qword [rsp + 0x27f], rcx
mov qword [rsp + 0x278], rax
movaps xmm0, xmmword [rsp + 0x7f0]
movaps xmmword [rsp + 0x300], xmm0
movzx eax, word [rsp + 0x1b4]
mov word [rsp + 0x1a4], ax
mov eax, dword [rsp + 0x1b0]
mov dword [rsp + 0x1a0], eax
movzx eax, byte [rsp + 0x18c]
mov byte [rsp + 0x17c], al
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x178], eax
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x173]
mov dword [rsp + 0x33], ecx
mov dword [rsp + 0x30], eax
movzx eax, byte [rsp + 0x2a8]
test rax, rax
je 0x1800e0e54
cmp eax, 1
jne 0x1800e0e58
mov dil, 1
movzx ebp, byte [rsp + 0x2a9]
jmp 0x1800e0eb6
xor edi, edi
jmp 0x1800e0eb6
mov rdi, qword [rsp + 0x2b0]
mov rax, qword [0x180219958]
test rax, rax
jne 0x1800e0e82
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1f95
mov qword [0x180219958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1f95
mov rsi, rax
lea rdx, [rdi + 0x18]
mov rax, qword [rdi]
mov r8, qword [rdi + 8]
mov r9, qword [rdi + 0x10]
mov rcx, rsi
call qword [rax]
mov dil, 2
mov rax, qword [rsp + 0x2b8]
mov r8, qword [rsp + 0x2c0]
mov r9, qword [rsp + 0x2c8]
lea rcx, [rsp + 0x380]
lea rdx, [rsp + 0x2d0]
call qword [rax]
mov rax, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x2e0]
mov r9, qword [rsp + 0x2e8]
lea rcx, [rsp + 0x3a0]
lea rdx, [rsp + 0x2f0]
call qword [rax]
movzx eax, word [rsp + 0x2f8]
mov byte [rsp + 0x370], dil
mov byte [rsp + 0x371], bpl
mov qword [rsp + 0x378], rsi
mov word [rsp + 0x3c0], ax
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x560], rax
movups xmm0, xmmword [rsp + 0x380]
movups xmm1, xmmword [rsp + 0x390]
movups xmm2, xmmword [rsp + 0x3a0]
movups xmm3, xmmword [rsp + 0x3b0]
movaps xmmword [rsp + 0x550], xmm3
movaps xmmword [rsp + 0x540], xmm2
movaps xmmword [rsp + 0x530], xmm1
movaps xmmword [rsp + 0x520], xmm0
movzx eax, byte [rsp + 0x370]
mov byte [rsp + 0x510], al
movzx eax, byte [rsp + 0x371]
mov byte [rsp + 0x511], al
mov eax, dword [rsp + 0x372]
mov dword [rsp + 0x512], eax
movzx eax, word [rsp + 0x376]
mov word [rsp + 0x516], ax
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x518], rax
mov qword [rsp + 0x50], 0
mov rax, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x25e]
lea rbp, [rsp + 0x5a]
mov qword [rbp + 6], rcx
mov qword [rbp], rax
mov qword [rsp + 0x68], 2
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 8
movaps xmm0, xmmword [rsp + 0x310]
movups xmmword [rbp + 0x26], xmm0
mov qword [rsp + 0x90], 8
movaps xmm0, xmmword [rsp + 0x570]
movups xmmword [rbp + 0x3e], xmm0
mov word [rsp + 0xa8], 0
movzx eax, word [rsp + 0x1ac]
mov word [rbp + 0x54], ax
mov eax, dword [rsp + 0x1a8]
mov dword [rbp + 0x50], eax
mov byte [rsp + 0xb0], 0
mov rax, qword [rsp + 0x278]
mov rcx, qword [rsp + 0x27f]
mov qword [rbp + 0x5e], rcx
mov qword [rbp + 0x57], rax
lea rax, [0x1801dbb08]
mov qword [rsp + 0xc0], rax
lea rcx, str.description___is_deprecated__use_Display
mov qword [rsp + 0xc8], rcx
movaps xmm0, xmmword [rsp + 0x300]
movups xmmword [rbp + 0x76], xmm0
mov qword [rsp + 0xe0], rax
lea rax, [0x1801dd080]
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xf0], 1
mov qword [rsp + 0xf8], 0
mov word [rsp + 0x100], 0xffff
movzx eax, word [rsp + 0x1a4]
mov word [rbp + 0xac], ax
mov eax, dword [rsp + 0x1a0]
mov dword [rbp + 0xa8], eax
mov byte [rsp + 0x108], bl
movzx eax, byte [rsp + 0x27]
mov byte [rsp + 0x109], al
movzx eax, byte [rsp + 0x26]
mov byte [rsp + 0x10a], al
movzx eax, byte [rsp + 0x17c]
mov byte [rbp + 0xb5], al
mov eax, dword [rsp + 0x178]
mov dword [rbp + 0xb1], eax
mov rax, qword [rsp + 0x338]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], 0
mov byte [rsp + 0x128], 2
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x33]
mov dword [rbp + 0xd2], ecx
mov dword [rbp + 0xcf], eax
lea rcx, [rsp + 0x640]
mov rdx, r14
lea r8, [rsp + 0x510]
call fcn.180081bd0
mov rsi, qword [rsp + 0x640]
movzx ebx, byte [rsp + 0x648]
movzx edi, byte [rsp + 0x649]
mov r8d, 0xd6
lea r12, [rsp + 0x7f0]
mov rcx, r12
lea rdx, [rsp + 0x64a]
call fcn.180170ea0
movaps xmm0, xmmword [rsp + 0x4e0]
lea rax, [rsp + 0x64a]
movups xmmword [rax + 6], xmm0
movdqa xmmword [rsp + 0x640], xmm12
cmp rsi, 3
je 0x1800e1f5c
mov r8d, 0xd6
mov rcx, r14
mov rdx, r12
call fcn.180170ea0
movaps xmm0, xmmword [rsp + 0x640]
movaps xmm1, xmmword [rsp + 0x650]
movups xmmword [rbp + 0xcc], xmm0
movups xmmword [rbp + 0xdc], xmm1
mov r8d, 0xf6
lea rcx, [rsp + 0x3ea]
mov rdx, r14
call fcn.180170ea0
mov qword [rsp + 0x3e0], rsi
mov byte [rsp + 0x3e8], bl
mov byte [rsp + 0x3e9], dil
mov rcx, r14
mov rdx, r15
call fcn.180081de0
lea r12, [rsp + 0x3e0]
mov rcx, r12
call fcn.18007a830
movups xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x430], xmm0
movups xmm0, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0x420], xmm0
movups xmm0, xmmword [rsp + 0x50]
movups xmm1, xmmword [rsp + 0x60]
movups xmm2, xmmword [rsp + 0x70]
movups xmm3, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x410], xmm3
movaps xmmword [rsp + 0x400], xmm2
movaps xmmword [rsp + 0x3f0], xmm1
movaps xmmword [rsp + 0x3e0], xmm0
movaps xmm0, xmmword [rsp + 0x5a0]
movups xmm1, xmmword [r13 + 0x28]
movups xmmword [r13 + 0x28], xmm0
movaps xmmword [rsp + 0x5a0], xmm1
movaps xmm0, xmmword [rsp + 0x5b0]
movups xmm1, xmmword [r13 + 0x38]
movups xmmword [r13 + 0x38], xmm0
movaps xmmword [rsp + 0x5b0], xmm1
movaps xmm0, xmmword [rsp + 0x5c0]
movups xmm1, xmmword [r13 + 0x48]
movups xmmword [r13 + 0x48], xmm0
movaps xmmword [rsp + 0x5c0], xmm1
movaps xmm0, xmmword [rsp + 0x5d0]
movups xmm1, xmmword [r13 + 0x58]
movups xmmword [r13 + 0x58], xmm0
movaps xmmword [rsp + 0x5d0], xmm1
movaps xmm0, xmmword [rsp + 0x5e0]
movups xmm1, xmmword [r13 + 0x68]
movups xmmword [r13 + 0x68], xmm0
movaps xmmword [rsp + 0x5e0], xmm1
movdqa xmm0, xmmword [rsp + 0x5f0]
movdqu xmm1, xmmword [r13 + 0x78]
movdqu xmmword [r13 + 0x78], xmm0
movdqa xmmword [rsp + 0x5f0], xmm1
mov rsi, qword [r13 + 0x110]
add rsi, 0x10
mov r8d, 0x100
mov rcx, r14
mov rdx, r12
call fcn.180170ea0
mov rcx, rsi
mov rdx, r14
call fcn.1800822f0
mov rsi, rax
mov rbx, rdx
mov rcx, qword [r13 + 0x118]
mov rax, qword [r13 + 0x120]
call qword [rax]
mov rax, qword [r13 + 0x120]
cmp qword [rax + 8], 0
mov r14, qword [rsp + 0x340]
je 0x1800e13cc
mov r8, qword [r13 + 0x118]
cmp qword [rax + 0x10], 0x11
jb 0x1800e13bd
mov r8, qword [r8 - 8]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [r13 + 0x118], rsi
mov qword [r13 + 0x120], rbx
cmp byte [rsp + 0x2a8], 2
jb 0x1800deaf0
mov rax, qword [rsp + 0x2b0]
lea rcx, [rax + 0x18]
mov r9, qword [rax]
mov rdx, qword [rax + 8]
mov r8, qword [rax + 0x10]
call qword [r9 + 0x10]
mov r8, qword [rsp + 0x2b0]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1800deaf0
mov rbx, rbp
lea r15, [rsp + 0x5a0]
jmp 0x1800e0a07
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1454
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1f6d
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x70
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1f6d
mov rsi, rax
mov qword [rax + 0x58], 1
lea rax, [0x1801db940]
mov qword [rsi + 0x60], rax
mov word [rsi + 0x68], 1
mov r14, qword [r13 + 0x98]
mov rbx, qword [r13 + 0xa8]
test rbx, rbx
je 0x1800e14dd
js case.default.0x1800df29c
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e14c5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1729
mov rcx, rax
mov qword [0x180219958], rax
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15, rax
test rax, rax
jne 0x1800e14e3
jmp 0x1800e1729
mov r15d, 1
mov rcx, r15
mov rdx, r14
mov r8, rbx
call fcn.180170ea0
movups xmm0, xmmword [r13 + 0xc8]
movaps xmmword [rsp + 0x50], xmm0
movzx eax, byte [r13 + 0xd8]
jmp 0x1800e1760
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0xa0], rax
movups xmm0, xmmword [rsp + 0x210]
movaps xmmword [rsp + 0x90], xmm0
movups xmm0, xmmword [rsp + 0x1d0]
movups xmm1, xmmword [rsp + 0x1e0]
movups xmm2, xmmword [rsp + 0x1f0]
movups xmm3, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x80], xmm3
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1587
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1f6d
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x70
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1f6d
mov qword [rax + 0x58], 1
lea rcx, [0x1801db6e8]
mov qword [rax + 0x60], rcx
mov word [rax + 0x68], 0
jmp 0x1800e1d3a
mov rax, qword [rsp + 0x38]
mov qword [rax], 4
jmp 0x1800e1db3
test rsi, rsi
je 0x1800e1b2a
js case.default.0x1800df29c
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1601
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e186a
mov rcx, rax
mov qword [0x180219958], rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x1800e1b2f
jmp 0x1800e186a
cmp qword [rsp + 0x3f8], 0
je 0x1800e1805
mov r8, qword [rsp + 0x3f0]
jmp 0x1800e17f6
lea rcx, [rsp + 0x2a8]
call fcn.180080a40
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e166b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1fa6
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 8
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1fa6
mov rbx, rax
mov qword [rax], r15
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e16ad
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1f6d
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x70
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1f6d
mov rsi, rax
mov qword [rax + 0x58], rbx
lea rax, fcn.180054030
mov qword [rsi + 0x60], rax
mov word [rsi + 0x68], 1
mov r14, qword [r13 + 0x98]
mov rbx, qword [r13 + 0xa8]
test rbx, rbx
je 0x1800e1738
js case.default.0x1800df29c
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1716
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1729
mov rcx, rax
mov qword [0x180219958], rax
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15, rax
test rax, rax
jne 0x1800e173e
mov ecx, 1
mov rdx, rbx
call fcn.18017ea70
ud2
mov r15d, 1
mov rcx, r15
mov rdx, r14
mov r8, rbx
call fcn.180170ea0
mov rax, qword [rsp + 0x160]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
movzx eax, byte [rax + 0x10]
mov byte [rsp + 0x60], al
mov eax, dword [r13 + 0xb0]
mov ecx, dword [r13 + 0xc4]
movups xmm0, xmmword [r13 + 0x88]
movdqu xmm1, xmmword [r13 + 0xb4]
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r15
mov qword [rsi + 0x18], rbx
mov qword [rsi + 0x20], rbx
mov dword [rsi + 0x28], eax
movdqu xmmword [rsi + 0x2c], xmm1
mov dword [rsi + 0x3c], ecx
movdqa xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rsi + 0x40], xmm0
movzx eax, byte [rsp + 0x60]
mov byte [rsi + 0x50], al
mov eax, dword [rsp + 0x3e0]
mov ecx, dword [rsp + 0x3e3]
mov dword [rsi + 0x51], eax
mov dword [rsi + 0x54], ecx
mov rax, qword [rsp + 0x38]
mov qword [rax], 3
mov qword [rax + 8], rsi
jmp 0x1800e1db3
cmp rax, 1
jne 0x1800e1ac3
cmp qword [rsp + 0x1e8], 0
je 0x1800e1805
mov r8, qword [rsp + 0x1e0]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x750]
mov r8d, 0xa0
call fcn.180170ea0
mov r14, qword [r13 + 0x98]
mov rsi, qword [r13 + 0xa8]
test rsi, rsi
je 0x1800e1879
js case.default.0x1800df29c
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1857
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e186a
mov rcx, rax
mov qword [0x180219958], rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x1800e187e
mov ecx, 1
mov rdx, rsi
call fcn.18017ea70
ud2
mov ebx, 1
mov rcx, rbx
mov rdx, r14
mov r8, rsi
call fcn.180170ea0
movups xmm6, xmmword [r13 + 0xb4]
mov rax, qword [rsp + 0x160]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x3e0], xmm0
movzx eax, byte [rax + 0x10]
mov byte [rsp + 0x3f0], al
movzx eax, word [r13 + 0xb0]
mov word [rsp + 0x250], ax
movzx r12d, word [r13 + 0xb2]
mov eax, dword [r13 + 0xc4]
mov dword [rsp + 0x40], eax
mov rax, r13
mov r13d, dword [r13 + 0x88]
mov r14d, dword [rax + 0x8c]
mov ebp, dword [rax + 0x90]
mov r15d, dword [rax + 0x94]
mov rcx, qword [rax + 0x130]
mov qword [rsp + 0x28], rcx
mov qword [rax + 0x130], 0
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e192f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1fc7
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x30
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1fc7
mov rdi, rax
movups xmm0, xmmword [rsp + 0xc0]
movups xmm1, xmmword [rsp + 0xd0]
movups xmm2, xmmword [rsp + 0xe0]
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1991
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1fd8
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x58
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1fd8
mov dword [rax], r13d
mov dword [rax + 4], r14d
mov dword [rax + 8], ebp
mov dword [rax + 0xc], r15d
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rsi
movzx ecx, word [rsp + 0x250]
mov word [rax + 0x28], cx
mov word [rax + 0x2a], r12w
movups xmmword [rax + 0x2c], xmm6
mov ecx, dword [rsp + 0x40]
mov dword [rax + 0x3c], ecx
movzx ecx, byte [rsp + 0x3f0]
mov byte [rax + 0x50], cl
movaps xmm0, xmmword [rsp + 0x3e0]
movups xmmword [rax + 0x40], xmm0
mov ecx, dword [rsp + 0x640]
mov edx, dword [rsp + 0x643]
mov dword [rax + 0x54], edx
mov dword [rax + 0x51], ecx
movups xmm0, xmmword [rsp + 0xa0]
mov rdx, qword [rsp + 0x38]
movups xmmword [rdx + 0x50], xmm0
movups xmm0, xmmword [rsp + 0x90]
movups xmmword [rdx + 0x40], xmm0
movups xmm0, xmmword [rsp + 0x50]
movups xmm1, xmmword [rsp + 0x60]
movups xmm2, xmmword [rsp + 0x70]
movups xmm3, xmmword [rsp + 0x80]
movups xmmword [rdx + 0x30], xmm3
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rsp + 0xb0]
movups xmmword [rdx + 0x60], xmm0
mov qword [rdx + 0x70], 0
mov qword [rdx + 0x78], rdi
lea rcx, [0x1801dcdd0]
mov qword [rdx + 0x80], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rdx + 0x88], rcx
mov qword [rdx + 0x90], rax
jmp 0x1800e1db3
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x38]
mov qword [rcx], 3
mov qword [rcx + 8], rax
lea rcx, [rsp + 0x5a0]
call fcn.18007a830
jmp 0x1800e1d8c
lea rax, [0x1801db5f8]
movq xmm0, rax
punpcklqdq xmm6, xmm0
jmp 0x1800e1acc
movdqu xmm6, xmmword [rsp + 0x3e8]
mov r14, qword [r13 + 0x98]
mov rsi, qword [r13 + 0xa8]
test rsi, rsi
je 0x1800e1e04
js case.default.0x1800df29c
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1b0a
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e186a
mov rcx, rax
mov qword [0x180219958], rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
test rax, rax
jne 0x1800e1e09
jmp 0x1800e186a
ud2
mov ebx, 1
mov rcx, rbx
mov rdx, r15
mov r8, rsi
call fcn.180170ea0
movdqu xmm6, xmmword [rsp + 0x1fc]
movups xmm0, xmmword [rsp + 0x210]
movaps xmmword [rsp + 0x50], xmm0
movzx eax, byte [rsp + 0x220]
mov byte [rsp + 0x60], al
movzx eax, word [rsp + 0x1f8]
mov word [rsp + 0x40], ax
movzx r15d, word [rsp + 0x1fa]
mov eax, dword [rsp + 0x20c]
mov dword [rsp + 0x28], eax
mov r12d, dword [rsp + 0x1d0]
mov r13d, dword [rsp + 0x1d4]
mov ebp, dword [rsp + 0x1d8]
mov r14d, dword [rsp + 0x1dc]
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1bc4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1f6d
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x70
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1f6d
mov rdi, rax
mov qword [rax + 0x58], 1
lea rax, [0x1801db6e8]
mov qword [rdi + 0x60], rax
mov word [rdi + 0x68], 0
mov dword [rdi], r12d
mov dword [rdi + 4], r13d
mov dword [rdi + 8], ebp
mov dword [rdi + 0xc], r14d
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], rsi
mov qword [rdi + 0x20], rsi
movzx eax, word [rsp + 0x40]
mov word [rdi + 0x28], ax
mov word [rdi + 0x2a], r15w
movdqu xmmword [rdi + 0x2c], xmm6
mov eax, dword [rsp + 0x28]
mov dword [rdi + 0x3c], eax
movzx eax, byte [rsp + 0x60]
mov byte [rdi + 0x50], al
movaps xmm0, xmmword [rsp + 0x50]
movups xmmword [rdi + 0x40], xmm0
mov eax, dword [rsp + 0x3e0]
mov ecx, dword [rsp + 0x3e3]
mov dword [rdi + 0x54], ecx
mov dword [rdi + 0x51], eax
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0xa0], rax
movups xmm0, xmmword [rsp + 0x210]
movaps xmmword [rsp + 0x90], xmm0
movups xmm0, xmmword [rsp + 0x1d0]
movups xmm1, xmmword [rsp + 0x1e0]
movups xmm2, xmmword [rsp + 0x1f0]
movups xmm3, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x80], xmm3
movaps xmmword [rsp + 0x70], xmm2
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1ccc
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1fa6
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 8
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1fa6
mov rsi, rax
mov qword [rax], rdi
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1d0e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1f6d
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x70
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1f6d
mov qword [rax + 0x58], rsi
lea rcx, [0x1801db760]
mov qword [rax + 0x60], rcx
mov word [rax + 0x68], 2
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmm1, xmmword [rsp + 0x60]
movaps xmm2, xmmword [rsp + 0x70]
movaps xmm3, xmmword [rsp + 0x80]
movups xmmword [rax], xmm0
movdqu xmmword [rax + 0x10], xmm1
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x30], xmm3
movdqa xmm0, xmmword [rsp + 0x90]
movdqu xmmword [rax + 0x40], xmm0
mov rcx, qword [rsp + 0xa0]
mov qword [rax + 0x50], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rcx], 3
mov qword [rcx + 8], rax
lea rcx, [rsp + 0x750]
call fcn.18007a830
lea rcx, [rsp + 0x7b0]
call fcn.1800437e0
lea rcx, [rsp + 0x7c0]
call fcn.1800922e0
movaps xmm6, xmmword [rsp + 0x8d0]
movaps xmm7, xmmword [rsp + 0x8e0]
movaps xmm8, xmmword [rsp + 0x8f0]
movaps xmm9, xmmword [rsp + 0x900]
movaps xmm10, xmmword [rsp + 0x910]
movaps xmm11, xmmword [rsp + 0x920]
movaps xmm12, xmmword [rsp + 0x930]
add rsp, 0x948
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov ebx, 1
mov rcx, rbx
mov rdx, r14
mov r8, rsi
call fcn.180170ea0
movdqu xmm7, xmmword [r13 + 0xb4]
mov rax, qword [rsp + 0x160]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
movzx eax, byte [rax + 0x10]
mov byte [rsp + 0x60], al
movzx ebp, word [r13 + 0xb0]
movzx r14d, word [r13 + 0xb2]
mov eax, dword [r13 + 0xc4]
mov dword [rsp + 0x28], eax
mov r15d, dword [r13 + 0x88]
mov r12d, dword [r13 + 0x8c]
mov rax, r13
mov r13d, dword [r13 + 0x90]
mov edi, dword [rax + 0x94]
mov rcx, qword [0x180219958]
test rcx, rcx
jne 0x1800e1e96
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x1800e1f6d
mov rcx, rax
mov qword [0x180219958], rax
mov r8d, 0x70
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x1800e1f6d
movdqu xmmword [rax + 0x58], xmm6
mov word [rax + 0x68], 2
mov dword [rax], r15d
mov dword [rax + 4], r12d
mov dword [rax + 8], r13d
mov dword [rax + 0xc], edi
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rsi
mov word [rax + 0x28], bp
mov word [rax + 0x2a], r14w
movdqu xmmword [rax + 0x2c], xmm7
mov ecx, dword [rsp + 0x28]
mov dword [rax + 0x3c], ecx
movdqa xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rax + 0x40], xmm0
movzx ecx, byte [rsp + 0x60]
mov byte [rax + 0x50], cl
mov ecx, dword [rsp + 0x3e0]
mov edx, dword [rsp + 0x3e3]
mov dword [rax + 0x51], ecx
mov dword [rax + 0x54], edx
mov rcx, qword [rsp + 0x38]
mov qword [rcx], 3
mov qword [rcx + 8], rax
cmp qword [rsp + 0x1e8], 0
je 0x1800e1d8c
mov r8, qword [rsp + 0x1e0]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1800e1d8c
mov rcx, r15
mov rdx, rsi
xor r8d, r8d
mov r9, rbp
call fcn.18017ece0
ud2
lea rcx, [rsp + 0x640]
call fcn.180080a40
ud2
mov ecx, 8
mov edx, 0x70
call fcn.18017ea70
ud2
mov r9, rax
call fcn.18017ece0
ud2
mov rcx, rdx
mov rdx, r10
call fcn.18017ece0
ud2
mov ecx, 8
mov edx, 0x20
call fcn.18017ea70
ud2
mov ecx, 8
mov edx, 8
call fcn.18017ea70
ud2
mov rcx, r15
mov rdx, rsi
mov r9, rsi
call fcn.18017ece0
ud2
mov ecx, 8
mov edx, 0x30
call fcn.18017ea70
ud2
mov ecx, 8
mov edx, 0x58
call fcn.18017ea70
ud2
mov ecx, 1
mov rdx, qword [rsp + 0x158]
call fcn.18017ea70
ud2
mov rdx, rsi
xor r8d, r8d
call fcn.18017ece0
ud2