Function at 0x18009a440
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xda8
movaps xmmword [rsp + 0xd90], xmm13
movaps xmmword [rsp + 0xd80], xmm12
movdqa xmmword [rsp + 0xd70], xmm11
movdqa xmmword [rsp + 0xd60], xmm10
movaps xmmword [rsp + 0xd50], xmm9
movdqa xmmword [rsp + 0xd40], xmm8
movdqa xmmword [rsp + 0xd30], xmm7
movdqa xmmword [rsp + 0xd20], xmm6
mov rax, qword [rcx]
cmp rax, 5
je 0x1800a0165
cmp eax, 4
je 0x1800a0165
cmp eax, 3
je 0x1800a0165
mov rbx, rdx
mov r13, rcx
add rcx, 8
cmp rax, 2
mov rbp, r13
mov qword [rsp + 0x5b8], rcx
cmove rbp, rcx
cmp eax, 2
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x58], rdx
jne 0x18009ce1d
lea r15, [rbp + 0x90]
lea r12, [rbp + 8]
lea r14, [rsp + 0x5c8]
lea rax, [rbp + 0xa0]
mov qword [rsp + 0xb8], rax
movdqa xmm6, xmmword [0x180174b80]
pcmpeqd xmm7, xmm7
movdqa xmm8, xmmword [0x180174ea0]
xorps xmm9, xmm9
movdqa xmm10, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm11, xmmword [0x180174750]
lea rdi, [rsp + 0x5c0]
nop word cs:[rax + rax]
lea rcx, [rsp + 0x440]
mov rdx, r15
mov r8, rbx
call fcn.1800a0bf0
movzx esi, byte [rsp + 0x440]
cmp esi, 5
jne 0x18009f9c7
mov rax, qword [rbp]
mov qword [rbp], 2
cmp rax, 2
je 0x18009a5ee
mov qword [rsp + 0x5c0], rax
mov rax, qword [r12 + 0x60]
mov qword [r14 + 0x60], rax
movups xmm0, xmmword [r12 + 0x50]
movups xmmword [r14 + 0x50], xmm0
movups xmm0, xmmword [r12 + 0x40]
movups xmmword [r14 + 0x40], xmm0
movdqu xmm0, xmmword [r12]
movdqu xmm1, xmmword [r12 + 0x10]
movups xmm2, xmmword [r12 + 0x20]
movups xmm3, xmmword [r12 + 0x30]
movups xmmword [r14 + 0x30], xmm3
movups xmmword [r14 + 0x20], xmm2
movdqu xmmword [r14 + 0x10], xmm1
movdqu xmmword [r14], xmm0
mov rcx, rbp
mov rdx, rdi
mov r8, rbx
call fcn.1800a0e80
jmp 0x18009a550
mov rdx, qword [rbp + 0xb0]
mov r8, qword [rbx]
lea rcx, [rsp + 0x220]
call fcn.1800a9e10
mov rsi, qword [rsp + 0x320]
cmp rsi, 4
je 0x1800a01ee
cmp esi, 3
je 0x1800a02c9
mov qword [rsp + 0x40], r15
cmp esi, 2
je 0x1800a0165
mov r15, r13
mov r8d, 0x100
lea rdi, [rsp + 0xe0]
mov rcx, rdi
lea rdx, [rsp + 0x220]
call fcn.18015ab20
lea rax, [rsp + 0x238]
movups xmm0, xmmword [rax + 0xf0]
movaps xmmword [rsp + 0x440], xmm0
mov r8d, 0x100
lea r13, [rsp + 0x840]
mov rcx, r13
mov rdx, rdi
call fcn.18015ab20
movaps xmm0, xmmword [rsp + 0x440]
movaps xmmword [rsp + 0x590], xmm0
mov r8d, 0x100
lea rdi, [rsp + 0xa40]
mov rcx, rdi
mov rdx, r13
call fcn.18015ab20
mov qword [rsp + 0x398], rsi
movdqa xmm0, xmmword [rsp + 0x590]
lea rax, [rsp + 0x3a0]
movdqu xmmword [rax], xmm0
mov rax, qword [rsp + 0x3a0]
test rsi, rsi
je 0x18009ac23
test rax, rax
je 0x1800a0165
mov rax, qword [rsp + 0x3a8]
test rax, rax
je 0x1800a0165
mov r13, r15
add rax, 0xd0
mov r15, qword [rsp + 0x40]
mov rax, qword [rax]
test al, 4
jne 0x18009ac54
mov r8d, 0xe0
lea rcx, [rsp + 0x630]
mov rdx, rdi
call fcn.18015ab20
lea rax, [rsp + 0xb20]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x3c0], xmm1
movaps xmmword [rsp + 0x3b0], xmm0
mov r8d, 0xa
lea rdi, [rsp + 0xe0]
mov rcx, rdi
lea rdx, str.keep_aliveHTTP_1.1_100_Continue_r_n_r_nunexpected_EOF_during_chunk_size_lineInvalid_chunk_end_LFInvalid_chunk_body_CRInvalid_chunk_body_LF__Invalid_chunk_size_LFInvalid_chunk_size_linear_white_spaceinvalid_chunk_extension_contains_newlineInvalid_trailer_end_LF_
call fcn.180049310
cmp qword [rsp + 0xe0], 0
jne 0x1800a0165
mov qword [rsp + 0xa8], r12
mov qword [rsp + 0xd8], r13
lea rsi, [rsp + 0xe8]
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rsp + 0x450], xmm1
movaps xmmword [rsp + 0x440], xmm0
mov r8d, 0x10
mov rcx, rdi
lea rdx, str.proxy_connection
call fcn.180049310
cmp qword [rsp + 0xe0], 0
lea rcx, [rsp + 0x220]
jne 0x1800a0165
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
lea rax, [rsp + 0x238]
movups xmmword [rax + 0x18], xmm1
movups xmmword [rax + 8], xmm0
movaps xmm0, xmmword [rsp + 0x440]
movdqa xmm1, xmmword [rsp + 0x450]
movaps xmmword [rsp + 0x220], xmm0
movdqa xmmword [rsp + 0x230], xmm1
movups xmm0, xmmword [0x1801af760]
movups xmmword [rax + 0x38], xmm0
movups xmm0, xmmword [0x1801af750]
movups xmmword [rax + 0x28], xmm0
movups xmm0, xmmword [0x1801af698]
movups xmmword [rax + 0x58], xmm0
movups xmm0, xmmword [0x1801af688]
movups xmmword [rax + 0x48], xmm0
movups xmm0, xmmword [0x1801af780]
movups xmmword [rax + 0x78], xmm0
movdqu xmm0, xmmword [0x1801af770]
movdqu xmmword [rax + 0x68], xmm0
mov rdx, rcx
xor ecx, ecx
jmp 0x18009a874
mov rcx, qword [rsp + 0x48]
inc rcx
mov rax, rcx
shl rax, 5
lea rdx, [rsp + rax]
add rdx, 0x220
cmp rcx, 5
je 0x18009aa7c
mov qword [rsp + 0x48], rcx
mov rax, qword [rsp + 0x668]
test rax, rax
je 0x18009a850
lea rcx, [rsp + 0x630]
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0x30], rax
call fcn.180050360
mov r10, qword [rsp + 0x30]
mov r9, qword [rsp + 0x98]
mov r12d, eax
movzx r15d, ax
movzx ebx, word [rsp + 0x688]
and r15d, ebx
mov r14, qword [rsp + 0x648]
mov rdi, qword [rsp + 0x650]
mov r11, qword [rsp + 0x658]
xor ebp, ebp
mov qword [rsp + 0x90], r11
jmp 0x18009a906
movzx eax, byte [rax + 8]
cmp al, byte [r9 + 8]
je 0x18009a9bb
nop word cs:[rax + rax]
inc rbp
inc r15
mov rax, r15
nop dword [rax]
mov r15, rax
mov eax, 0
cmp r15, rdi
jae 0x18009a910
movzx r13d, word [r14 + r15*4]
cmp r13, 0xffff
je 0x18009a850
movzx eax, word [r14 + r15*4 + 2]
mov ecx, eax
and ecx, ebx
mov edx, r15d
sub edx, ecx
and edx, ebx
cmp rbp, rdx
ja 0x18009a850
cmp ax, r12w
jne 0x18009a900
cmp r10, r13
jbe 0x1800a0165
imul rsi, r13, 0x68
mov rcx, qword [r11 + rsi + 0x40]
test rcx, rcx
setne al
cmp qword [r9], 0
sete dl
cmp al, dl
je 0x18009a900
lea rax, [r11 + rsi]
add rax, 0x40
test rcx, rcx
je 0x18009a8e3
mov r8, qword [rax + 0x10]
cmp r8, qword [r9 + 0x10]
jne 0x18009a900
mov rdx, qword [r9 + 8]
mov rcx, qword [rax + 8]
call fcn.18015b570
mov r11, qword [rsp + 0x90]
mov r10, qword [rsp + 0x30]
mov r9, qword [rsp + 0x98]
test eax, eax
jne 0x18009a900
cmp qword [r11 + rsi], 0
lea rdi, [rsp + 0x630]
je 0x18009a9d9
add r11, rsi
mov rdx, qword [r11 + 8]
mov rcx, rdi
call fcn.18006eb00
lea rcx, [rsp + 0xe0]
mov rdx, rdi
mov r8, r15
mov r9, r13
call fcn.1800512e0
lea rcx, [rsp + 0xf8]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x460], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x450], xmm1
movdqa xmmword [rsp + 0x440], xmm0
mov rax, qword [rsp + 0x120]
test rax, rax
je 0x18009aa46
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0x130]
lea rcx, [rsp + 0x138]
call qword [rax + 0x10]
cmp byte [rsp + 0x460], 2
je 0x18009a850
mov rax, qword [rsp + 0x440]
mov rdx, qword [rsp + 0x448]
mov r8, qword [rsp + 0x450]
lea rcx, [rsp + 0x458]
call qword [rax + 0x10]
jmp 0x18009a850
movups xmm12, xmmword [0x1801af7a0]
movaps xmmword [rsp + 0xf0], xmm12
movups xmm13, xmmword [0x1801af790]
movaps xmmword [rsp + 0xe0], xmm13
mov rax, qword [rsp + 0x668]
test rax, rax
je 0x18009ad21
lea rcx, [rsp + 0x630]
lea rdx, [rsp + 0xe0]
mov qword [rsp + 0x98], rax
call fcn.180050360
mov r10, qword [rsp + 0x98]
mov r12d, eax
movzx r13d, ax
movzx r14d, word [rsp + 0x688]
and r13d, r14d
mov rbp, qword [rsp + 0x648]
mov r15, qword [rsp + 0x650]
mov rsi, qword [rsp + 0x658]
mov r9, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
movzx eax, byte [rsp + 0xe8]
mov byte [rsp + 0x30], al
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x48], rax
xor edi, edi
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x88], rdx
jmp 0x18009ab56
movzx ecx, byte [rsp + 0x30]
cmp byte [rax + 8], cl
je 0x18009ac15
nop word [rax + rax]
inc rdi
inc r13
mov rax, r13
mov rbx, qword [rsp + 0x58]
nop
mov r13, rax
mov eax, 0
cmp r13, r15
jae 0x18009ab60
movzx eax, word [rbp + r13*4]
cmp rax, 0xffff
je 0x18009ac76
movzx ecx, word [rbp + r13*4 + 2]
mov r11d, ecx
and r11d, r14d
mov r8d, r13d
sub r8d, r11d
and r8d, r14d
cmp rdi, r8
ja 0x18009ac76
cmp cx, r12w
jne 0x18009ab50
cmp r10, rax
jbe 0x1800a0165
test r9, r9
sete r8b
imul rbx, rax, 0x68
mov rcx, qword [rsi + rbx + 0x40]
test rcx, rcx
setne al
cmp al, r8b
je 0x18009ab50
lea rax, [rsi + rbx]
add rax, 0x40
test rcx, rcx
je 0x18009ab3c
mov rcx, qword [rsp + 0x48]
cmp qword [rax + 0x10], rcx
jne 0x18009ab50
mov rcx, qword [rax + 8]
mov r8, qword [rsp + 0x48]
call fcn.18015b570
mov rdx, qword [rsp + 0x88]
mov r10, qword [rsp + 0x98]
mov r9, qword [rsp + 0x90]
test eax, eax
jne 0x18009ab50
add rsi, rbx
add rsi, 0x18
mov rbx, qword [rsp + 0x58]
jmp 0x18009ac78
test rax, rax
je 0x1800a0165
mov rax, qword [rsp + 0x3a8]
test rax, rax
je 0x1800a0165
mov r13, r15
add rax, 0x30
mov r15, qword [rsp + 0x40]
mov rax, qword [rax]
test al, 4
je 0x18009a709
lea rcx, [rsp + 0x398]
call fcn.1800810e0
mov rcx, rdi
call fcn.180078660
lea rcx, [rsp + 0xb20]
jmp 0x18009cd80
xor esi, esi
test r9, r9
lea rdi, [rsp + 0xe0]
lea r14, [rsp + 0x710]
lea r15, [0x1801c1010]
je 0x18009aca5
lea rcx, [rsp + 0xf8]
mov r8, qword [rsp + 0x48]
call qword [r9 + 0x10]
test rsi, rsi
je 0x18009ad3d
cmp qword [rsi + 0x10], 8
jne 0x18009acc8
mov rax, qword [rsi + 8]
movabs rcx, 0x7372656c69617274
cmp qword [rax], rcx
je 0x18009ad3d
movaps xmmword [rsp + 0x450], xmm12
movaps xmmword [rsp + 0x440], xmm13
mov rcx, rdi
lea rdx, [rsp + 0x630]
lea r8, [rsp + 0x440]
call fcn.180051530
cmp byte [rsp + 0x100], 2
je 0x18009ad3d
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call qword [rax + 0x10]
jmp 0x18009ad3d
mov rbx, qword [rsp + 0x58]
lea rdi, [rsp + 0xe0]
lea r14, [rsp + 0x710]
lea r15, [0x1801c1010]
movups xmm0, xmmword [0x1801c1120]
movaps xmmword [rsp + 0xf0], xmm0
movdqu xmm0, xmmword [0x1801c1110]
movdqa xmmword [rsp + 0xe0], xmm0
lea rcx, [rsp + 0x3e0]
lea rdx, [rsp + 0x630]
mov r8, rdi
call fcn.180051530
cmp byte [rsp + 0x400], 2
je 0x18009b598
movdqu xmm0, xmmword [rsp + 0x3e0]
movdqu xmm1, xmmword [rsp + 0x3f0]
movdqa xmmword [rsp + 0x560], xmm0
movdqa xmmword [rsp + 0x570], xmm1
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x580], rax
mov rcx, qword [rsp + 0x568]
mov rax, qword [rsp + 0x570]
xor edx, edx
nop dword [rax]
cmp rax, rdx
je 0x18009adf2
movzx r8d, byte [rcx + rdx]
inc rdx
cmp r8b, 9
je 0x18009add0
add r8b, 0xe0
cmp r8b, 0x5f
jb 0x18009add0
jmp 0x1800a0165
mov qword [rsp + 0x440], 0
mov qword [rsp + 0x448], rax
mov qword [rsp + 0x450], rcx
mov qword [rsp + 0x458], rax
mov qword [rsp + 0x460], 0
mov qword [rsp + 0x468], rax
mov qword [rsp + 0x470], 1
movabs rax, 0x2c0000002c
mov qword [rsp + 0x478], rax
mov word [rsp + 0x480], 1
jmp 0x18009ae7c
mov rbx, qword [rsp + 0x58]
lea rdi, [rsp + 0xe0]
lea r14, [rsp + 0x710]
lea r15, [0x1801c1010]
lea rcx, [rsp + 0x440]
call fcn.18005a170
test rax, rax
je 0x18009b575
mov rcx, rax
call fcn.180070570
mov r8, rdx
mov qword [rsp + 0x20], r15
mov rcx, rdi
mov rdx, rax
mov r9, r14
call fcn.180046470
movzx r9d, byte [rsp + 0xf0]
cmp r9d, 3
je 0x18009ae7c
mov r11, qword [rsp + 0x668]
test r11, r11
je 0x18009ae60
mov rdx, qword [rsp + 0xe0]
mov rbp, qword [rsp + 0xe8]
cmp dword [rsp + 0x630], 2
mov qword [rsp + 0x90], r11
mov qword [rsp + 0x30], rbp
jne 0x18009afb5
mov r12, rdx
movdqu xmm0, xmmword [rsp + 0x638]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm10
movdqa xmmword [rsp + 0xe0], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm11
movdqa xmmword [rsp + 0xf0], xmm1
movdqa xmmword [rsp + 0x100], xmm0
lea rax, [rsp + 0x110]
movaps xmmword [rax], xmm9
mov qword [rax + 0x10], 0
xor eax, eax
cmp r9b, 2
setne al
mov qword [rsp + 0x430], rax
mov r8d, 8
lea rdi, [rsp + 0xe0]
mov rcx, rdi
lea r14, [rsp + 0x430]
mov rdx, r14
mov r15d, r9d
call fcn.180039370
test r15d, r15d
lea rbx, [0x1801c1010]
je 0x18009b0c3
mov eax, r15d
cmp r15d, 2
jne 0x18009b0fb
movzx eax, r12b
mov qword [rsp + 0x430], rax
mov r8d, 8
mov rcx, rdi
mov rdx, r14
jmp 0x18009b104
xor r13d, r13d
cmp r9b, 2
setne r13b
movabs rax, 0xcbf29ce484222325
xor r13, rax
movabs rcx, 0x1efac7090aef4a21
imul r13, rcx
cmp r9b, 2
jne 0x18009aff6
movzx eax, dl
xor rax, r13
imul rax, rcx
mov r10b, 2
mov r13, rax
jmp 0x18009b217
lea rax, [rdx + rbp]
test r9b, r9b
je 0x18009b47e
mov r10b, 1
test rbp, rbp
movabs r9, 0x100000001b3
je 0x18009b4cc
mov r8, rbp
and r8, 7
je 0x18009b4d8
mov rcx, rdx
nop dword [rax]
movzx r10d, byte [rcx]
inc rcx
xor r10, r13
imul r10, r9
mov r13, r10
dec r8
jne 0x18009b030
cmp rbp, 8
jb 0x18009b0b8
nop dword [rax]
movzx r8d, byte [rcx]
xor r8, r10
imul r8, r9
movzx r10d, byte [rcx + 1]
xor r10, r8
imul r10, r9
movzx r8d, byte [rcx + 2]
xor r8, r10
imul r8, r9
movzx r10d, byte [rcx + 3]
xor r10, r8
imul r10, r9
movzx r8d, byte [rcx + 4]
xor r8, r10
imul r8, r9
movzx r10d, byte [rcx + 5]
xor r10, r8
imul r10, r9
movzx r8d, byte [rcx + 6]
xor r8, r10
imul r8, r9
movzx r10d, byte [rcx + 7]
add rcx, 8
xor r10, r8
imul r10, r9
cmp rcx, rax
jne 0x18009b050
mov r13, r10
mov r10b, 1
jmp 0x18009b217
test rbp, rbp
je 0x18009b109
xor esi, esi
nop word [rax + rax]
movzx eax, byte [r12 + rsi]
movzx eax, byte [rax + rbx]
mov byte [rsp + 0x430], al
mov r8d, 1
mov rcx, rdi
mov rdx, r14
call fcn.180039370
inc rsi
cmp rbp, rsi
jne 0x18009b0d0
jmp 0x18009b109
mov rcx, rdi
mov rdx, r12
mov r8, rbp
call fcn.180039370
mov rax, qword [rsp + 0xf0]
mov r9, qword [rsp + 0x110]
shl r9, 0x38
or r9, qword [rsp + 0x118]
mov rcx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0xe0]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rsp + 0xe8]
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rcx, r8
xor rax, rdx
rol rdx, 0x20
xor r8, r9
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
xor rdx, 0xff
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
rol r8, 0x20
add rdx, rcx
rol rcx, 0x10
xor rcx, rdx
add r8, rcx
rol rcx, 0x15
add rdx, rax
rol rax, 0x11
xor rax, rdx
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
xor rax, r8
add rdx, rcx
shl rcx, 0x10
xor rcx, rdx
shr rcx, 0x2b
add rdx, rax
shr rax, 0x2f
xor rax, rcx
mov r13, rdx
shr r13, 0x20
xor r13, rdx
xor r13, rax
mov r11, qword [rsp + 0x90]
mov rdx, r12
mov r10d, r15d
and r13d, 0x7fff
movzx edi, word [rsp + 0x688]
mov esi, r13d
and esi, edi
mov rbp, qword [rsp + 0x648]
mov r14, qword [rsp + 0x650]
mov r9, qword [rsp + 0x658]
mov rax, qword [rsp + 0x30]
neg rax
mov qword [rsp + 0x98], rax
xor ebx, ebx
mov qword [rsp + 0x48], r9
jmp 0x18009b266
inc rbx
inc rsi
mov rax, rsi
nop dword [rax]
mov rsi, rax
mov eax, 0
cmp rsi, r14
jae 0x18009b270
movzx r12d, word [rbp + rsi*4]
cmp r12, 0xffff
je 0x18009ae60
movzx eax, word [rbp + rsi*4 + 2]
mov ecx, eax
and ecx, edi
mov r8d, esi
sub r8d, ecx
and r8d, edi
cmp rbx, r8
ja 0x18009ae60
cmp ax, r13w
jne 0x18009b260
cmp r11, r12
jbe 0x1800a0165
imul r15, r12, 0x68
lea rax, [r9 + r15]
add rax, 0x40
cmp qword [r9 + r15 + 0x40], 0
je 0x18009b32d
cmp r10b, 2
je 0x18009b260
test r10b, r10b
je 0x18009b342
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
jne 0x18009b260
mov rcx, qword [rax + 8]
mov r8, qword [rsp + 0x30]
mov qword [rsp + 0x88], rdx
mov dword [rsp + 0xb0], r10d
call fcn.18015b570
mov r9, qword [rsp + 0x48]
mov r10d, dword [rsp + 0xb0]
mov rdx, qword [rsp + 0x88]
mov r11, qword [rsp + 0x90]
test eax, eax
jne 0x18009b260
jmp 0x18009b3a6
cmp r10b, 2
jne 0x18009b260
cmp byte [rax + 8], dl
jne 0x18009b260
jmp 0x18009b3a6
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
jne 0x18009b260
mov rax, qword [rax + 8]
mov rcx, 0xffffffffffffffff
nop dword [rax]
mov r8, qword [rsp + 0x98]
add r8, rcx
cmp r8, 0xffffffffffffffff
mov r9, qword [rsp + 0x48]
je 0x18009b3a6
movzx r9d, byte [rdx + rcx + 1]
lea r8, [0x1801c1010]
movzx r8d, byte [r9 + r8]
lea r9, [rcx + 1]
cmp r8b, byte [rax + rcx + 1]
mov rcx, r9
je 0x18009b360
cmp r9, qword [rsp + 0x30]
mov r9, qword [rsp + 0x48]
jb 0x18009b260
cmp qword [r9 + r15], 0
lea rbx, [rsp + 0x630]
je 0x18009b3c4
add r9, r15
mov rdx, qword [r9 + 8]
mov rcx, rbx
call fcn.18006eb00
lea rdi, [rsp + 0xe0]
mov rcx, rdi
mov rdx, rbx
mov r8, rsi
mov r9, r12
call fcn.1800512e0
lea rcx, [rsp + 0xf8]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x960], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x950], xmm1
movdqa xmmword [rsp + 0x940], xmm0
mov rax, qword [rsp + 0x120]
test rax, rax
mov rbx, qword [rsp + 0x58]
lea r14, [rsp + 0x710]
lea r15, [0x1801c1010]
je 0x18009b448
mov rdx, qword [rsp + 0x128]
mov r8, qword [rsp + 0x130]
lea rcx, [rsp + 0x138]
call qword [rax + 0x10]
cmp byte [rsp + 0x960], 2
je 0x18009ae7c
mov rax, qword [rsp + 0x940]
mov rdx, qword [rsp + 0x948]
mov r8, qword [rsp + 0x950]
lea rcx, [rsp + 0x958]
call qword [rax + 0x10]
jmp 0x18009ae7c
mov rsi, rdx
test rbp, rbp
movabs r9, 0x100000001b3
lea r10, [0x1801c1010]
je 0x18009b4ed
mov r8, rbp
mov rcx, rsi
and r8, 3
je 0x18009b4ff
nop word cs:[rax + rax]
movzx edx, byte [rcx]
movzx edx, byte [rdx + r10]
xor rdx, r13
imul rdx, r9
inc rcx
mov r13, rdx
dec r8
jne 0x18009b4b0
jmp 0x18009b502
xor eax, eax
mov qword [rsp + 0x30], rax
jmp 0x18009b217
mov r10, r13
mov rcx, rdx
cmp rbp, 8
jae 0x18009b050
jmp 0x18009b0b8
xor eax, eax
mov qword [rsp + 0x30], rax
xor r10d, r10d
mov rdx, rsi
jmp 0x18009b217
mov rdx, r13
mov r13, rdx
cmp rbp, 4
jae 0x18009b520
xor r10d, r10d
mov r13, rdx
mov rdx, rsi
jmp 0x18009b217
movzx edx, byte [rcx]
movzx edx, byte [rdx + r10]
xor rdx, r13
imul rdx, r9
movzx r8d, byte [rcx + 1]
movzx r8d, byte [r8 + r10]
xor r8, rdx
imul r8, r9
movzx edx, byte [rcx + 2]
movzx edx, byte [rdx + r10]
xor rdx, r8
imul rdx, r9
movzx r8d, byte [rcx + 3]
movzx r13d, byte [r8 + r10]
xor r13, rdx
imul r13, r9
add rcx, 4
cmp rcx, rax
jne 0x18009b520
mov rdx, rsi
xor r10d, r10d
jmp 0x18009b217
mov rax, qword [rsp + 0x560]
mov rdx, qword [rsp + 0x568]
mov r8, qword [rsp + 0x570]
lea rcx, [rsp + 0x578]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x220]
test rax, rax
je 0x18009b5c0
mov rdx, qword [rsp + 0x228]
mov r8, qword [rsp + 0x230]
lea rcx, [rsp + 0x238]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x240]
test rax, rax
mov r13, qword [rsp + 0xd8]
mov rbp, qword [rsp + 0x70]
mov r15, qword [rsp + 0x40]
mov r12, qword [rsp + 0xa8]
lea r14, [rsp + 0x5c8]
je 0x18009b60a
mov rdx, qword [rsp + 0x248]
mov r8, qword [rsp + 0x250]
lea rcx, [rsp + 0x258]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x260]
test rax, rax
lea rdi, [rsp + 0x3b0]
je 0x18009b63a
mov rdx, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
lea rcx, [rsp + 0x278]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x280]
test rax, rax
je 0x18009b662
mov rdx, qword [rsp + 0x288]
mov r8, qword [rsp + 0x290]
lea rcx, [rsp + 0x298]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x2a0]
test rax, rax
je 0x18009b68a
mov rdx, qword [rsp + 0x2a8]
mov r8, qword [rsp + 0x2b0]
lea rcx, [rsp + 0x2b8]
call qword [rax + 0x10]
cmp qword [rsp + 0x3b0], 0
je 0x18009b6ac
mov ecx, 1
mov rdx, qword [rsp + 0x3c0]
mov rax, rdx
test rcx, rcx
jne 0x18009b6e4
jmp 0x18009b6ff
mov rdx, qword [rsp + 0x3b8]
mov rax, qword [rsp + 0x3c0]
lea rcx, [rsp + 0x220]
call qword [rax + 0x30]
mov rax, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x220]
mov rdx, qword [rsp + 0x228]
test rcx, rcx
je 0x18009b6ff
cmp rax, rdx
jne 0x18009b6ff
test rdx, rdx
je 0x18009b8d6
lea rcx, [rsp + 0x630]
call fcn.180050630
movzx ecx, byte [rsp + 0x6e8]
cmp qword [rsp + 0x3b0], 0
je 0x18009b731
cmp qword [rsp + 0x3c0], 0
sete sil
mov qword [rsp + 0x98], rcx
cmp cl, 7
je 0x18009b75d
jmp 0x18009b7f3
mov rsi, rcx
mov rcx, qword [rsp + 0x3b8]
mov rax, qword [rsp + 0x3c0]
call qword [rax + 0x28]
mov rcx, rsi
mov esi, eax
mov qword [rsp + 0x98], rcx
cmp cl, 7
jne 0x18009b7f3
lea rcx, [rsp + 0x630]
call fcn.18004fef0
test rax, rax
je 0x18009b7f3
test rdx, rdx
je 0x18009b7f3
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0xf0], rax
movdqu xmm0, xmmword [rsp + 0x398]
movdqa xmmword [rsp + 0xe0], xmm0
mov byte [rsp + 0x220], 2
mov dword [rsp + 0x224], 2
lea rsi, [rsp + 0x220]
mov rcx, rsi
call fcn.18004d9d0
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 3
lea rcx, [rsp + 0xe0]
mov rdx, rsi
call fcn.180083460
lea rcx, [rsp + 0x630]
call fcn.180078660
jmp 0x18009cd7d
mov byte [rsp + 0x3d8], sil
mov rax, qword [rsp + 0x700]
test rax, rax
movabs r13, 0x825e724bbd94b981
movabs r15, 0xefb779ef64422b39
movabs r12, 0xc9604db567af508f
je 0x18009bafc
mov rcx, qword [rax]
mov r9, qword [rax + 8]
lea r10, [rcx - 0x20]
xor r11d, r11d
mov rsi, r12
and rsi, r9
movdqu xmm0, xmmword [rcx + rsi]
movdqa xmm1, xmm0
pcmpeqb xmm1, xmm8
pmovmskb edi, xmm1
test di, di
je 0x18009b88a
lea ebx, [rdi - 1]
and ebx, edi
tzcnt r8d, edi
add r8, rsi
and r8, r9
shl r8, 5
mov rdx, r10
sub rdx, r8
mov rdi, qword [rdx + 8]
xor rdi, r15
mov r14, qword [rdx]
xor r14, r12
or r14, rdi
mov edi, ebx
mov rbx, qword [rsp + 0x58]
jne 0x18009b850
jmp 0x18009b8a7
pcmpeqb xmm0, xmm7
pmovmskb edx, xmm0
test edx, edx
jne 0x18009bafc
add rsi, r11
add rsi, 0x10
add r11, 0x10
jmp 0x18009b83b
sar r8, 5
lea r10, [r8 - 0x10]
and r10, r9
movdqu xmm0, xmmword [rcx + r10]
pcmpeqb xmm0, xmm7
psllw xmm0, 7
pmovmskb r9d, xmm0
test r9d, r9d
je 0x18009b901
bsr r9w, r9w
xor r9d, 0xf
jmp 0x18009b906
movzx ecx, byte [rsp + 0x6e8]
cmp rcx, 7
ja 0x18009c4e2
mov eax, 0xb2
bt rax, rcx
mov edx, 0
jb 0x18009b707
jmp 0x18009b6f2
mov r9w, 0x10
movdqu xmm0, xmmword [rcx + r8]
pcmpeqb xmm0, xmm7
pmovmskb r11d, xmm0
or r11d, 0x10000
tzcnt r11d, r11d
add r9d, r11d
mov r11b, 0x80
cmp r9w, 0xf
ja 0x18009b935
inc qword [rax + 0x10]
mov r11b, 0xff
mov byte [rcx + r8], r11b
mov byte [r10 + rcx + 0x10], r11b
dec qword [rax + 0x18]
mov rsi, qword [rdx + 0x10]
test rsi, rsi
je 0x18009bafc
mov rdi, qword [rdx + 0x18]
mov rcx, rsi
call qword [rdi + 0x18]
xor rdx, r15
xor rax, r12
or rax, rdx
jne 0x18009bad3
mov rdi, qword [rsi]
mov rax, qword [rsi + 0x18]
mov qword [rsp + 0xf0], rax
movdqu xmm0, xmmword [rsi + 8]
movdqa xmmword [rsp + 0xe0], xmm0
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
test rdi, rdi
je 0x18009bafc
mov rsi, qword [rsp + 0x700]
test rsi, rsi
jne 0x18009b9ee
movzx eax, byte [0x1801fd9d8]
mov ecx, 0x20
mov edx, 8
call fcn.18001ed20
test rax, rax
je 0x1800a0553
mov rsi, rax
lea rax, [0x1801e7400]
mov qword [rsi], rax
movups xmmword [rsi + 8], xmm9
mov qword [rsi + 0x18], 0
mov qword [rsp + 0x700], rsi
movzx eax, byte [0x1801fd9d8]
mov ecx, 0x20
mov edx, 8
call fcn.18001ed20
test rax, rax
je 0x1800a0553
mov qword [rax], rdi
movdqa xmm0, xmmword [rsp + 0xe0]
movdqu xmmword [rax + 8], xmm0
mov rcx, qword [rsp + 0xf0]
mov qword [rax + 0x18], rcx
lea rcx, [0x1801c0ff0]
mov qword [rsp + 0x20], rcx
mov rcx, rsi
movabs rdx, 0xbc76be4613c77b7c
mov r8, r13
mov r9, rax
call fcn.18006dcd0
test rax, rax
je 0x18009bafc
mov rsi, rax
mov r15, rdx
mov rcx, rax
call qword [rdx + 0x18]
xor rdx, r13
movabs rcx, 0xbc76be4613c77b7c
xor rax, rcx
or rax, rdx
jne 0x18009c28f
movdqu xmm0, xmmword [rsi]
movdqu xmm1, xmmword [rsi + 0x10]
movdqa xmmword [rsp + 0x230], xmm1
movdqa xmmword [rsp + 0x220], xmm0
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x220]
test rax, rax
je 0x18009bafc
mov rdx, qword [rsp + 0x228]
mov r8, qword [rsp + 0x230]
lea rcx, [rsp + 0x238]
call qword [rax + 0x10]
jmp 0x18009bafc
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x18009bafc
cmp qword [rdi + 0x10], 0x11
jb 0x18009baea
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
cmp byte [rsp + 0x98], 7
setne byte [rsp + 0x3f]
mov r8d, 0xe0
lea rcx, [rsp + 0x940]
lea rdx, [rsp + 0x630]
call fcn.18015ab20
mov rax, qword [rsp + 0xb8]
mov r14, qword [rax]
test r14, r14
cmove rax, r14
mov r12, qword [rsp + 0xa10]
test r12, r12
mov qword [rsp + 0xc0], rax
je 0x18009bc0a
mov rax, qword [r12]
mov r8, qword [r12 + 8]
lea r9, [rax - 0x20]
xor r10d, r10d
movabs r11, 0xbc76be4613c77b7c
and r11, r8
movdqu xmm0, xmmword [rax + r11]
movdqa xmm1, xmm0
pcmpeqb xmm1, xmm6
pmovmskb esi, xmm1
nop
test si, si
je 0x18009bbbe
lea edi, [rsi - 1]
and edi, esi
tzcnt edx, esi
add rdx, r11
and rdx, r8
shl rdx, 5
mov rcx, r9
sub rcx, rdx
mov rsi, qword [rcx + 8]
xor rsi, r13
mov rbx, qword [rcx]
movabs r15, 0xbc76be4613c77b7c
xor rbx, r15
or rbx, rsi
mov esi, edi
jne 0x18009bb80
jmp 0x18009bbdb
pcmpeqb xmm0, xmm7
pmovmskb ecx, xmm0
test ecx, ecx
jne 0x18009bcdd
add r11, r10
add r11, 0x10
add r10, 0x10
jmp 0x18009bb69
sar rdx, 5
lea r9, [rdx - 0x10]
and r9, r8
movdqu xmm0, xmmword [rax + r9]
pcmpeqb xmm0, xmm7
psllw xmm0, 7
pmovmskb r8d, xmm0
test r8d, r8d
je 0x18009bc1b
bsr r8w, r8w
xor r8d, 0xf
jmp 0x18009bc20
mov qword [rsp + 0x3e0], 0
jmp 0x18009bde8
mov r8w, 0x10
movdqu xmm0, xmmword [rax + rdx]
pcmpeqb xmm0, xmm7
pmovmskb r10d, xmm0
or r10d, 0x10000
tzcnt r10d, r10d
add r8d, r10d
mov r10b, 0x80
cmp r8w, 0xf
ja 0x18009bc4f
inc qword [r12 + 0x10]
mov r10b, 0xff
mov byte [rax + rdx], r10b
mov byte [r9 + rax + 0x10], r10b
dec qword [r12 + 0x18]
mov rsi, qword [rcx + 0x10]
test rsi, rsi
je 0x18009bcdd
mov rdi, qword [rcx + 0x18]
mov rcx, rsi
call qword [rdi + 0x18]
xor rdx, r13
movabs rcx, 0xbc76be4613c77b7c
xor rax, rcx
or rax, rdx
jne 0x18009bcb4
movdqu xmm0, xmmword [rsi]
movdqu xmm1, xmmword [rsi + 0x10]
movdqa xmmword [rsp + 0x3f0], xmm1
movdqa xmmword [rsp + 0x3e0], xmm0
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x18009bce9
mov rcx, rsi
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x18009bcdd
cmp qword [rdi + 0x10], 0x11
jb 0x18009bccb
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0x3e0], 0
mov rdi, qword [r12 + 0x18]
test rdi, rdi
je 0x18009bda2
mov rbx, qword [r12]
movdqa xmm0, xmmword [rbx]
pmovmskb eax, xmm0
not eax
lea r13, [rbx + 0x10]
jmp 0x18009bd2e
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov eax, ebp
test rdi, rdi
mov rbp, qword [rsp + 0x70]
je 0x18009bda2
test ax, ax
je 0x18009bd40
lea ebp, [rax - 1]
and ebp, eax
jmp 0x18009bd68
movdqa xmm0, xmmword [r13]
pmovmskb eax, xmm0
add rbx, 0xfffffffffffffe00
add r13, 0x10
cmp ax, 0xffff
je 0x18009bd40
mov ecx, 0xfffffffe
sub ecx, eax
not eax
mov ebp, eax
and ebp, ecx
dec rdi
tzcnt eax, eax
shl rax, 5
mov rcx, rbx
sub rcx, rax
mov rsi, qword [rcx - 0x10]
mov r15, qword [rcx - 8]
mov rcx, rsi
call qword [r15]
cmp qword [r15 + 8], 0
je 0x18009bd22
cmp qword [r15 + 0x10], 0x11
jb 0x18009bd10
mov rsi, qword [rsi - 8]
jmp 0x18009bd10
mov rsi, qword [r12 + 8]
test rsi, rsi
je 0x18009bdbb
mov rcx, qword [r12]
lea r8, [rsi + 0x11]
mov dl, 0xff
call fcn.18015b1d0
mov qword [r12 + 0x18], 0
lea rax, [rsi + 1]
mov rcx, rax
shr rcx, 3
and rax, 0xfffffffffffffff8
sub rax, rcx
cmp rsi, 8
cmovb rax, rsi
mov qword [r12 + 0x10], rax
mov rbx, qword [rsp + 0x58]
movabs rsi, 0x8000000000000001
mov rdi, qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
mov r15, qword [rsp + 0x40]
mov r13, qword [r15]
lea rcx, [r13 + 0x10]
mov qword [rsp + 0x90], rcx
call rdi
mov rax, qword [0x1801fd998]
lea rcx, [rsi - 2]
mov qword [rsp + 0x48], rcx
test rax, rcx
mov r12, qword [rsp + 0xa8]
jne 0x18009c0c3
mov dword [rsp + 0x88], 0
movzx eax, byte [r13 + 0x18]
test al, al
jne 0x1800a0165
mov rax, qword [rbp + 0x98]
mov qword [rsp + 0x30], rax
lea rsi, [rax + 0x10]
mov rcx, rsi
call rdi
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009c0e3
mov dword [rsp + 0xb0], 0
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x18]
test al, al
jne 0x1800a0165
lea rdx, [r13 + 0x20]
lea rcx, [rsp + 0x220]
call fcn.180040340
movzx edi, byte [rsp + 0x220]
cmp dil, 3
jne 0x18009bf35
mov r12, qword [r13 + 0xc0]
test r12b, 1
jne 0x18009bf9a
test r14, r14
lea r14, [rsp + 0x5c8]
je 0x18009bfce
mov rdx, qword [rsp + 0xc0]
mov ecx, dword [rdx + 8]
cmp qword [r13 + 0x1c8], rcx
jbe 0x1800a0165
mov rax, qword [r13 + 0x1b8]
test rax, rax
je 0x1800a0165
imul rcx, rcx, 0x130
cmp dword [rax + rcx], 2
je 0x1800a0165
mov edx, dword [rdx + 0xc]
add rax, rcx
cmp dword [rax + 0x114], edx
jne 0x1800a0165
mov dil, 3
cmp byte [rax + 0x124], 0
je 0x18009bfce
mov byte [rsp + 0x68], 3
jmp 0x18009bfe4
movzx eax, byte [rsp + 0x221]
mov byte [rsp + 0x68], al
mov eax, dword [rsp + 0x224]
mov dword [rsp + 0x210], eax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x50], rax
lea r14, [rsp + 0x5c8]
cmp byte [rsp + 0xb0], 0
jne 0x18009c00d
jmp 0x18009bffb
shr r12, 8
or r12b, 5
mov dil, 3
mov eax, r12d
mov byte [rsp + 0x68], r12b
mov r15, qword [rsp + 0x40]
mov r12, qword [rsp + 0xa8]
lea r14, [rsp + 0x5c8]
cmp byte [rsp + 0xb0], 0
jne 0x18009c00d
jmp 0x18009bffb
cmp byte [r13 + 0x1b0], 0
je 0x18009c107
mov dil, 3
mov byte [rsp + 0x68], 1
mov r15, qword [rsp + 0x40]
mov r12, qword [rsp + 0xa8]
cmp byte [rsp + 0xb0], 0
jne 0x18009c00d
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009c4e9
mov rcx, rsi
mov rsi, qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
call rsi
cmp byte [rsp + 0x88], 0
jne 0x18009c035
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009c504
mov rcx, qword [rsp + 0x90]
call rsi
mov rax, qword [rsp + 0x3e0]
test rax, rax
je 0x18009c067
mov rdx, qword [rsp + 0x3e8]
mov r8, qword [rsp + 0x3f0]
lea rcx, [rsp + 0x3f8]
call qword [rax + 0x10]
lea rcx, [rsp + 0x940]
call fcn.180078660
movzx ecx, dil
lea rax, [0x1800a0564]
movsxd r10, dword [rax + rcx*4]
add r10, rax
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x50]
mov r9, r11
mov rax, qword [rsp + 0x60]
mov r13, qword [rsp + 0xd8]
lea rdi, [rsp + 0x3b0]
movzx esi, byte [rsp + 0x68]
jmp r10
mov eax, dword [rsp + 0x60]
xor ecx, ecx
jmp 0x18009cc62
call fcn.18016f320
xor al, 1
mov dword [rsp + 0x88], eax
movzx eax, byte [r13 + 0x18]
test al, al
je 0x18009be48
jmp 0x1800a0165
call fcn.18016f320
xor al, 1
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 0x18]
test al, al
je 0x18009be8b
jmp 0x1800a0165
movzx ebx, byte [rsp + 0x3f]
and bl, byte [rsp + 0x3d8]
shr r12, 0x20
lea eax, [r12 + 2]
mov ecx, eax
shr ecx, 0x1f
mov dword [r13 + 0xc0], ecx
mov dword [r13 + 0xc4], eax
mov r9d, dword [r13 + 0xac]
mov r8d, dword [r13 + 0x12c]
lea rcx, [rsp + 0xe0]
mov edx, r12d
call fcn.18003f920
cmp byte [rsp + 0x9f8], 5
jne 0x18009c163
mov qword [rsp + 0x110], 1
mov r8d, 0xe0
lea r14, [rsp + 0x710]
mov rcx, r14
lea rdx, [rsp + 0x940]
call fcn.18015ab20
movdqa xmm0, xmmword [rsp + 0x3e0]
movdqa xmm1, xmmword [rsp + 0x3f0]
movdqa xmmword [rsp + 0x570], xmm1
movdqa xmmword [rsp + 0x560], xmm0
mov byte [rsp + 0x20], bl
lea rcx, [rsp + 0x220]
mov edx, r12d
mov r8, r14
lea r9, [rsp + 0x560]
call fcn.180044dc0
mov rdi, qword [rsp + 0x220]
movzx r9d, byte [rsp + 0x228]
movzx eax, byte [rsp + 0x229]
mov byte [rsp + 0xc0], al
mov r15d, dword [rsp + 0x22c]
mov r14, qword [rsp + 0x230]
mov rbp, qword [rsp + 0x238]
mov rdx, qword [rsp + 0x240]
mov r12, qword [rsp + 0x248]
cmp rdi, 3
jne 0x18009c2b0
movzx eax, byte [rsp + 0x130]
lea ecx, [rax - 6]
cmp cl, 6
mov rbx, qword [rsp + 0x58]
lea rdi, [rsp + 0x3b0]
mov qword [rsp + 0x68], r14
jb 0x18009c5ac
lea ecx, [rax - 3]
cmp cl, 2
ja 0x18009c24d
cmp cl, 1
jne 0x18009c5ac
test rax, rax
je 0x18009c5ac
cmp eax, 1
jne 0x18009c575
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x50], rdx
mov rdx, qword [rsp + 0x140]
mov r8, qword [rsp + 0x148]
lea rcx, [rsp + 0x150]
mov r14d, r9d
call qword [rax + 0x10]
jmp 0x18009c5a4
mov rcx, rsi
call qword [r15]
cmp qword [r15 + 8], 0
je 0x18009bafc
cmp qword [r15 + 0x10], 0x11
jae 0x18009bae6
jmp 0x18009baea
mov rax, qword [rsp + 0x30]
add rax, 0x20
mov qword [rsp + 0x5b0], rax
lea rax, [r13 + 0xc0]
mov qword [rsp + 0x5a8], rax
lea rax, [r13 + 0x170]
mov qword [rsp + 0x5a0], rax
mov dword [rsp + 0x43c], r15d
mov r15d, r9d
movzx eax, word [rsp + 0x22a]
mov word [rsp + 0xce], ax
mov r8d, 0xe8
lea rcx, [rsp + 0x470]
mov rbx, r12
mov r12, rdx
lea rdx, [rsp + 0x250]
call fcn.18015ab20
mov qword [rsp + 0x440], rdi
mov byte [rsp + 0x448], r15b
movzx eax, byte [rsp + 0xc0]
mov byte [rsp + 0x449], al
movzx eax, word [rsp + 0xce]
mov word [rsp + 0x44a], ax
mov eax, dword [rsp + 0x43c]
mov dword [rsp + 0x44c], eax
mov qword [rsp + 0x450], r14
mov qword [rsp + 0x458], rbp
mov qword [rsp + 0x460], r12
mov qword [rsp + 0x468], rbx
lea r12, [r13 + 0x1b8]
mov ebx, dword [rsp + 0x1f4]
mov r8d, 0x130
lea rcx, [rsp + 0x220]
lea rdx, [rsp + 0xe0]
call fcn.18015ab20
lea rdi, [rsp + 0x710]
mov rcx, rdi
mov rdx, r12
mov r8d, ebx
lea rbp, [rsp + 0x220]
mov r9, rbp
call fcn.18003f410
lea rax, [r13 + 0x160]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x5a0]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x5a8]
lea rdx, [rsp + 0x440]
mov r8, qword [rsp + 0x5b0]
mov r9, rdi
call fcn.1800a1e40
cmp al, 0xc
jne 0x18009c51b
inc qword [r13 + 0x228]
lock inc qword [r13]
mov rbp, qword [rsp + 0x70]
lea r14, [rsp + 0x5c8]
jle 0x1800a0165
lea rcx, [rsp + 0x220]
mov rdx, r13
lea r8, [rsp + 0x710]
call fcn.18003fa00
mov rax, qword [rsp + 0x30]
lock inc qword [rax]
mov r15, qword [rsp + 0x40]
mov r12, qword [rsp + 0xa8]
jle 0x1800a0165
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x78], rax
cmp byte [rsp + 0xb0], 0
jne 0x18009c48c
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009cdeb
mov rcx, rsi
mov rsi, qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
call rsi
cmp byte [rsp + 0x88], 0
jne 0x18009c4b4
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009ce06
mov rcx, qword [rsp + 0x90]
call rsi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xa0], rax
mov r13, qword [rsp + 0xd8]
mov r11, qword [rsp + 0x50]
movzx esi, byte [rsp + 0x68]
jmp case.0x18009c0b5.4
xor edx, edx
jmp 0x18009b6f2
call fcn.18016f320
test al, al
jne 0x18009c00d
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x18], 1
jmp 0x18009c00d
call fcn.18016f320
test al, al
jne 0x18009c035
mov byte [r13 + 0x18], 1
jmp 0x18009c035
mov r12d, eax
mov rcx, qword [rsp + 0x710]
mov edx, dword [rsp + 0x71c]
call fcn.180039d30
movdqu xmm0, xmmword [rsp + 0x710]
movdqa xmmword [rsp + 0x220], xmm0
mov rcx, rbp
call fcn.180039f80
mov byte [rsp + 0x3f], 3
mov byte [rsp + 0x68], r12b
mov rbp, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x58]
lea r14, [rsp + 0x5c8]
lea rdi, [rsp + 0x3b0]
jmp 0x18009c65d
mov r8, qword [rsp + 0x138]
test r8, r8
je 0x18009c5ac
cmp qword [rsp + 0x140], 0
je 0x18009c5ac
mov rcx, qword [0x1801fd960]
mov qword [rsp + 0x50], rdx
xor edx, edx
mov r14d, r9d
call qword [sym.imp.kernel32.dll_HeapFree]
mov r9d, r14d
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x170]
test rax, rax
je 0x18009c5e6
mov rcx, qword [rsp + 0x178]
mov qword [rsp + 0x50], rbp
mov ebp, r15d
mov r15, r12
mov r12, rdx
mov r14d, r9d
call qword [rax + 0x18]
mov r9d, r14d
mov rdx, r12
mov r12, r15
mov r15d, ebp
mov rbp, qword [rsp + 0x50]
mov rax, qword [rsp + 0x188]
test rax, rax
mov byte [rsp + 0x3f], r9b
je 0x18009c620
mov rcx, qword [rsp + 0x190]
mov r14d, r15d
mov r15, rdx
call qword [rax + 0x18]
mov dword [rsp + 0x210], r14d
mov qword [rsp + 0x50], r12
mov qword [rsp + 0xa0], r15
jmp 0x18009c635
mov dword [rsp + 0x210], r15d
mov qword [rsp + 0x50], r12
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0x78], rbp
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x60], rax
movzx eax, byte [rsp + 0xc0]
mov byte [rsp + 0x68], al
mov rbp, qword [rsp + 0x70]
lea r14, [rsp + 0x5c8]
cmp byte [rsp + 0xb0], 0
mov r12, qword [rsp + 0xa8]
jne 0x18009c681
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009cdb9
mov rcx, rsi
mov rsi, qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
call rsi
cmp byte [rsp + 0x88], 0
jne 0x18009c6a9
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009cdd4
mov rcx, qword [rsp + 0x90]
call rsi
movzx ecx, byte [rsp + 0x3f]
lea rax, [0x1800a0564]
movsxd r10, dword [rax + rcx*4]
add r10, rax
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x50]
mov r9, r11
mov rax, qword [rsp + 0x60]
mov r13, qword [rsp + 0xd8]
movzx esi, byte [rsp + 0x68]
mov r15, qword [rsp + 0x40]
jmp r10
cmp qword [rsp + 0x60], 0
je 0x18009cc54
mov r15d, esi
mov qword [rsp + 0x50], r11
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18009c732
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov rsi, rax
mov rax, qword [rsp + 0x60]
mov qword [rsi], rax
mov rax, qword [rsp + 0x78]
mov qword [rsi + 8], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsi + 0x10], rax
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18009c795
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov qword [rax], rsi
lea rcx, fcn.18001ee10
mov qword [rax + 8], rcx
mov esi, r15d
mov byte [rax + 0x10], r15b
inc rax
mov cl, 4
mov rdx, qword [rsp + 0x408]
mov r8, qword [rsp + 0x410]
mov r9, qword [rsp + 0x418]
mov r11, qword [rsp + 0x50]
mov r15, qword [rsp + 0x40]
jmp case.0x18009c0b5.1
mov byte [rsp + 0x68], sil
mov qword [rsp + 0x50], r11
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0xe0], rcx
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xf0], rax
lea rsi, [rcx + 0x10]
mov rcx, rsi
mov rax, qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
call rax
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009cd92
xor eax, eax
lea rdi, [rsp + 0x7f0]
mov r8, qword [rsp + 0x60]
movzx ecx, byte [r8 + 0x18]
test cl, cl
mov rcx, qword [rsp + 0x78]
jne 0x1800a0165
mov edx, ecx
cmp qword [r8 + 0x1c8], rdx
jbe 0x1800a0165
mov rcx, qword [r8 + 0x1b8]
test rcx, rcx
je 0x1800a0165
imul rdx, rdx, 0x130
cmp dword [rcx + rdx], 2
je 0x1800a0165
mov r8, qword [rsp + 0x78]
shr r8, 0x20
add rcx, rdx
cmp dword [rcx + 0x114], r8d
jne 0x1800a0165
movzx ebx, byte [rcx + 0x124]
test al, al
jne 0x18009c8cd
mov rax, qword [0x1801fd998]
test qword [rsp + 0x48], rax
jne 0x18009cd9e
mov rcx, rsi
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
test bl, bl
mov rbx, qword [rsp + 0x58]
je 0x18009c935
lea rcx, [rsp + 0x440]
lea rdx, [rsp + 0xe0]
call fcn.18003fa60
mov rax, qword [rsp + 0xb8]
cmp qword [rax], 0
je 0x18009c928
mov rcx, rax
call fcn.18003fb60
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rax]
lock dec qword [rcx]
jne 0x18009c928
call fcn.1800840b0
mov rax, qword [rsp + 0xb8]
movdqu xmm0, xmmword [rsp + 0x440]
movdqu xmmword [rax], xmm0
lea rsi, [rsp + 0x220]
mov rcx, rsi
lea rdx, [rsp + 0xe0]
call fcn.18003fa60
cmp byte [rsp + 0x98], 7
mov rax, qword [rsp + 0xf0]
lea rcx, [rsp + 0x238]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsp + 0xe0]
movups xmmword [rcx], xmm0
mov byte [rsp + 0x230], 0
mov rax, qword [rsp + 0x228]
movzx ecx, byte [rsp + 0x230]
mov edx, dword [rsp + 0x231]
movzx r8d, word [rsp + 0x235]
movzx r9d, byte [rsp + 0x237]
mov r10, qword [rsp + 0x220]
mov r11, qword [rsp + 0x238]
movups xmm0, xmmword [rsp + 0x240]
mov qword [rsp + 0xf8], r10
mov qword [rsp + 0x100], rax
mov byte [rsp + 0x108], cl
mov dword [rsp + 0x109], edx
mov word [rsp + 0x10d], r8w
mov byte [rsp + 0x10f], r9b
mov qword [rsp + 0x110], r11
movups xmmword [rsp + 0x118], xmm0
movaps xmm0, xmmword [rsp + 0x3b0]
movaps xmm1, xmmword [rsp + 0x3c0]
lea rax, [rsp + 0x128]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
movups xmm0, xmmword [rsp + 0x398]
movaps xmmword [rsp + 0xe0], xmm0
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0xf0], rax
sete byte [rsp + 0x148]
movzx eax, byte [rsp + 0x3d8]
mov byte [rsp + 0x149], al
lea rcx, [rsp + 0x440]
mov rdx, r15
mov r8, rbx
call fcn.1800a0bf0
movzx eax, byte [rsp + 0x440]
cmp eax, 5
je 0x18009cb9b
cmp eax, 6
je 0x1800a0433
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x810], rax
movups xmm0, xmmword [rsp + 0x440]
movdqu xmm1, xmmword [rsp + 0x450]
movdqa xmmword [rsp + 0x800], xmm1
movaps xmmword [rsp + 0x7f0], xmm0
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x720], rax
movdqa xmm0, xmmword [rsp + 0xe0]
movdqa xmmword [rsp + 0x710], xmm0
mov rcx, rdi
call fcn.18004d9d0
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 3
lea rcx, [rsp + 0x710]
lea rdx, [rsp + 0x220]
call fcn.180083460
lea rcx, [rsp + 0xf8]
call fcn.18003fb60
mov rcx, qword [rsp + 0xf8]
lock dec qword [rcx]
jne 0x18009cb24
call fcn.1800840b0
lea rcx, [rsp + 0x110]
call fcn.18003fb60
mov rcx, qword [rsp + 0x110]
lock dec qword [rcx]
lea rdi, [rsp + 0x5c0]
jne 0x18009cb4c
call fcn.1800840b0
mov rcx, qword [rsp + 0x120]
lock dec qword [rcx]
jne 0x18009cb5f
call fcn.1800a2260
lea rcx, [rsp + 0x128]
call fcn.180077ba0
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0xd0], rax
jmp 0x18009a550
movaps xmm0, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0x280], xmm0
movaps xmm0, xmmword [rsp + 0x130]
movaps xmmword [rsp + 0x270], xmm0
movaps xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x260], xmm0
movdqa xmm0, xmmword [rsp + 0xe0]
movdqa xmm1, xmmword [rsp + 0xf0]
movaps xmm2, xmmword [rsp + 0x100]
movaps xmm3, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x250], xmm3
movaps xmmword [rsp + 0x240], xmm2
movdqa xmmword [rsp + 0x230], xmm1
movdqa xmmword [rsp + 0x220], xmm0
mov rcx, rbp
mov rdx, rsi
mov r8, rbx
call fcn.1800a0e80
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0xd0], rax
lea rdi, [rsp + 0x5c0]
jmp 0x18009a550
movzx eax, sil
shl rax, 0x20
or rax, 3
mov cl, 4
mov rdx, qword [rsp + 0x408]
mov r8, qword [rsp + 0x410]
mov r9, qword [rsp + 0x418]
mov qword [rsp + 0x428], r9
mov qword [rsp + 0x218], r8
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0xd0], rax
mov eax, dword [rsp + 0x210]
mov dword [rsp + 0x420], eax
mov qword [rsp + 0x408], rdx
mov qword [rsp + 0x410], r8
mov qword [rsp + 0x418], r9
mov qword [rsp + 0x50], r11
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0xf0], rax
movdqu xmm0, xmmword [rsp + 0x398]
movdqa xmmword [rsp + 0xe0], xmm0
mov byte [rsp + 0x220], cl
mov byte [rsp + 0x68], sil
mov byte [rsp + 0x221], sil
mov eax, dword [rsp + 0x420]
mov dword [rsp + 0x224], eax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x238], rax
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x240], rax
lea rsi, [rsp + 0x220]
mov rcx, rsi
call fcn.18004d9d0
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 3
lea rcx, [rsp + 0xe0]
mov rdx, rsi
call fcn.180083460
mov rcx, rdi
call fcn.180077ba0
lea rdi, [rsp + 0x5c0]
jmp 0x18009a550
call fcn.18016f320
xor al, 1
jmp 0x18009c848
call fcn.18016f320
test al, al
jne 0x18009c8cd
mov rax, qword [rsp + 0x60]
mov byte [rax + 0x18], 1
jmp 0x18009c8cd
call fcn.18016f320
test al, al
jne 0x18009c681
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x18], 1
jmp 0x18009c681
call fcn.18016f320
test al, al
jne 0x18009c6a9
mov byte [r13 + 0x18], 1
jmp 0x18009c6a9
call fcn.18016f320
test al, al
jne 0x18009c48c
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x18], 1
jmp 0x18009c48c
call fcn.18016f320
test al, al
jne 0x18009c4b4
mov byte [r13 + 0x18], 1
jmp 0x18009c4b4
pxor xmm6, xmm6
movdqa xmm7, xmmword [0x180174e80]
movdqa xmm8, xmmword [str.PRI__HTTP_2.0_r_nddddddddddddddddssssssssssssssss]
lea rax, [rbp + 0x178]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x88], rax
lea rax, [rbp + 0x10]
mov qword [rsp + 0xb0], rax
lea rax, [rbp + 0xa0]
mov qword [rsp + 0xa8], rax
lea rax, [rbp + 0x150]
mov qword [rsp + 0x68], rax
lea rax, [rbp + 0x1a8]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x1c9]
mov qword [rsp + 0x98], rax
lea rax, [rbp + 0x120]
mov qword [rsp + 0xb8], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x90]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x180]
mov qword [rsp + 0xa0], rax
lea rax, [rbp + 0x99]
mov qword [rsp + 0x218], rax
xor eax, eax
jmp 0x18009cf08
mov rax, qword [rsp + 0x90]
inc eax
cmp byte [rbp + 0xc9], 0
mov byte [rbp + 0xc9], 0
mov rcx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x30]
je 0x18009fbbf
cmp eax, 0x10
je 0x18009fb7c
mov qword [rsp + 0x90], rax
cmp byte [rbp + 0x1d8], 0
jne 0x18009e365
mov qword [rsp + 0x30], r8
jmp 0x18009cf6e
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
lea rcx, [rsp + 0x440]
call fcn.1800a25c0
cmp byte [rbp + 0x1d8], 0
jne 0x18009e360
mov rax, qword [rbp + 0x70]
test rax, rax
je 0x18009cf90
movzx ecx, byte [rbp + 0x1c8]
mov byte [rbp + 0x1c8], 3
cmp cl, 3
jne 0x18009cfb5
jmp 0x18009e1b8
cmp qword [rbp + 0x88], 2
jne 0x18009d222
movzx ecx, byte [rbp + 0x1c8]
mov byte [rbp + 0x1c8], 3
cmp cl, 3
je 0x18009e1c1
mov rdx, qword [rsp + 0x48]
movdqu xmm0, xmmword [rdx]
movdqu xmm1, xmmword [rdx + 0x10]
movdqa xmmword [rsp + 0x450], xmm1
movdqa xmmword [rsp + 0x440], xmm0
mov byte [rsp + 0x460], cl
mov rdx, qword [rsp + 0x98]
mov ecx, dword [rdx]
mov edx, dword [rdx + 3]
lea r8, [rsp + 0x450]
mov dword [r8 + 0x14], edx
mov dword [r8 + 0x11], ecx
dec rax
cmp rax, 2
jae 0x18009d6b1
lea rcx, [rsp + 0x440]
mov rdx, rbx
call fcn.18004dbc0
test rax, rax
jne 0x18009e174
mov rsi, rdx
test rdx, rdx
je 0x18009d151
cmp dword [rbp + 0x70], 1
jne 0x18009d039
mov qword [rbp + 0x70], 2
lea rcx, [rsp + 0x220]
mov rdx, rbp
mov r8, rbx
call fcn.1800abd60
mov rax, qword [rsp + 0x220]
cmp rax, 2
je 0x18009d100
test rax, rax
je 0x18009d100
mov rax, qword [rsp + 0x228]
test rax, rax
je 0x18009d091
mov rdx, qword [rsp + 0x230]
mov r8, qword [rsp + 0x238]
lea rcx, [rsp + 0x240]
call qword [rax + 0x10]
jmp 0x18009d100
mov rax, qword [rsp + 0x230]
mov ecx, eax
and ecx, 3
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x18009d100
test rcx, rcx
je 0x18009d100
lea r15, [rax - 1]
mov r12, qword [rax - 1]
mov rdi, qword [rax + 7]
mov rcx, r12
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x18009d0e3
cmp qword [rdi + 0x10], 0x11
jb 0x18009d0d1
mov r12, qword [r12 - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, r12
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
nop word cs:[rax + rax]
mov rax, qword [rbp + 0x70]
test rax, rax
je 0x18009d11d
cmp eax, 3
je 0x18009d11d
mov qword [rbp + 0x70], 4
mov byte [rbp + 0xca], 2
mov r15, qword [rsi]
test r15, r15
je 0x18009cf42
mov rdi, qword [rsi + 8]
mov rcx, r15
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x18009cf42
cmp qword [rdi + 0x10], 0x11
jb 0x18009cf30
mov r15, qword [r15 - 8]
jmp 0x18009cf30
lea rcx, [rsp + 0xe0]
mov rdx, rbp
mov r8, rbx
call fcn.1800abd60
mov rax, qword [rsp + 0xe0]
test rax, rax
je 0x18009d6b1
cmp eax, 1
jne 0x18009e174
cmp qword [rsp + 0xe8], 0
je 0x18009d528
lea rax, [rsp + 0xf8]
movups xmm0, xmmword [rax - 0x10]
movdqu xmm1, xmmword [rax]
movdqa xmmword [rsp + 0xa50], xmm1
movaps xmmword [rsp + 0xa40], xmm0
lea rcx, [rsp + 0x220]
lea rdx, [rsp + 0x450]
lea r8, [rsp + 0xa40]
call fcn.18004ddc0
cmp byte [rsp + 0x240], 2
jne 0x18009d63f
cmp byte [rbp + 0x1c8], 3
je 0x18009d1ec
mov rcx, qword [rsp + 0x48]
call fcn.1800a25c0
mov rax, qword [rsp + 0x460]
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0x20], rax
movdqa xmm0, xmmword [rsp + 0x440]
movdqa xmm1, xmmword [rsp + 0x450]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
mov r8, qword [rsp + 0x30]
jmp 0x18009cf19
mov rcx, qword [rsp + 0x40]
cmp dword [rcx], 2
je 0x18009e33c
mov rdx, rbx
call fcn.1800a77d0
test al, al
je 0x18009e33c
mov rbx, r13
movss xmm9, dword [rbp + 0xc1]
movzx eax, byte [rbp + 0xc5]
mov byte [rsp + 0x60], al
movzx r13d, byte [rbp + 0xc6]
movzx esi, byte [rbp + 0xc8]
nop word cs:[rax + rax]
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x840], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x848], rax
movss dword [rsp + 0x850], xmm9
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x854], al
mov byte [rsp + 0x855], r13b
mov byte [rsp + 0x856], sil
cmp qword [rbp + 0x158], 0
je 0x18009d3d0
mov qword [rsp + 0xe0], 2
mov qword [rsp + 0x100], 0
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x68]
lea r8, [rsp + 0x840]
call fcn.180051d50
mov rdx, qword [rsp + 0xe0]
cmp rdx, 2
je 0x18009d3b0
mov rcx, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xf0]
test rdx, rdx
je 0x18009d32f
mov rdx, qword [rax + 0x10]
dec rdx
and rdx, 0xfffffffffffffff0
add rcx, rdx
add rcx, 0x10
lea rdx, [rsp + 0xf8]
call qword [rax + 0x68]
mov rdx, qword [rsp + 0xe0]
cmp rdx, 2
je 0x18009d3b0
mov rcx, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xf0]
test rdx, rdx
je 0x18009d36f
mov rdx, qword [rax + 0x10]
dec rdx
and rdx, 0xfffffffffffffff0
add rcx, rdx
add rcx, 0x10
mov rdx, qword [rsp + 0xf8]
call qword [rax + 0x80]
mov rax, qword [rsp + 0xe0]
cmp rax, 2
je 0x18009d3b0
test rax, rax
je 0x18009d3b0
mov rcx, qword [rsp + 0xe8]
lock dec qword [rcx]
jne 0x18009d3b0
mov rdx, qword [rsp + 0xf0]
call fcn.18006eff0
nop dword [rax + rax]
mov rdi, qword [rsp + 0x220]
cmp rdi, 4
jne 0x18009d3e1
jmp 0x18009d855
mov qword [rsp + 0x220], 3
mov edi, 3
movzx eax, byte [rsp + 0x228]
movzx edx, byte [rsp + 0x22f]
movzx ecx, word [rsp + 0x22d]
mov r12d, dword [rsp + 0x229]
lea r9, [rsp + 0x260]
mov r8, qword [r9 - 0x10]
mov qword [rsp + 0x460], r8
movups xmm0, xmmword [r9 - 0x30]
movdqu xmm1, xmmword [r9 - 0x20]
movdqa xmmword [rsp + 0x450], xmm1
movaps xmmword [rsp + 0x440], xmm0
mov r14, qword [rsp + 0x258]
movups xmm0, xmmword [r9]
movaps xmmword [rsp + 0x560], xmm0
mov r15, qword [rsp + 0x270]
movzx r8d, word [r9 + 0x28]
mov word [rsp + 0x950], r8w
movdqu xmm0, xmmword [r9 + 0x18]
movdqa xmmword [rsp + 0x940], xmm0
movzx ebp, byte [rsp + 0x28a]
mov r8d, dword [r9 + 0x2b]
mov dword [rsp + 0x3b0], r8d
movzx r8d, byte [r9 + 0x2f]
mov byte [rsp + 0x3b4], r8b
cmp rdi, 3
jne 0x18009d6c8
xor eax, eax
mov rbp, qword [rsp + 0x70]
cmp byte [rbp + 0xd0], 0
sete al
mov rcx, qword [rbp + 0x158]
cmp rcx, qword [rbp + rax*8 + 0xd8]
jae 0x18009d811
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x58]
call fcn.1800aa060
mov rax, qword [rsp + 0x220]
cmp rax, 2
je 0x18009d838
mov rcx, qword [rsp + 0x228]
test rax, rax
jne 0x18009d845
test rcx, rcx
jne 0x18009d270
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
je 0x18009d954
mov r13, rbx
mov rsi, qword [rsp + 0x80]
jmp 0x18009d975
mov rdi, qword [rsp + 0xf0]
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18009d559
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov rsi, rax
mov qword [rax], 0
mov byte [rax + 0x10], 8
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18009d5aa
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0525
mov qword [0x1801fd960], rax
mov r8d, 8
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0525
mov qword [rax], rdi
mov qword [rsi], rax
lea rax, [0x1801c0cd8]
mov qword [rsi + 8], rax
mov qword [rsp + 0xa48], rsi
mov qword [rsp + 0xa40], 0
lea rcx, [rsp + 0x220]
lea rdx, [rsp + 0x450]
lea r8, [rsp + 0xa40]
call fcn.18004ddc0
cmp byte [rsp + 0x240], 2
je 0x18009d6b1
mov rax, qword [rsp + 0x220]
test rax, rax
je 0x18009d87c
mov rdx, qword [rsp + 0x228]
mov r8, qword [rsp + 0x230]
lea rcx, [rsp + 0x238]
jmp 0x18009d6ae
mov rax, qword [rsp + 0x220]
test rax, rax
lea rcx, [rsp + 0x260]
je 0x1800a0165
mov rdx, qword [rsp + 0x228]
movdqu xmm0, xmmword [rcx - 0x30]
lea rcx, [rsp + 0xa58]
movdqu xmmword [rcx - 8], xmm0
mov qword [rsp + 0xa40], rax
mov qword [rsp + 0xa48], rdx
mov rcx, qword [rbp + 0x70]
dec rcx
cmp rcx, 2
jae 0x18009d69e
mov qword [rbp + 0x70], 4
mov byte [rbp + 0xca], 2
mov r8, qword [rsp + 0xa50]
lea rcx, [rsp + 0xa58]
call qword [rax + 0x10]
lea rcx, [rsp + 0x440]
call fcn.1800a25c0
mov r8, qword [rsp + 0x30]
jmp 0x18009cf19
shl edx, 0x10
or ecx, edx
shl rcx, 0x20
or r12, rcx
mov rdx, qword [rsp + 0x290]
movzx ecx, byte [rsp + 0x298]
movzx r9d, byte [rsp + 0x299]
movzx r8d, byte [rsp + 0x29a]
mov r10, qword [rsp + 0x460]
mov qword [rsp + 0xa60], r10
movaps xmm0, xmmword [rsp + 0x440]
movaps xmm1, xmmword [rsp + 0x450]
movaps xmmword [rsp + 0xa50], xmm1
movaps xmmword [rsp + 0xa40], xmm0
movaps xmm0, xmmword [rsp + 0x560]
movaps xmmword [rsp + 0x3e0], xmm0
movaps xmm0, xmmword [rsp + 0x940]
movaps xmmword [rsp + 0x630], xmm0
movzx r10d, word [rsp + 0x950]
mov word [rsp + 0x640], r10w
mov r10d, dword [rsp + 0x3b0]
mov dword [rsp + 0x398], r10d
movzx r10d, byte [rsp + 0x3b4]
mov byte [rsp + 0x39c], r10b
shl r12, 8
mov r10, qword [rsp + 0x70]
mov byte [r10 + 0xc8], 0
cmp byte [r10 + 0xca], 2
jne 0x18009d799
test r9b, r9b
jne 0x18009d7b3
cmp r9b, 1
mov r9d, 0
adc r9b, 1
mov r10, qword [rsp + 0x70]
mov byte [r10 + 0xca], r9b
or r12, rax
mov rsi, qword [rsp + 0x70]
mov byte [rsi + 0xcb], bpl
test r8b, r8b
setne al
add al, al
test rdx, rdx
mov r13, rbx
mov byte [rsp + 0x60], al
je 0x18009d8d0
test cl, cl
mov rbx, qword [rsp + 0x58]
je 0x18009df60
cmp rdx, 0xffffffffffffffff
mov rsi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x30]
je 0x18009e01a
cmp rdx, 0xfffffffffffffffe
jne 0x18009e01e
mov al, 1
xor esi, esi
jmp 0x18009e023
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
je 0x18009d904
mov r13, rbx
mov rsi, qword [rsp + 0x80]
jmp 0x18009d925
mov edi, 5
mov r13, rbx
jmp 0x18009db3a
call fcn.18004e230
mov r12, rax
mov r13, rbx
jmp 0x18009d9e4
movzx esi, byte [rsp + 0x228]
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
je 0x18009d99f
mov r13, rbx
jmp 0x18009d9b8
mov rsi, qword [rsp + 0x228]
mov r15, qword [rsi]
test r15, r15
je 0x18009d8b9
mov rdi, qword [rsi + 8]
mov rcx, r15
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x18009d8b9
cmp qword [rdi + 0x10], 0x11
jb 0x18009d8a7
mov r15, qword [r15 - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x18009d6b1
mov qword [rsi + 0x70], 3
mov rcx, rsi
call fcn.1800abba0
mov rcx, rsi
mov rbx, qword [rsp + 0x58]
mov rdx, rbx
call fcn.1800abc80
xor edx, edx
mov rsi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x30]
jmp 0x18009e069
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
mov rsi, qword [rsp + 0x80]
je 0x1800a0514
mov r13, rbx
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov r12, rax
mov qword [rax], 0
mov word [rax + 0x10], 0x900
jmp 0x18009d9ec
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
mov rsi, qword [rsp + 0x80]
je 0x1800a0514
mov r13, rbx
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov r12, rax
mov qword [rax], 0
mov byte [rax + 0x10], 2
jmp 0x18009d9ec
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov r13, rbx
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov r12, rax
mov qword [rax], 0
mov byte [rax + 0x10], 0
mov byte [rax + 0x11], sil
mov rsi, qword [rsp + 0x80]
movzx ebx, byte [rbp + 0xca]
mov qword [rbp + 0x70], 4
mov byte [rbp + 0xca], 2
mov rax, qword [rbp + 0x158]
test rax, rax
je 0x18009da50
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx]
xor edx, edx
jmp 0x18009da28
inc rdx
cmp rax, rdx
je 0x18009da43
movzx r8d, byte [rcx + rdx]
cmp r8d, 0xd
je 0x18009da20
cmp r8d, 0xa
je 0x18009da20
cmp rax, rdx
jae 0x18009da46
jmp 0x1800a0165
mov rdx, rax
mov rcx, qword [rsp + 0x68]
call fcn.180022880
cmp byte [r12 + 0x10], 0
mov r8, qword [rsp + 0x30]
je 0x18009dac8
cmp qword [rbp + 0x158], 0
jne 0x18009dac8
test bl, bl
jne 0x18009dac8
mov qword [rbp + 0x88], 5
mov byte [rbp + 0xca], 2
mov r15, qword [r12]
mov edi, 4
test r15, r15
je 0x18009db25
mov rbx, qword [r12 + 8]
mov rcx, r15
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x18009db25
mov edi, 4
cmp qword [rbx + 0x10], 0x11
jb 0x18009dab4
mov r15, qword [r15 - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x18009db25
mov edi, 3
cmp dword [rbp + 0x88], 2
mov rcx, qword [rsp + 0x40]
jne 0x18009db1e
cmp qword [rbp + 0x158], 0x18
mov rbx, qword [rsp + 0x58]
jb 0x18009db51
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
movdqu xmm0, xmmword [rax]
pcmpeqb xmm0, xmm8
movq xmm1, qword [rax + 0x10]
pcmpeqb xmm1, xmm7
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x18009df8b
mov rcx, qword [rsp + 0x40]
jmp 0x18009db51
mov rbx, qword [rsp + 0x58]
jmp 0x18009db51
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, r12
call qword [sym.imp.kernel32.dll_HeapFree]
mov r12, rsi
mov rbx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x30]
cmp rdi, 3
mov qword [rsp + 0x80], rsi
je 0x18009e11e
cmp rdi, 4
je 0x18009dd22
cmp rdi, 5
je 0x18009e365
mov r14, r8
mov qword [rsp + 0x440], rdi
mov qword [rsp + 0x448], r12
mov rax, qword [rsp + 0x730]
lea rcx, [rsp + 0x450]
mov qword [rcx + 0x20], rax
movaps xmm0, xmmword [rsp + 0x710]
movdqa xmm1, xmmword [rsp + 0x720]
movdqu xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov rax, qword [rsp + 0x420]
mov qword [rsp + 0x478], rax
movaps xmm0, xmmword [rsp + 0x7f0]
movups xmmword [rcx + 0x30], xmm0
mov rax, qword [rsp + 0x3d8]
mov qword [rsp + 0x490], rax
movzx eax, word [rsp + 0x5d0]
mov word [rcx + 0x58], ax
movdqa xmm0, xmmword [rsp + 0x5c0]
movdqu xmmword [rcx + 0x48], xmm0
movzx eax, byte [rsp + 0x428]
mov byte [rsp + 0x4aa], al
movzx eax, byte [rsp + 0x594]
mov byte [rcx + 0x5f], al
mov eax, dword [rsp + 0x590]
mov dword [rcx + 0x5b], eax
test rdx, rdx
je 0x18009dd34
movzx r8d, byte [rsp + 0x60]
and r8b, 1
lea rcx, [rsp + 0x220]
call fcn.18004c820
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x100], rax
movups xmm0, xmmword [rsp + 0x220]
movups xmm1, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0xe0], xmm0
lea rcx, [rsp + 0x260]
mov rax, qword [rcx + 8]
mov qword [rsp + 0xa60], rax
movups xmm0, xmmword [rcx - 0x18]
movups xmm1, xmmword [rcx - 8]
movaps xmmword [rsp + 0xa50], xmm1
movaps xmmword [rsp + 0xa40], xmm0
mov rdi, qword [rsp + 0x270]
cmp byte [rbp + 0x1c8], 3
je 0x18009dcb8
mov rcx, qword [rsp + 0x48]
call fcn.1800a25c0
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0x20], rax
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
movdqa xmm0, xmmword [rsp + 0xa40]
movdqa xmm1, xmmword [rsp + 0xa50]
movdqa xmmword [rsp + 0x840], xmm0
movdqa xmmword [rsp + 0x850], xmm1
mov rax, qword [rsp + 0xa60]
mov qword [rsp + 0x860], rax
movzx eax, byte [rsp + 0x60]
test al, 2
jne 0x18009dd4c
jmp 0x18009de2a
cmp dword [rbp + 0x88], 5
jne 0x18009cf19
jmp 0x18009e14e
movdqa xmmword [rsp + 0x840], xmm6
xor edi, edi
movzx eax, byte [rsp + 0x60]
test al, 2
je 0x18009de2a
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18009dd75
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0542
mov qword [0x1801fd960], rax
mov r8d, 0x70
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0542
mov rsi, rax
mov qword [rax], 1
mov qword [rax + 8], 1
movdqu xmmword [rax + 0x30], xmm6
lock inc qword [rax]
jle 0x1800a0165
cmp qword [rbp], 0
je 0x18009ddff
mov r15, qword [rbp + 8]
test r15, r15
je 0x18009ddff
mov rax, qword [r15 + 0x30]
mov rcx, rax
test cl, 4
jne 0x18009ddf1
mov rdx, rcx
or rdx, 2
mov rax, rcx
lock cmpxchg qword [r15 + 0x30], rdx
jne 0x18009ddc4
and ecx, 5
cmp ecx, 1
jne 0x18009ddf1
mov rax, qword [r15 + 0x20]
mov rcx, qword [r15 + 0x28]
call qword [rax + 0x10]
lock dec qword [r15]
jne 0x18009ddff
mov rcx, r15
call fcn.18004eef0
mov qword [rbp], 1
mov qword [rbp + 8], rsi
mov edx, 1
lea rcx, [rsp + 0x4a0]
mov r8, rsi
call fcn.1800a7620
cmp rax, 2
jne 0x18009df0e
movups xmm0, xmmword [rsp + 0x4a0]
movaps xmmword [rsp + 0x140], xmm0
movups xmm0, xmmword [rsp + 0x490]
movaps xmmword [rsp + 0x130], xmm0
movups xmm0, xmmword [rsp + 0x480]
movaps xmmword [rsp + 0x120], xmm0
movups xmm0, xmmword [rsp + 0x440]
movups xmm1, xmmword [rsp + 0x450]
movups xmm2, xmmword [rsp + 0x460]
movups xmm3, xmmword [rsp + 0x470]
movaps xmmword [rsp + 0x110], xmm3
movaps xmmword [rsp + 0x100], xmm2
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0xe0], xmm0
mov rax, qword [rsp + 0x860]
lea rcx, [rsp + 0xf8]
mov qword [rcx + 0x78], rax
movdqa xmm0, xmmword [rsp + 0x840]
movdqa xmm1, xmmword [rsp + 0x850]
movdqu xmmword [rcx + 0x68], xmm1
movdqu xmmword [rcx + 0x58], xmm0
mov r8d, 0x98
lea rsi, [rsp + 0x220]
mov rcx, rsi
lea rdx, [rsp + 0xe0]
call fcn.18015ab20
mov qword [rsp + 0x2b8], rdi
mov rcx, qword [rsp + 0x40]
mov rdx, rsi
call fcn.1800a06b0
test rax, rax
mov r8, r14
je 0x18009cf19
jmp 0x18009e2ad
test rax, rax
je 0x18009de2a
mov rsi, rdx
test rdx, rdx
je 0x18009de2a
mov rax, qword [rsi + 0x30]
mov rcx, rax
or rcx, 4
lock cmpxchg qword [rsi + 0x30], rcx
jne 0x18009df27
and eax, 0xa
cmp eax, 8
jne 0x18009df49
mov rax, qword [rsi + 0x10]
mov rcx, qword [rsi + 0x18]
call qword [rax + 0x10]
lock dec qword [rsi]
jne 0x18009de2a
mov rcx, rsi
call fcn.1800a0590
jmp 0x18009de2a
cmp rdx, 0xffffffffffffffff
mov rsi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x30]
je 0x18009e045
cmp rdx, 0xfffffffffffffffe
jne 0x18009e049
mov al, 1
xor r8d, r8d
jmp 0x18009e04e
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18009dfb4
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov rsi, rax
mov qword [rax], 0
mov word [rax + 0x10], 0x500
mov r15, qword [r12]
mov edi, 3
test r15, r15
je 0x18009db25
mov rbx, qword [r12 + 8]
mov rcx, r15
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x18009db25
mov edi, 3
cmp qword [rbx + 0x10], 0x11
jae 0x18009dab0
jmp 0x18009dab4
mov al, 2
jmp 0x18009e023
xor eax, eax
mov rsi, rdx
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x70], 1
mov byte [rcx + 0x78], al
mov byte [rcx + 0x79], 0
mov qword [rcx + 0x80], rsi
or byte [rsp + 0x60], 1
jmp 0x18009e069
mov al, 2
jmp 0x18009e04e
xor eax, eax
mov r8, rdx
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x70], 2
mov byte [rcx + 0x78], al
mov byte [rcx + 0x79], 0
mov qword [rcx + 0x80], r8
mov rax, qword [rsp + 0xa60]
mov qword [rsp + 0x730], rax
movaps xmm0, xmmword [rsp + 0xa40]
movdqa xmm1, xmmword [rsp + 0xa50]
movdqa xmmword [rsp + 0x720], xmm1
movaps xmmword [rsp + 0x710], xmm0
movaps xmm0, xmmword [rsp + 0x3e0]
movaps xmmword [rsp + 0x7f0], xmm0
movdqa xmm0, xmmword [rsp + 0x630]
movdqa xmmword [rsp + 0x5c0], xmm0
movzx eax, word [rsp + 0x640]
mov word [rsp + 0x5d0], ax
mov eax, dword [rsp + 0x398]
mov dword [rsp + 0x590], eax
movzx eax, byte [rsp + 0x39c]
mov byte [rsp + 0x594], al
mov qword [rsp + 0x420], r14
mov qword [rsp + 0x3d8], r15
mov byte [rsp + 0x428], bpl
mov rbp, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x40]
cmp rdi, 3
mov qword [rsp + 0x80], rsi
jne 0x18009db63
mov qword [rsp + 0x228], r12
mov qword [rsp + 0x220], 3
lea rdx, [rsp + 0x220]
mov rsi, r8
call fcn.1800a06b0
mov r8, rsi
test rax, rax
jne 0x18009e2ad
mov byte [rbp + 0x1d8], 1
mov qword [rbp + 0x70], 4
mov qword [rbp + 0x88], 5
mov byte [rbp + 0xca], 2
jmp 0x18009cf19
cmp byte [rbp + 0x1c8], 3
je 0x18009e187
mov rcx, qword [rsp + 0x48]
call fcn.1800a25c0
mov rax, qword [rsp + 0x460]
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0x20], rax
movdqa xmm0, xmmword [rsp + 0x440]
movdqa xmm1, xmmword [rsp + 0x450]
movdqu xmmword [rcx + 0x10], xmm1
movdqu xmmword [rcx], xmm0
jmp 0x18009e360
cmp eax, 4
je 0x18009e360
test rax, rax
jne 0x18009e234
cmp qword [rbp + 0x88], 2
jne 0x18009e234
cmp qword [rbp + 0x158], 0
je 0x18009e2c3
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18009e207
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov rsi, rax
mov qword [rax], 0
mov byte [rax + 0x10], 3
jmp 0x18009e318
cmp byte [rbp + 0xc0], 0
jne 0x18009e360
cmp qword [rbp + 0x158], 0
jne 0x18009e360
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x88]
mov r8, rbx
call fcn.1800aa060
mov rax, qword [rsp + 0x220]
cmp rax, 2
je 0x18009e360
mov rcx, qword [rsp + 0x228]
test rax, rax
jne 0x18009e2f6
test rcx, rcx
mov r8, qword [rsp + 0x30]
jne 0x18009e365
mov qword [rbp + 0x70], 4
mov byte [rbp + 0xca], 2
call fcn.18004e170
mov r8, qword [rsp + 0x30]
mov rsi, rax
mov rcx, qword [rsp + 0x40]
test rsi, rsi
je 0x18009e365
jmp 0x18009fb4a
lea rcx, [rsp + 0x220]
mov rdx, qword [rsp + 0x88]
mov r8, rbx
call fcn.1800aa060
mov rax, qword [rsp + 0x220]
cmp rax, 2
je 0x18009e360
mov rcx, qword [rsp + 0x228]
test rax, rax
je 0x18009e32c
mov qword [rbp + 0x70], 4
mov qword [rbp + 0x88], 5
mov byte [rbp + 0xca], 2
call fcn.18004e230
mov rsi, rax
mov rcx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x30]
test rsi, rsi
je 0x18009e365
jmp 0x18009fb4a
test rcx, rcx
je 0x18009f8a0
call fcn.18004e1d0
jmp 0x18009e315
mov byte [rbp + 0x1d8], 1
mov qword [rbp + 0x70], 4
mov qword [rbp + 0x88], 5
mov byte [rbp + 0xca], 2
nop dword [rax]
mov r8, qword [rsp + 0x30]
mov qword [rsp + 0x30], r8
cmp byte [rbp + 0x1d8], 0
je 0x18009e3a0
mov rcx, rbp
mov rdx, rbx
call fcn.1800ad260
mov rcx, rax
call fcn.1800ae070
test rax, rax
jne 0x18009cee0
mov rsi, rdx
test rdx, rdx
je 0x18009cee0
jmp 0x18009fb45
jmp 0x18009e3b9
mov rbx, qword [rsp + 0x58]
nop word [rax + rax]
cmp byte [rbp + 0x1d8], 0
jne 0x18009e373
mov rax, qword [rbp + 0x1d0]
cmp qword [rax], 0
je 0x18009e430
cmp byte [rbp + 0x170], 0
jne 0x18009e514
cmp byte [rbp + 0x148], 0
je 0x18009e48b
mov r8, qword [rbp + 0x138]
cmp r8, 0xf
ja 0x18009eb3a
test r8, r8
je 0x18009e49b
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x130]
cmp rax, rcx
mov edx, 0
cmovae rdx, rcx
sub rax, rdx
mov r9, rcx
sub r9, rax
mov rdx, r8
sub rdx, r9
ja 0x18009e4a1
add r8, rax
mov rcx, r8
jmp 0x18009e49f
cmp qword [rbp + 0x70], 4
je 0x18009e3c6
cmp qword [rbp + 0x88], 2
jne 0x18009e3c6
mov r8, qword [rbp + 0x138]
test r8, r8
je 0x18009e6f5
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x130]
cmp rax, rcx
mov edx, 0
cmovae rdx, rcx
sub rax, rdx
mov r9, rcx
sub r9, rax
mov rdx, r8
sub rdx, r9
ja 0x18009e6fb
add r8, rax
mov rcx, r8
jmp 0x18009e6f9
mov r8, qword [rbp + 0x138]
test r8, r8
jne 0x18009e3fa
xor eax, eax
xor ecx, ecx
xor edx, edx
mov rsi, qword [rbp + 0x110]
sub rsi, qword [rbp + 0x118]
mov r8, qword [rbp + 0x120]
lea rax, [rax + rax*4]
shl rax, 4
add rax, r8
lea rcx, [rcx + rcx*4]
shl rcx, 4
add rcx, r8
lea rdx, [rdx + rdx*4]
shl rdx, 4
add rdx, r8
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], r8
mov qword [rsp + 0x238], rdx
lea rcx, [rsp + 0x220]
call fcn.1800ad120
add rax, rsi
cmp rax, qword [rbp + 0x140]
jae 0x18009eb3a
mov r14, qword [rbp + 0x1d0]
mov rsi, qword [r14]
lea r12, [r14 + 8]
test rsi, rsi
cmovne rsi, r12
je 0x18009e373
mov rax, qword [rbp + 0x88]
cmp rax, 3
ja 0x18009f810
cmp rax, 2
je 0x18009f810
lea rcx, [rsp + 0x220]
mov rdx, rsi
mov r8, rbx
call fcn.18006dee0
cmp dword [rsp + 0x220], 2
je 0x18009e373
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x860], rax
movdqu xmm0, xmmword [rsp + 0x220]
movdqu xmm1, xmmword [rsp + 0x230]
movdqa xmmword [rsp + 0x850], xmm1
movdqa xmmword [rsp + 0x840], xmm0
mov rdi, qword [rsp + 0x840]
test rdi, rdi
je 0x18009eab0
mov rax, qword [rsp + 0x848]
mov rbx, qword [rsp + 0x850]
test rax, rax
je 0x18009fa89
lea rcx, [rsp + 0x858]
movdqu xmm0, xmmword [rcx]
lea rcx, [rsp + 0x720]
movdqu xmmword [rcx], xmm0
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], rbx
cmp qword [rsi], 0
je 0x18009e640
cmp qword [rsi + 0x10], 0
mov rbx, qword [rsp + 0x58]
je 0x18009e654
mov rsi, qword [rsp + 0x720]
test rsi, rsi
jne 0x18009ead1
mov rax, qword [rsp + 0x710]
mov rdx, qword [rsp + 0x718]
lea rcx, [rsp + 0x728]
xor r8d, r8d
call qword [rax + 0x10]
jmp 0x18009e3b0
mov rcx, qword [rsi + 8]
mov rax, qword [rsi + 0x10]
call qword [rax + 0x28]
test al, al
mov rbx, qword [rsp + 0x58]
je 0x18009e603
mov rsi, qword [rsp + 0x720]
test rsi, rsi
je 0x18009eb67
mov rbx, qword [rsp + 0x728]
mov rax, qword [rbp + 0x88]
lea rcx, [rax - 2]
cmp rcx, 3
ja 0x18009e688
cmp rcx, 1
jne 0x1800a0165
movups xmm0, xmmword [rsp + 0x710]
movaps xmmword [rsp + 0x630], xmm0
test rax, rax
je 0x18009ed75
mov rax, qword [rsp + 0x50]
mov r8, qword [rax]
cmp rsi, r8
jae 0x18009efac
movdqu xmm0, xmmword [rsp + 0x710]
movdqa xmmword [rsp + 0x220], xmm0
mov qword [rsp + 0x230], rsi
mov qword [rsp + 0x238], rbx
mov rcx, qword [rsp + 0x78]
lea rdx, [rsp + 0x220]
call fcn.1800ae650
mov eax, 5
mov rbx, qword [rsp + 0x50]
jmp 0x18009f7a0
xor eax, eax
xor ecx, ecx
xor edx, edx
mov r8, qword [rsp + 0xb8]
mov r8, qword [r8]
lea rax, [rax + rax*4]
shl rax, 4
add rax, r8
lea rcx, [rcx + rcx*4]
shl rcx, 4
add rcx, r8
lea rdx, [rdx + rdx*4]
shl rdx, 4
add rdx, r8
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], r8
mov qword [rsp + 0x238], rdx
lea rcx, [rsp + 0x220]
call fcn.1800ad120
test rax, rax
jne 0x18009e3c6
mov rax, qword [rsp + 0x40]
cmp qword [rax], 2
jne 0x18009e3c6
mov rdx, qword [rbp + 0x190]
mov r8, qword [rbx]
lea rcx, [rsp + 0x220]
call fcn.1800a9e10
mov rsi, qword [rsp + 0x320]
cmp rsi, 4
je 0x18009f8ba
cmp esi, 3
je 0x18009f916
cmp esi, 2
je 0x1800a0165
mov r8d, 0x100
lea r14, [rsp + 0xe0]
mov rcx, r14
lea rdi, [rsp + 0x220]
mov rdx, rdi
call fcn.18015ab20
lea r15, [rsp + 0x260]
movups xmm0, xmmword [r15 + 0xc8]
movaps xmmword [rsp + 0x630], xmm0
mov r8d, 0x100
lea r12, [rsp + 0x440]
mov rcx, r12
mov rdx, r14
call fcn.18015ab20
movaps xmm0, xmmword [rsp + 0x630]
movaps xmmword [rsp + 0x5c0], xmm0
mov r8d, 0x100
mov rcx, rdi
mov rdx, r12
call fcn.18015ab20
mov qword [rsp + 0x630], rsi
movdqa xmm0, xmmword [rsp + 0x5c0]
lea rax, [rsp + 0x638]
movdqu xmmword [rax], xmm0
lea rcx, [rsp + 0x630]
mov rdx, rbx
call fcn.1800a77d0
test al, al
je 0x18009f94c
mov rax, qword [r15 + 0x88]
lea rcx, [rsp + 0xf8]
mov qword [rcx + 0x50], rax
movups xmm0, xmmword [r15 + 0x78]
movups xmmword [rcx + 0x40], xmm0
mov rax, qword [r15 + 0x70]
mov qword [rsp + 0x130], rax
movups xmm0, xmmword [r15 + 0x60]
movaps xmmword [rsp + 0x120], xmm0
movups xmm0, xmmword [r15 + 0x20]
movups xmm1, xmmword [r15 + 0x30]
movups xmm2, xmmword [r15 + 0x40]
movups xmm3, xmmword [r15 + 0x50]
movaps xmmword [rsp + 0x110], xmm3
movaps xmmword [rsp + 0x100], xmm2
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0xe0], xmm0
movzx ebx, byte [rsp + 0x2f8]
mov rdi, qword [rsp + 0x220]
mov r14, qword [rsp + 0x228]
movups xmm0, xmmword [r15 - 0x30]
movups xmm1, xmmword [r15 - 0x20]
movups xmm2, xmmword [r15 - 0x10]
movups xmm3, xmmword [r15]
movaps xmmword [rsp + 0x840], xmm0
movaps xmmword [rsp + 0x850], xmm1
movaps xmmword [rsp + 0x860], xmm2
movaps xmmword [rsp + 0x870], xmm3
movups xmm0, xmmword [r15 + 0x10]
movaps xmmword [rsp + 0x880], xmm0
mov r15, qword [rsp + 0x2f0]
movaps xmm0, xmmword [rsp + 0x140]
lea rax, [rsp + 0x858]
movups xmmword [rax + 0x98], xmm0
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [rax + 0x88], xmm0
movaps xmm0, xmmword [rsp + 0x120]
movups xmmword [rax + 0x78], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movaps xmm2, xmmword [rsp + 0x100]
movaps xmm3, xmmword [rsp + 0x110]
movups xmmword [rax + 0x68], xmm3
movups xmmword [rax + 0x58], xmm2
movups xmmword [rax + 0x48], xmm1
movups xmmword [rax + 0x38], xmm0
mov rcx, qword [rsp + 0x40]
cmp dword [rcx], 2
je 0x18009e98e
call fcn.1800810e0
mov rcx, qword [rsp + 0x40]
mov qword [rcx], rsi
movaps xmm0, xmmword [rsp + 0x5c0]
mov rax, qword [rsp + 0xa0]
movups xmmword [rax], xmm0
mov r8d, 0xc0
lea rcx, [rsp + 0x710]
lea rdx, [rsp + 0x840]
call fcn.18015ab20
lea rax, [rsp + 0x300]
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
lea rax, [rsp + 0x947]
movdqu xmmword [rax], xmm0
movdqu xmmword [rax + 0x10], xmm1
cmp rdi, 3
je 0x18009f973
cmp rdi, 4
je 0x18009f994
mov rax, qword [rsp + 0x95f]
mov qword [rsp + 0x23f], rax
movups xmm0, xmmword [rsp + 0x940]
movups xmm1, xmmword [rsp + 0x950]
movaps xmmword [rsp + 0x230], xmm1
movaps xmmword [rsp + 0x220], xmm0
mov qword [rsp + 0xa40], rdi
mov qword [rsp + 0xa48], r14
mov r8d, 0xc0
lea rcx, [rsp + 0xa50]
lea rdx, [rsp + 0x710]
call fcn.18015ab20
mov qword [rsp + 0xb10], r15
mov byte [rsp + 0xb18], bl
lea rax, [rsp + 0x260]
movdqu xmm0, xmmword [rax - 0x39]
movdqu xmm1, xmmword [rax - 0x29]
movdqa xmmword [rsp + 0xf0], xmm1
movdqa xmmword [rsp + 0xe0], xmm0
cmp qword [rsp + 0xe0], 0
je 0x18009f101
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x18009f11c
mov ecx, 1
mov rdx, rax
jmp 0x18009f527
mov rcx, rbp
call fcn.1800ae160
mov bl, 1
test rax, rax
jne 0x1800a0286
test rdi, rdi
je 0x18009f7bb
jmp 0x18009f7ee
mov rbx, qword [rsp + 0x728]
mov rax, qword [rbp + 0x88]
lea rcx, [rax - 2]
cmp rcx, 3
ja 0x18009eaf4
cmp rcx, 1
jne 0x1800a0165
movups xmm0, xmmword [rsp + 0x710]
movaps xmmword [rsp + 0x630], xmm0
test rax, rax
je 0x18009ebab
mov rdx, qword [rsp + 0x50]
mov rax, qword [rdx]
mov rcx, rax
sub rcx, rsi
jae 0x18009ec91
mov qword [rdx], 0
mov ecx, 1
lea rdx, [rsp + 0x710]
jmp 0x18009ec9e
mov rcx, rbp
mov rdx, rbx
call fcn.1800ad260
mov rcx, rax
call fcn.1800ae070
test rax, rax
jne 0x18009e373
mov rsi, rdx
test rdx, rdx
je 0x18009e3b0
jmp 0x18009fb45
mov rcx, rbp
call fcn.1800ae160
test rax, rax
jne 0x1800a0328
mov rax, qword [rsp + 0x710]
mov rdx, qword [rsp + 0x718]
mov r8, qword [rsp + 0x720]
lea rcx, [rsp + 0x728]
call qword [rax + 0x10]
mov bl, 1
test rdi, rdi
je 0x18009f7bb
jmp 0x18009f7ee
mov qword [rsp + 0x3e0], rsi
movdqa xmmword [rsp + 0x440], xmm6
mov dword [rsp + 0x450], 0
lea rax, [rsp + 0x440]
mov qword [rsp + 0x560], rax
lea rax, [rsp + 0x3e0]
mov qword [rsp + 0x940], rax
lea rax, [0x180028570]
mov qword [rsp + 0x948], rax
lea rax, str.description___is_deprecated__use_Display
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 2
lea rax, [rsp + 0x940]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 1
mov qword [rsp + 0x100], 0
lea rcx, [rsp + 0x560]
lea rdx, [0x1801aeb98]
lea r8, [rsp + 0xe0]
call fcn.180023ea0
test al, al
jne 0x1800a0165
mov rax, qword [rsp + 0x440]
lea rdx, [rsp + 0x450]
mov rcx, qword [rdx - 8]
mov qword [rsp + 0x940], rcx
mov ecx, dword [rdx]
mov dword [rsp + 0x948], ecx
mov ecx, 2
lea rdx, [rsp + 0x630]
jmp 0x18009ec9e
mov qword [rdx], rcx
lea rdx, [rsp + 0x710]
xor ecx, ecx
movdqu xmm0, xmmword [rdx]
movdqa xmmword [rsp + 0xe0], xmm0
lea r8, [rsp + 0x260]
movdqu xmmword [r8 - 0x38], xmm0
mov qword [rsp + 0x238], rsi
mov qword [rsp + 0x240], rbx
mov rdx, qword [rsp + 0x940]
mov qword [r8 - 0x10], rdx
mov edx, dword [rsp + 0x948]
mov dword [r8 - 8], edx
mov edx, dword [rsp + 0x94c]
mov dword [r8 - 4], edx
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x248], rax
lea rax, [0x1801c12f6]
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x268], 2
mov rcx, qword [rsp + 0x78]
lea rdx, [rsp + 0x220]
call fcn.1800ae2d0
cmp qword [rbp + 0x88], 0
je 0x18009ed65
cmp qword [rbp + 0x90], 0
jne 0x18009ed65
xor eax, eax
cmp byte [rbp + 0x98], 0
sete al
xor rax, 5
movdqu xmm0, xmmword [rsp + 0x5c0]
mov rcx, qword [rsp + 0x50]
movdqu xmmword [rcx], xmm0
mov qword [rbp + 0x88], rax
xor ebx, ebx
test rdi, rdi
je 0x18009f7bb
jmp 0x18009f7ee
mov qword [rsp + 0x560], rsi
movdqa xmmword [rsp + 0x440], xmm6
mov dword [rsp + 0x450], 0
lea rax, [rsp + 0x440]
mov qword [rsp + 0x5c0], rax
lea rax, [rsp + 0x560]
mov qword [rsp + 0x940], rax
lea rax, [0x180028570]
mov qword [rsp + 0x948], rax
lea rax, str.description___is_deprecated__use_Display
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 2
lea rax, [rsp + 0x940]
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], 1
mov qword [rsp + 0x240], 0
lea rcx, [rsp + 0x5c0]
lea rdx, [0x1801aeb98]
lea r8, [rsp + 0x220]
call fcn.180023ea0
test al, al
jne 0x1800a0165
mov eax, dword [rsp + 0x450]
lea rcx, [rsp + 0x100]
mov dword [rcx + 0x10], eax
movaps xmm0, xmmword [rsp + 0x440]
movups xmmword [rcx], xmm0
movdqa xmm0, xmmword [rsp + 0x630]
movdqa xmmword [rsp + 0xe0], xmm0
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xf8], rbx
lea rax, [0x1801c12ea]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], 7
cmp byte [rbp + 0x148], 0
je 0x18009f154
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x260], rax
movaps xmm0, xmmword [rsp + 0xe0]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xf8]
movaps xmm1, xmmword [rsp + 0x100]
mov rdx, qword [rsp + 0x110]
mov qword [rsp + 0x250], rdx
mov rdx, qword [rsp + 0x118]
mov qword [rsp + 0x258], rdx
movaps xmmword [rsp + 0x240], xmm1
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x238], rcx
movaps xmmword [rsp + 0x220], xmm0
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x138]
cmp rax, rcx
mov rbx, qword [rsp + 0x50]
jne 0x18009ef31
mov rcx, qword [rsp + 0xb8]
call fcn.1800ae5b0
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
add rdx, rax
cmp rdx, rcx
mov r8d, 0
cmovae r8, rcx
sub rdx, r8
mov rcx, qword [rbp + 0x120]
lea rdx, [rdx + rdx*4]
shl rdx, 4
mov qword [rcx + rdx], 2
movdqa xmm0, xmmword [rsp + 0x220]
movdqa xmm1, xmmword [rsp + 0x230]
movaps xmm2, xmmword [rsp + 0x240]
movaps xmm3, xmmword [rsp + 0x250]
movdqu xmmword [rcx + rdx + 8], xmm0
movdqu xmmword [rcx + rdx + 0x18], xmm1
movups xmmword [rcx + rdx + 0x28], xmm2
movups xmmword [rcx + rdx + 0x38], xmm3
mov r8, qword [rsp + 0x260]
mov qword [rcx + rdx + 0x48], r8
jmp 0x18009f0f2
jne 0x18009efec
movdqu xmm0, xmmword [rsp + 0x710]
movdqa xmmword [rsp + 0x220], xmm0
mov qword [rsp + 0x230], rsi
mov qword [rsp + 0x238], rbx
mov rcx, qword [rsp + 0x78]
lea rdx, [rsp + 0x220]
call fcn.1800ae650
mov rbx, qword [rsp + 0x50]
jmp 0x18009f790
movdqu xmm0, xmmword [rsp + 0x710]
movdqa xmmword [rsp + 0x440], xmm0
mov qword [rsp + 0x450], rsi
mov qword [rsp + 0x458], rbx
mov qword [rsp + 0x460], r8
cmp byte [rbp + 0x148], 0
je 0x18009f46f
mov rax, qword [rsp + 0x460]
mov qword [rsp + 0x240], rax
movaps xmm0, xmmword [rsp + 0x440]
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x458]
mov qword [rsp + 0x238], rax
movaps xmmword [rsp + 0x220], xmm0
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x138]
cmp rax, rcx
mov rbx, qword [rsp + 0x50]
jne 0x18009f096
mov rcx, qword [rsp + 0xb8]
call fcn.1800ae5b0
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
add rdx, rax
cmp rdx, rcx
mov r8d, 0
cmovae r8, rcx
sub rdx, r8
mov rcx, qword [rbp + 0x120]
lea rdx, [rdx + rdx*4]
shl rdx, 4
mov qword [rcx + rdx], 1
movdqa xmm0, xmmword [rsp + 0x220]
movdqa xmm1, xmmword [rsp + 0x230]
movdqu xmmword [rcx + rdx + 8], xmm0
movdqu xmmword [rcx + rdx + 0x18], xmm1
mov r8, qword [rsp + 0x240]
mov qword [rcx + rdx + 0x28], r8
inc rax
mov qword [rbp + 0x138], rax
jmp 0x18009f790
mov rcx, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xf0]
call qword [rax + 0x28]
test al, al
je 0x18009f44b
mov rsi, qword [rbp + 0x1d0]
cmp qword [rsi], 0
mov rbx, qword [rsp + 0x58]
je 0x18009f137
lea rcx, [rsi + 8]
call fcn.180077ba0
mov qword [rsi], 0
mov r9d, 2
mov sil, 1
mov rax, qword [rsp + 0xd0]
jmp 0x18009f5ae
movzx eax, byte [rsp + 0x112]
movzx ecx, byte [rsp + 0x113]
mov edx, ecx
sub dl, al
movzx r8d, dl
add r8, rsi
setb r9b
jb 0x1800a0165
mov r10, r8
add r10, 7
jb 0x1800a0165
mov rdx, qword [rbp + 0x118]
test rdx, rdx
je 0x18009f209
mov r11, qword [rbp + 0x108]
mov r15, qword [rbp + 0x110]
sub r11, r15
cmp r11, r10
jae 0x18009f209
sub r15, rdx
jb 0x1800a0165
mov qword [rbp + 0x110], 0
je 0x18009f1fe
mov rcx, qword [rbp + 0x100]
add rdx, rcx
mov r8, r15
call fcn.18015ab20
mov qword [rbp + 0x110], r15
movzx eax, byte [rsp + 0x112]
movzx ecx, byte [rsp + 0x113]
mov rsi, qword [rsp + 0xf0]
mov edx, ecx
sub dl, al
movzx r8d, dl
add r8, rsi
setb r9b
mov qword [rbp + 0x118], 0
test r9b, 1
je 0x18009f255
jmp 0x1800a0165
mov rdx, r15
mov r8, qword [rsp + 0x120]
sub r8, rdx
jb 0x1800a0165
add qword [rsp + 0x118], rdx
mov qword [rsp + 0x120], r8
mov edx, ecx
sub dl, al
movzx r8d, dl
add r8, rsi
jb 0x1800a0165
test r8, r8
je 0x18009f280
cmp cl, al
jne 0x18009f29d
mov rbx, r13
mov r13, qword [rsp + 0xe8]
mov r15, rsi
test r15, r15
jne 0x18009f2ce
jmp 0x18009f420
mov rbx, r13
mov r13, qword [rsp + 0x118]
mov r15, qword [rsp + 0x120]
test r15, r15
jne 0x18009f2ce
jmp 0x18009f420
jb 0x1800a0165
cmp cl, 0x12
ja 0x1800a0165
mov rbx, r13
movzx r15d, cl
movzx r13d, al
sub r15, r13
lea rax, [rsp + 0x100]
add r13, rax
test r15, r15
je 0x18009f420
mov rax, qword [rbp + 0x108]
mov rsi, qword [rbp + 0x110]
sub rax, rsi
cmp rax, r15
jb 0x18009f404
mov rcx, qword [rbp + 0x100]
add rcx, rsi
mov rdx, r13
mov r8, r15
call fcn.18015ab20
add rsi, r15
mov qword [rbp + 0x110], rsi
movzx eax, byte [rsp + 0x112]
movzx ecx, byte [rsp + 0x113]
mov edx, ecx
sub dl, al
movzx r8d, dl
mov rsi, qword [rsp + 0xf0]
mov r9, r8
add r9, rsi
jb 0x1800a0165
mov r13, rbx
je 0x18009f220
mov rdx, r15
sub rdx, r9
jbe 0x18009f355
cmp cl, al
jne 0x18009f366
mov r10, r9
sub rsi, r10
jae 0x18009f380
jmp 0x1800a0165
cmp cl, al
jne 0x18009f3a6
mov rdx, r15
sub rsi, rdx
jae 0x18009f3c0
jmp 0x1800a0165
mov r10, r9
sub r10, r8
jbe 0x18009f3d5
mov byte [rsp + 0x112], cl
mov eax, ecx
sub rsi, r10
jb 0x1800a0165
mov qword [rsp + 0xf0], rsi
add qword [rsp + 0xe8], r10
mov r8, qword [rsp + 0x120]
sub r8, rdx
jae 0x18009f234
jmp 0x1800a0165
mov rdx, r15
sub rdx, r8
jbe 0x18009f3f5
mov byte [rsp + 0x112], cl
mov eax, ecx
sub rsi, rdx
jb 0x1800a0165
mov qword [rsp + 0xf0], rsi
add qword [rsp + 0xe8], rdx
jmp 0x18009f244
add al, r9b
mov byte [rsp + 0x112], al
mov r8, qword [rsp + 0x120]
sub r8, rdx
jae 0x18009f234
jmp 0x1800a0165
add al, r15b
mov byte [rsp + 0x112], al
jmp 0x18009f244
mov rcx, qword [rsp + 0x78]
mov rdx, rsi
mov r8, r15
call fcn.18016ab70
mov rsi, qword [rbp + 0x110]
jmp 0x18009f2e8
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
lea rcx, [rsp + 0xf8]
mov r8, rsi
call qword [rax + 0x10]
mov r13, rbx
mov rbx, qword [rsp + 0x50]
jmp 0x18009f790
cmp qword [rsp + 0xe0], 0
je 0x18009f4f4
mov ecx, 1
mov rax, qword [rsp + 0xf0]
mov rdx, rax
jmp 0x18009f527
cmp rsi, r8
mov rcx, rbp
mov rbp, r8
cmovb rbp, rsi
mov rdx, qword [rcx + 0x118]
test rdx, rdx
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0xd8], r13
je 0x18009f4d2
mov rax, qword [rcx + 0x108]
mov r15, qword [rcx + 0x110]
sub rax, r15
cmp rax, rbp
jae 0x18009f4d2
sub r15, rdx
jb 0x1800a0165
mov rbx, qword [rsp + 0x70]
mov qword [rbx + 0x110], 0
jne 0x18009f695
xor r15d, r15d
jmp 0x18009f6b4
mov r13, qword [rsp + 0x448]
test rbp, rbp
je 0x18009f76a
mov rax, qword [rsp + 0x70]
mov r15, qword [rax + 0x110]
jmp 0x18009f6e7
mov rdx, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xf0]
lea rcx, [rsp + 0x220]
call qword [rax + 0x30]
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x220]
mov rax, qword [rsp + 0x228]
test rcx, rcx
sete cl
cmp rdx, rax
setne bl
or bl, cl
mov rcx, qword [rsp + 0xd0]
cmove rcx, rax
mov rax, rcx
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x230], xmm1
movaps xmmword [rsp + 0x220], xmm0
mov rsi, qword [rbp + 0x1d0]
cmp qword [rsi], 0
je 0x18009f580
lea rcx, [rsi + 8]
mov rdi, rax
call fcn.180077ba0
mov rax, rdi
movzx r9d, bl
mov qword [rsi], 1
movdqa xmm0, xmmword [rsp + 0x220]
movdqa xmm1, xmmword [rsp + 0x230]
movdqu xmmword [rsi + 8], xmm0
movdqu xmmword [rsi + 0x18], xmm1
xor esi, esi
mov rbx, qword [rsp + 0x58]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x220]
mov rdx, rbp
lea r8, [rsp + 0xa40]
call fcn.1800aa1e0
mov rax, qword [rsp + 0x220]
cmp rax, 2
je 0x18009f67a
mov rdx, qword [rsp + 0x228]
movzx ecx, byte [rsp + 0x230]
test rax, rax
je 0x18009f61c
test rdx, rdx
jne 0x18009f61c
xor eax, eax
test cl, cl
sete al
xor rax, 5
mov rdx, qword [rsp + 0x210]
movzx ecx, byte [rsp + 0xc0]
jmp 0x18009f64b
lea r9, [rsp + 0x260]
mov r8d, dword [r9 - 0x2f]
mov r9d, dword [r9 - 0x2c]
mov dword [rsp + 0x443], r9d
mov dword [rsp + 0x440], r8d
mov qword [rsp + 0x210], rdx
mov byte [rsp + 0xc0], cl
mov qword [rbp + 0x88], rax
mov qword [rbp + 0x90], rdx
mov byte [rbp + 0x98], cl
mov eax, dword [rsp + 0x440]
mov ecx, dword [rsp + 0x443]
mov rdx, qword [rsp + 0x218]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
test sil, sil
je 0x18009e3b0
lea rcx, [rsp + 0xe0]
call fcn.180077ba0
jmp 0x18009e3b0
mov rcx, qword [rbx + 0x100]
add rdx, rcx
mov r13, r8
mov r8, r15
call fcn.18015ab20
mov r8, r13
mov qword [rbx + 0x110], r15
mov qword [rbx + 0x118], 0
mov r13, qword [rsp + 0x448]
jmp 0x18009f6e7
mov rcx, qword [rsp + 0x78]
mov rdx, r15
mov r8, rbp
call fcn.18016ab70
mov rax, qword [rsp + 0x70]
mov r15, qword [rax + 0x110]
jmp 0x18009f700
mov qword [rsp + 0x60], r8
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x108]
sub rax, r15
cmp rax, rbp
jb 0x18009f6c9
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rbx + 0x100]
add rcx, r15
mov rdx, r13
mov r8, rbp
call fcn.18015ab20
add r15, rbp
mov qword [rbx + 0x110], r15
mov r8, qword [rsp + 0x60]
sub r8, rbp
jb 0x1800a0165
sub rsi, rbp
mov rbx, qword [rsp + 0x50]
jb 0x1800a0165
add r13, rbp
cmp rsi, r8
mov rbp, r8
cmovb rbp, rsi
test rbp, rbp
jne 0x18009f6e7
mov qword [rsp + 0x460], r8
mov qword [rsp + 0x450], rsi
mov qword [rsp + 0x448], r13
mov rax, qword [rsp + 0x440]
lea rcx, [rsp + 0x458]
mov rdx, r13
mov r8, rsi
call qword [rax + 0x10]
mov r13, qword [rsp + 0xd8]
mov rbp, qword [rsp + 0x70]
xor eax, eax
cmp byte [rbp + 0x98], 0
sete al
xor rax, 5
movdqu xmm0, xmmword [rsp + 0x220]
movdqu xmmword [rbx], xmm0
mov qword [rbp + 0x88], rax
mov bl, 1
test rdi, rdi
jne 0x18009f7ee
cmp qword [rsp + 0x840], 0
je 0x18009f7ee
mov rax, qword [rsp + 0x848]
test rax, rax
je 0x18009f824
mov rdx, qword [rsp + 0x850]
mov r8, qword [rsp + 0x858]
lea rcx, [rsp + 0x860]
call qword [rax + 0x10]
test bl, bl
je 0x18009e3a2
cmp qword [r14], 0
mov rbx, qword [rsp + 0x58]
je 0x18009f818
nop word cs:[rax + rax]
mov rcx, r12
call fcn.180077ba0
mov qword [r14], 0
jmp 0x18009e3b0
mov rsi, qword [rsp + 0x850]
mov r15, qword [rsi + 0x58]
test r15, r15
je 0x18009f862
mov rdi, qword [rsi + 0x60]
mov rcx, r15
call qword [rdi]
cmp qword [rdi + 8], 0
je 0x18009f862
cmp qword [rdi + 0x10], 0x11
jb 0x18009f850
mov r15, qword [r15 - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, r15
call qword [sym.imp.kernel32.dll_HeapFree]
cmp dword [rsi], 2
je 0x18009f881
cmp qword [rsi + 0x18], 0
je 0x18009f881
mov r8, qword [rsi + 0x10]
mov rcx, qword [0x1801fd960]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
test bl, bl
jne 0x18009f7f6
jmp 0x18009e3a2
cmp byte [rbp + 0xca], 0
je 0x18009f99e
call fcn.18004e170
mov rsi, rax
jmp 0x18009f9a0
mov rax, qword [rbp + 0x198]
mov ecx, 1
xchg qword [rax + 0x10], rcx
cmp rcx, 2
jb 0x18009f994
je 0x18009f8e5
cmp rcx, 3
je 0x18009f994
jmp 0x1800a0165
mov cl, 1
xchg byte [rax + 0x28], cl
test cl, cl
jne 0x18009f8e5
mov rdx, qword [rax + 0x18]
mov rcx, qword [rax + 0x20]
mov qword [rax + 0x18], 0
mov r8d, 0
xchg byte [rax + 0x28], r8b
test rdx, rdx
je 0x18009f994
call qword [rdx + 8]
jmp 0x18009f994
mov r8d, 0x100
lea rcx, [rsp + 0x440]
lea rdx, [rsp + 0xe0]
call fcn.18015ab20
movdqu xmm0, xmmword [rsp + 0x630]
movdqa xmmword [rsp + 0x5c0], xmm0
mov byte [rbp + 0x1a0], 1
jmp 0x18009f973
lea rcx, [rsp + 0x630]
call fcn.1800810e0
lea rcx, [rsp + 0x220]
call fcn.180078660
lea rcx, [rsp + 0x300]
call fcn.180077ba0
mov byte [rbp + 0x1d8], 1
mov qword [rbp + 0x70], 4
mov qword [rbp + 0x88], 5
mov byte [rbp + 0xca], 2
mov rbx, qword [rsp + 0x58]
jmp 0x18009e373
xor esi, esi
mov rcx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x30]
mov qword [rbp + 0x70], 4
mov byte [rbp + 0xca], 2
test rsi, rsi
je 0x18009e365
jmp 0x18009fb4a
cmp esi, 6
jne case.default.0x18009f9df
mov eax, 3
lea rcx, [0x1800a0578]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov byte [rsp + 0xe0], sil
lea rax, [rsp + 0x441]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xe1], xmm0
movups xmmword [rsp + 0xf1], xmm1
mov rax, qword [rax + 0x1f]
mov qword [rsp + 0x100], rax
mov rcx, qword [rbp + 0xc0]
call fcn.180051110
mov rdi, rax
mov r14d, 2
test rax, rax
je 0x18009fb8e
movzx eax, sil
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x18009fd49
test rax, rax
je 0x18009fd49
cmp eax, 1
jne case.default.0x18009fa87
lea rcx, [rsp + 0x100]
mov rax, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xf8]
call qword [rax + 0x10]
lea rax, [0x1800a0578]
movsxd rcx, dword [rax + r14*4]
add rcx, rax
jmp rcx
movzx eax, byte [0x1801fd9d8]
mov rcx, qword [0x1801fd960]
test rcx, rcx
jne 0x18009fab5
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov rcx, rax
mov qword [0x1801fd960], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov rsi, rax
mov qword [rax], 0
mov word [rax + 0x10], 1
movzx eax, byte [0x1801fd9d8]
mov rcx, qword [0x1801fd960]
test rcx, rcx
jne 0x18009fb08
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0525
mov rcx, rax
mov qword [0x1801fd960], rax
mov r8d, 8
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0525
mov qword [rax], rbx
mov qword [rsi], rax
lea rax, [0x1801c0be8]
mov qword [rsi + 8], rax
cmp qword [r14], 0
je 0x18009fb3e
mov rcx, r12
call fcn.180077ba0
mov qword [r14], 0
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x220], 3
lea rdx, [rsp + 0x220]
call fcn.1800a06b0
mov rdi, rax
test rax, rax
jne case.0x18009fd57.4
jmp case.0x18009fd57.2
mov rax, qword [rbx]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx + 0x10]
jmp case.0x18009fd32.3
movzx esi, byte [rsp + 0xe0]
cmp rsi, 2
je 0x18009fc64
cmp esi, 1
je 0x18009fc64
test rsi, rsi
jne 0x18009fc75
lea rax, [rsp + 0xe8]
jmp 0x18009fc6c
cmp byte [rbp + 0x1d8], 0
jne 0x18009fbd2
cmp dword [rbp + 0x70], 4
jne case.0x18009fd32.3
mov rdi, qword [rbp + 8]
cmp qword [rbp], 0
mov qword [rbp], 0
je 0x18009fe93
mov rsi, qword [rbp + 0xb8]
mov qword [rbp + 0xb8], 0
test rsi, rsi
je case.0x18009fd57.3
test rdi, rdi
je 0x18009fb4a
mov rax, qword [rdi + 0x30]
nop word cs:[rax + rax]
mov rcx, rax
test cl, 4
jne 0x18009fc4d
mov rdx, rcx
or rdx, 2
mov rax, rcx
lock cmpxchg qword [rdi + 0x30], rdx
jne 0x18009fc20
and ecx, 5
cmp ecx, 1
jne 0x18009fc4d
mov rax, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x28]
call qword [rax + 0x10]
lock dec qword [rdi]
jne 0x18009fb45
mov rcx, rdi
call fcn.1800a0590
jmp 0x18009fb45
lea rax, [rsp + 0xe4]
cmp dword [rax], 0
je 0x18009fd34
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x240], rax
movups xmm0, xmmword [rsp + 0xe0]
movups xmm1, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x230], xmm1
movaps xmmword [rsp + 0x220], xmm0
lea rcx, [rsp + 0x220]
call fcn.18004d9d0
mov rdi, rax
mov r14d, 2
jmp 0x18009fd49
mov rax, qword [rsp + 0xe8]
mov ecx, eax
and ecx, 3
lea rdx, [rcx - 2]
cmp rdx, 2
jb 0x18009fd49
test rcx, rcx
je 0x18009fd49
lea rsi, [rax - 1]
mov rbx, qword [rax - 1]
mov r15, qword [rax + 7]
mov rcx, rbx
call qword [r15]
cmp qword [r15 + 8], 0
je 0x18009fd12
cmp qword [r15 + 0x10], 0x11
jb case.default.0x18009fd32
mov rbx, qword [rbx - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
lea rax, [0x1800a0578]
movsxd rcx, dword [rax + r14*4]
add rcx, rax
jmp rcx
xor r14d, r14d
movzx eax, sil
lea rcx, [rax - 2]
cmp rcx, 2
jae case.default.0x18009fd57
sti
cld
invalid
invalid
sti
cld
invalid
lea rax, [0x1800a0578]
movsxd rcx, dword [rax + r14*4]
add rcx, rax
jmp rcx
mov rsi, qword [r13]
mov qword [r13], 3
cmp rsi, 2
jae 0x1800a0536
mov qword [rsp + 0xb40], rsi
lea rcx, [rsp + 0xb48]
mov r8d, 0x1d8
mov rbx, qword [rsp + 0x5b8]
mov rdx, rbx
call fcn.18015ab20
mov qword [rsp + 0x220], rsi
lea rcx, [rsp + 0x228]
mov r8d, 0x170
mov rdx, rbx
call fcn.18015ab20
lea rdx, [rsp + 0x2f0]
lea rcx, [rsp + 0xe0]
mov r8d, 0xa8
call fcn.18015ab20
mov rbx, qword [rsp + 0x160]
mov r12, qword [rsp + 0x168]
mov rsi, qword [rsp + 0x178]
test sil, 1
jne 0x18009fdf8
lea r15, [0x1801c4380]
jmp 0x18009feed
mov r15, qword [rsp + 0x170]
shr rsi, 5
sub rbx, rsi
lea r14, [rsi + r12]
cmp r12, r15
jne 0x18009fe35
test r14, r14
je 0x18009febc
test bl, 1
jne 0x18009fed1
mov rax, rbx
or rax, 1
lea r15, [0x1801adfc8]
jmp 0x18009fedb
movzx eax, byte [0x1801fd9d8]
mov rcx, qword [0x1801fd960]
test rcx, rcx
jne 0x18009fe61
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov rcx, rax
mov qword [0x1801fd960], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
add r15, rsi
mov qword [rax], rbx
mov qword [rax + 8], r15
mov qword [rax + 0x10], 1
lea r15, [0x180176280]
jmp 0x18009fedb
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
mov rdx, rbx
call qword [rax + 0x30]
test rax, rax
mov rcx, qword [rsp + 0x40]
je 0x1800a01d5
mov al, 1
jmp 0x1800a017b
lea r15, [0x1801c0e28]
lea rbx, str.description___is_deprecated__use_Display
xor eax, eax
xor r14d, r14d
jmp 0x18009fedb
lea r15, [0x1801adfe0]
mov rax, rbx
mov r12, r14
sub r12, rsi
jb 0x1800a0165
add rbx, rsi
mov rsi, rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x450], rax
movups xmm0, xmmword [rsp + 0xf8]
movaps xmmword [rsp + 0x440], xmm0
lea rcx, [rsp + 0x110]
call fcn.1800a2360
lea rcx, [rsp + 0x220]
call fcn.1800a24b0
movups xmm0, xmmword [rsp + 0xcb8]
movups xmm1, xmmword [rsp + 0xcc8]
movups xmm2, xmmword [rsp + 0xcd8]
movups xmmword [rsp + 0x478], xmm0
movups xmmword [rsp + 0x488], xmm1
movups xmmword [rsp + 0x498], xmm2
mov qword [rsp + 0x458], r15
mov qword [rsp + 0x460], rbx
mov qword [rsp + 0x468], r12
mov qword [rsp + 0x470], rsi
cmp byte [rsp + 0xd08], 3
je 0x18009ff8e
lea rcx, [rsp + 0xce8]
call fcn.1800a25c0
lea rbx, [rsp + 0x458]
mov rsi, qword [rsp + 0xd10]
cmp qword [rsi], 0
je 0x18009ffad
lea rcx, [rsi + 8]
call fcn.180077ba0
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
movaps xmm0, xmmword [rsp + 0x440]
movaps xmmword [rsp + 0x820], xmm0
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x830], rax
movdqu xmm0, xmmword [rbx]
movdqu xmm1, xmmword [rbx + 0x10]
movdqa xmmword [rsp + 0xa20], xmm0
movdqa xmmword [rsp + 0xa30], xmm1
cmp dword [rsp + 0x478], 2
je 0x1800a0011
lea rcx, [rsp + 0x478]
call fcn.1800810e0
lea rcx, [rsp + 0x490]
call fcn.18008d1f0
movzx eax, byte [0x1801fd9d8]
mov rcx, qword [0x1801fd960]
test rcx, rcx
jne 0x1800a004a
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800a0514
mov rcx, rax
mov qword [0x1801fd960], rax
mov r8d, 0x18
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800a0514
mov rcx, qword [rsp + 0x830]
mov qword [rax + 0x10], rcx
movaps xmm0, xmmword [rsp + 0x820]
movups xmmword [rax], xmm0
movdqa xmm0, xmmword [rsp + 0xa20]
movdqa xmm1, xmmword [rsp + 0xa30]
movdqu xmmword [rsp + 0x230], xmm0
movdqu xmmword [rsp + 0x240], xmm1
mov qword [rsp + 0x220], rax
lea rax, [0x1801c1668]
mov qword [rsp + 0x228], rax
sub byte [rdx], al
add byte [rax], al
sub byte [rdx], al
add byte [rax], al
lea rdx, [rsp + 0x220]
mov rcx, rdi
call fcn.18004fc40
xor edi, edi
mov rax, qword [r13]
lea rcx, [rax - 3]
cmp rcx, 2
jae 0x1800a00ee
mov qword [r13], 4
cmp eax, 4
je 0x1800a0165
test rdi, rdi
jne 0x1800a0103
jmp 0x1800a0171
mov rcx, r13
call fcn.1800a2700
mov qword [r13], 4
test rdi, rdi
je 0x1800a0171
mov rsi, qword [rdi]
test rsi, rsi
je 0x1800a0138
mov rbx, qword [rdi + 8]
mov rcx, rsi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x1800a0138
cmp qword [rbx + 0x10], 0x11
jb 0x1800a0126
mov rsi, qword [rsi - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [r13]
lea rcx, [rax - 3]
cmp rcx, 3
jae 0x1800a0169
mov qword [r13], 5
cmp eax, 5
jne 0x1800a0179
ud2
mov rcx, r13
call fcn.1800a2700
mov qword [r13], 5
xor eax, eax
movaps xmm6, xmmword [rsp + 0xd20]
movaps xmm7, xmmword [rsp + 0xd30]
movaps xmm8, xmmword [rsp + 0xd40]
movaps xmm9, xmmword [rsp + 0xd50]
movaps xmm10, xmmword [rsp + 0xd60]
movaps xmm11, xmmword [rsp + 0xd70]
movaps xmm12, xmmword [rsp + 0xd80]
movaps xmm13, xmmword [rsp + 0xd90]
add rsp, 0xda8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test rdx, rdx
je 0x1800a0308
mov rcx, rdx
call fcn.18004e370
mov rsi, rax
jmp 0x18009fb45
mov rax, qword [rbp + 0xb8]
mov ecx, 1
xchg qword [rax + 0x10], rcx
cmp rcx, 2
jb 0x1800a0239
je 0x1800a0211
cmp rcx, 3
je 0x1800a0239
jmp 0x1800a0165
mov cl, 1
xchg byte [rax + 0x28], cl
test cl, cl
jne 0x1800a0211
mov rdx, qword [rax + 0x18]
mov rcx, qword [rax + 0x20]
mov qword [rax + 0x18], 0
xor r8d, r8d
xchg byte [rax + 0x28], r8b
test rdx, rdx
je 0x1800a0239
call qword [rdx + 8]
mov rbx, qword [rbp + 0x88]
movzx eax, byte [rbx + 0x40]
test al, al
jne 0x1800a03ec
lea r15, [rbx + 0x10]
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
call qword [rdx]
mov rsi, rax
mov rdi, rdx
mov al, 1
xchg byte [rbx + 0x20], al
xor r14d, r14d
test al, al
cmove r14, r15
je 0x1800a03c8
mov rcx, rdi
call qword [rsi + 0x18]
jmp 0x1800a03ec
mov rsi, rax
cmp qword [rsp + 0x840], 0
je 0x18009fb30
mov rax, qword [rsp + 0x848]
test rax, rax
je 0x1800a0353
mov rdx, qword [rsp + 0x850]
mov r8, qword [rsp + 0x858]
lea rcx, [rsp + 0x860]
call qword [rax + 0x10]
jmp 0x18009fb30
lea rcx, [rsp + 0x840]
lea rdx, [rsp + 0xe0]
mov r8d, 0x100
call fcn.18015ab20
movdqu xmm0, xmmword [rsp + 0x440]
movdqa xmmword [rsp + 0x590], xmm0
xor eax, eax
lea rcx, [0x1800a0578]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rsi, qword [rbp + 0xb8]
mov qword [rbp + 0xb8], 0
test rsi, rsi
jne 0x18009fb4a
jmp case.0x18009fd57.2
mov rsi, rax
mov rax, qword [rsp + 0x710]
mov rdx, qword [rsp + 0x718]
mov r8, qword [rsp + 0x720]
lea rcx, [rsp + 0x728]
call qword [rax + 0x10]
jmp 0x18009fb30
mov rdi, qword [rsp + 0x850]
mov rbx, qword [rdi + 0x58]
test rbx, rbx
je 0x1800a0392
mov r15, qword [rdi + 0x60]
mov rcx, rbx
call qword [r15]
cmp qword [r15 + 8], 0
je 0x1800a0392
cmp qword [r15 + 0x10], 0x11
jb 0x1800a0380
mov rbx, qword [rbx - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp dword [rdi], 2
je 0x1800a03b1
cmp qword [rdi + 0x18], 0
je 0x1800a03b1
mov r8, qword [rdi + 0x10]
mov rcx, qword [0x1801fd960]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x18009fb30
mov rax, qword [r14]
test rax, rax
je 0x1800a03d7
mov rcx, qword [r14 + 8]
call qword [rax + 0x18]
mov qword [r14], rsi
mov qword [r14 + 8], rdi
xor eax, eax
xchg byte [r14 + 0x10], al
movzx eax, byte [rbx + 0x40]
test al, al
je 0x1800a041e
mov al, 1
xchg byte [rbx + 0x41], al
test al, al
je 0x1800a0407
xor eax, eax
lea rcx, [0x1800a0578]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
xor eax, eax
xchg byte [rbx + 0x41], al
xor eax, eax
lea rcx, [0x1800a0578]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov eax, 3
lea rcx, [0x1800a0578]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movaps xmm0, xmmword [rsp + 0x140]
movaps xmmword [rsp + 0x280], xmm0
movaps xmm0, xmmword [rsp + 0x130]
movaps xmmword [rsp + 0x270], xmm0
movaps xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x260], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movaps xmm2, xmmword [rsp + 0x100]
movaps xmm3, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x250], xmm3
movaps xmmword [rsp + 0x240], xmm2
movaps xmmword [rsp + 0x230], xmm1
movaps xmmword [rsp + 0x220], xmm0
mov rcx, rbp
call fcn.1800a21f0
movaps xmm0, xmmword [rsp + 0x280]
movups xmmword [rbp + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x270]
movups xmmword [rbp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x260]
movups xmmword [rbp + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x220]
movaps xmm1, xmmword [rsp + 0x230]
movaps xmm2, xmmword [rsp + 0x240]
movaps xmm3, xmmword [rsp + 0x250]
movups xmmword [rbp + 0x30], xmm3
movups xmmword [rbp + 0x20], xmm2
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
mov eax, 3
lea rcx, [0x1800a0578]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov ecx, 8
mov edx, 0x18
call fcn.180168710
ud2
mov ecx, 8
mov edx, 8
call fcn.180168710
ud2
mov rcx, rdi
call fcn.1800a22f0
ud2
mov ecx, 8
mov edx, 0x70
call fcn.180168710
ud2
mov ecx, 8
mov edx, 0x20
call fcn.180168710
ud2