Function at 0x180051270
Capabilities:
Check for software breakpoints
Encode data using xor
Encrypt data using speck
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1c88
call fcn.180157580
sub rsp, rax
movaps xmmword [rsp + 0x1c70], xmm13
movaps xmmword [rsp + 0x1c60], xmm12
movaps xmmword [rsp + 0x1c50], xmm11
movaps xmmword [rsp + 0x1c40], xmm10
movaps xmmword [rsp + 0x1c30], xmm9
movaps xmmword [rsp + 0x1c20], xmm8
movaps xmmword [rsp + 0x1c10], xmm7
movdqa xmmword [rsp + 0x1c00], xmm6
mov rbp, rdx
mov r14, rcx
lea r15, [rsp + 0xb8]
movzx eax, byte [r8 + 0x15]
mov byte [rsp + 0x7f], al
movzx eax, byte [r8 + 0x13]
mov byte [rsp + 0x5f], al
movzx eax, byte [r8 + 0x14]
mov byte [rsp + 0x2f], al
movzx eax, byte [r8 + 0x10]
mov byte [rsp + 0x7e], al
lea rax, [rsp + 0x307]
and rax, 0xfffffffffffffff8
lea rcx, [rsp + 0x300]
mov qword [rsp + 0x268], rax
sub rax, rcx
mov qword [rsp + 0x260], rax
pxor xmm6, xmm6
movaps xmm7, xmmword [0x180171720]
movdqa xmm8, xmmword [0x1801717b0]
movss xmm9, dword [0x180171730]
movdqa xmm10, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm11, xmmword [0x180171710]
movdqa xmm12, xmmword [0x180171c80]
movdqa xmm13, xmmword [0x180171c90]
mov qword [rsp + 0x230], r8
movzx eax, byte [r8 + 0x11]
mov byte [rsp + 0x3f], al
lea r11, [rsp + 0x200]
mov r12, qword [rdx + 8]
test r12, r12
je 0x180054dc9
mov rdi, qword [rbp]
xor edx, edx
jmp 0x1800513ac
inc rdx
cmp rdx, r12
jae 0x180054dc9
movzx r8d, byte [rdi + rdx]
cmp r8d, 0xa
je 0x1800513a0
cmp r8d, 0xd
jne 0x1800513f0
lea rax, [rdx + 1]
cmp rax, r12
jae 0x180054dc9
cmp byte [rdi + rdx + 1], 0xa
jne 0x180054dd5
add rdx, 2
cmp rdx, r12
jb 0x1800513ac
jmp 0x180054dc9
lea rax, [rdi + rdx]
mov rcx, r12
sub rcx, rdx
cmp rcx, 8
jae 0x1800514a2
cmp r12, rdx
je 0x180054dc9
cmp r8b, 0x48
jne case.default.0x180055052
cmp rcx, 2
jb 0x180054dc9
cmp byte [rax + 1], 0x54
jne case.default.0x180055052
cmp rcx, 3
jb 0x180054dc9
cmp byte [rax + 2], 0x54
jne case.default.0x180055052
cmp rcx, 4
jb 0x180054dc9
cmp byte [rax + 3], 0x50
jne case.default.0x180055052
cmp rcx, 5
jb 0x180054dc9
cmp byte [rax + 4], 0x2f
jne case.default.0x180055052
cmp rcx, 6
jb 0x180054dc9
cmp byte [rax + 5], 0x31
jne case.default.0x180055052
cmp rcx, 7
jb 0x180054dc9
cmp byte [rax + 6], 0x2e
mov ecx, 6
mov eax, 0
cmove rcx, rax
jne 0x180052123
jmp 0x180054dc9
mov rdx, qword [rax]
movq xmm0, rdx
movdqa xmm1, xmm0
punpcklbw xmm1, xmm6
pshuflw xmm1, xmm1, 0xe1
packuswb xmm1, xmm1
movd r8d, xmm1
cmp r8d, 0x50544854
jne case.default.0x180055052
movzx r8d, al
movd xmm1, r8d
punpcklbw xmm1, xmm1
pshuflw xmm1, xmm1, 0
pshufd xmm1, xmm1, 0
pand xmm1, xmm12
mov r8, rdx
shr r8, 0x20
shl r8d, 8
mov r9, rdx
shr r9, 0x28
movzx r9d, r9b
or r9d, r8d
movd xmm2, r9d
movdqa xmm3, xmm12
pandn xmm3, xmm2
por xmm3, xmm1
pcmpeqb xmm3, xmm13
punpcklbw xmm1, xmm3
pshuflw xmm1, xmm1, 0x60
pshufd xmm1, xmm1, 0x50
movmskpd r8d, xmm1
mov r9d, r8d
shr r9b, 1
je case.default.0x180055052
test r8b, 1
je case.default.0x180055052
shr rdx, 0x30
cmp dl, 0x2e
jne case.default.0x180055052
pextrw edx, xmm0, 3
shr edx, 8
cmp dl, 0x30
je 0x180051569
cmp edx, 0x31
jne case.default.0x180055052
mov dl, 2
jmp 0x18005156b
mov dl, 1
mov qword [rsp + 0x158], rdx
cmp rcx, 9
jb 0x180054dc9
cmp byte [rax + 8], 0x20
jne case.default.0x180055052
add rax, 9
lea rbx, [rcx - 9]
cmp byte [rsp + 0x5f], 0
je 0x1800515bb
cmp rcx, 9
je 0x180054dc9
test rax, rax
je 0x180054dc9
cmp byte [rax], 0x20
jne 0x1800515bb
inc rax
dec rbx
jne 0x1800515a9
jmp 0x180054dc9
test rbx, rbx
je 0x180054dc9
movzx ecx, byte [rax]
add cl, 0xd0
cmp cl, 9
ja case.0x180055052.3
cmp rbx, 2
jb 0x180054dc9
movzx edx, byte [rax + 1]
add dl, 0xd0
cmp dl, 9
ja case.0x180055052.3
cmp rbx, 3
jb 0x180054dc9
movzx r8d, byte [rax + 2]
add r8b, 0xd0
mov byte [rsp + 0x48], r8b
cmp r8b, 0xa
jae case.0x180055052.3
cmp rbx, 4
jb 0x180054dc9
movzx r9d, byte [rax + 3]
cmp r9d, 0xa
je 0x180051667
cmp r9d, 0xd
je 0x180051671
cmp r9d, 0x20
jne case.0x180055052.3
cmp byte [rsp + 0x5f], 0
je 0x180054a0a
cmp rbx, 5
jb 0x180054dc9
add rbx, 0xfffffffffffffffc
add rax, 4
cmp byte [rax], 0x20
jne 0x180054a12
inc rax
dec rbx
jne 0x180051651
jmp 0x180054dc9
add rax, 4
add rbx, 0xfffffffffffffffc
jmp 0x18005168d
cmp rbx, 4
jbe 0x180054dc9
cmp byte [rax + 4], 0xa
jne case.0x180055052.3
add rax, 5
add rbx, 0xfffffffffffffffb
xor r8d, r8d
mov qword [rsp + 0x68], r8
lea r9, str.description___is_deprecated__use_Display
mov qword [rsp + 0xc0], r9
test rbx, rbx
je 0x180054dc9
movzx ecx, cl
imul ecx, ecx, 0x64
movzx edx, dl
add edx, edx
lea edx, [rdx + rdx*4]
movzx r8d, byte [rsp + 0x48]
add r8d, edx
add r8d, ecx
mov qword [rsp + 0x1c8], r8
mov rdx, rbx
xor ecx, ecx
mov qword [rsp + 0x60], rcx
xor r13d, r13d
mov rcx, r13
shl rcx, 5
add rcx, rsp
add rcx, 0x300
mov qword [rsp + 0x150], rcx
mov rcx, rdx
mov qword [rsp + 0x48], rax
cmp byte [rsp + 0x2f], 0
je 0x18005179e
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
mov esi, 1
cmp eax, 0xa
je 0x180054b25
cmp eax, 0xd
je 0x180054b2c
lea rdx, [0x1801bbf28]
cmp byte [rax + rdx], 0
jne 0x1800517ce
test al, al
je 0x180052110
movzx eax, al
cmp eax, 0xa
je 0x180051786
cmp eax, 0xd
je 0x18005176b
cmp rcx, rsi
jbe 0x180054dc9
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + rsi]
inc rsi
test al, al
jne 0x180051740
jmp 0x180052110
cmp rcx, rsi
jbe 0x180054dc9
mov rax, qword [rsp + 0x48]
cmp byte [rax + rsi], 0xa
jne 0x180052110
inc rsi
add qword [rsp + 0x60], rsi
add qword [rsp + 0x48], rsi
sub rcx, rsi
jne 0x180051708
jmp 0x180054dc9
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
mov esi, 1
cmp eax, 0xa
je 0x180054b25
cmp eax, 0xd
je 0x180054b2c
lea rdx, [0x1801bbf28]
cmp byte [rax + rdx], 0
je 0x180052110
mov r9, rcx
sub r9, rsi
mov rax, qword [rsp + 0x48]
lea rdx, [rax + rsi]
inc rdx
cmp rcx, rsi
jbe 0x180054dc9
mov r10, rsi
mov rax, rdx
mov rdx, qword [rsp + 0x48]
movzx r8d, byte [rdx + rsi]
inc rsi
dec r9
lea rdx, [rax + 1]
lea r15, [0x1801bbf28]
cmp byte [r8 + r15], 0
lea r15, [rsp + 0xb8]
jne 0x1800517e0
mov rdx, rcx
sub rdx, rsi
mov qword [rsp + 0x40], rdx
cmp r8b, 0x3a
jne 0x180051854
add qword [rsp + 0x60], rsi
mov rax, qword [rsp + 0x48]
add rax, rsi
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x40], rax
test rax, rax
jne 0x1800518fe
jmp 0x180054dc9
cmp byte [rsp + 0x7e], 0
je 0x180051e4a
mov rdx, qword [rsp + 0x48]
add rdx, rsi
mov qword [rsp + 0x30], rdx
sub r10, rcx
xor edx, edx
cmp r8b, 0x20
je 0x180051899
mov r15, rbp
mov rbp, r11
movzx r11d, r8b
cmp r11d, 9
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
jne 0x180051e4c
lea r8, [r10 + rdx]
inc r8
test r8, r8
je 0x180054dc9
mov r8, qword [rsp + 0x30]
movzx r8d, byte [r8 + rdx]
inc rdx
cmp r8b, 0x3a
jne 0x180051871
mov rax, qword [rsp + 0x60]
add rax, rsi
add rax, rdx
mov qword [rsp + 0x60], rax
add qword [rsp + 0x30], rdx
sub r9, rdx
mov rax, r9
mov qword [rsp + 0x40], rax
test rax, rax
jne 0x1800518fe
jmp 0x180054dc9
add qword [rsp + 0x60], rcx
add qword [rsp + 0x30], rcx
sub r10, rcx
mov qword [rsp + 0x40], r10
je 0x180054dc9
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax]
cmp byte [rsp + 0x3f], 0
je 0x18005199a
xor r9d, r9d
mov r10, qword [rsp + 0x40]
lea rcx, [r9 + 1]
cmp al, 0x20
je 0x1800518e6
movzx edx, al
cmp edx, 9
je 0x1800518e6
lea r8, [0x1801ab8c9]
cmp byte [rdx + r8], 0
jne 0x1800519ce
cmp al, 0xa
je 0x180051970
cmp edx, 0xd
mov rdx, rcx
jne 0x180051f46
cmp r10, rdx
jbe 0x180054dc9
mov rax, qword [rsp + 0x30]
cmp byte [rax + r9 + 1], 0xa
mov r10, qword [rsp + 0x40]
jne 0x180054c89
add r9, 2
jmp 0x180051973
mov r9, rcx
cmp r9, r10
jae 0x180054dc9
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r9]
cmp eax, 9
mov r10, qword [rsp + 0x40]
je 0x180051919
cmp eax, 0x20
je 0x180051919
jmp 0x1800520bd
movzx r9d, al
mov ecx, 1
cmp r9d, 9
mov r10, qword [rsp + 0x40]
je 0x1800518e6
cmp r9d, 0x20
je 0x1800518e6
lea rdx, [0x1801ab8c9]
cmp byte [r9 + rdx], 0
je 0x180051f2d
mov r8, rcx
mov rax, qword [0x1801fa8c0]
test rax, rax
mov qword [rsp + 0x40], r10
jne 0x180051a7a
mov rcx, qword [0x1801fa988]
test rcx, rcx
je 0x180051a22
mov rax, qword [0x1801fa988]
test cx, cx
js 0x180051a59
test rax, rax
je 0x180051df0
and eax, 0x800
cmp rax, 1
mov ecx, 0
sbb rcx, rcx
or rcx, 1
shr rax, 0xb
jmp 0x180051a73
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18016ca00
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
mov rcx, rax
mov rax, qword [0x1801fa988]
test cx, cx
jns 0x1800519fe
test rax, rax
je 0x180051e1d
xor ecx, ecx
test eax, 0x800
sete cl
xor rcx, 3
mov rax, rcx
mov qword [0x1801fa8c0], rcx
cmp rax, 1
je 0x180051ae9
cmp rax, 2
je 0x180051b3e
cmp rax, 3
jne 0x180051bdf
mov rax, r10
sub rax, r8
jb 0x18005503c
cmp rax, 0x1f
jbe 0x180051b90
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r8]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18004c120
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
add r8, rax
cmp rax, 0x20
je 0x180051a94
jmp 0x180051bdf
mov rax, r10
sub rax, r8
jb 0x18005503c
cmp rax, 0x10
jb 0x180051bdf
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r8]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18004c0d0
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
add r8, rax
cmp rax, 0x10
je 0x180051ae9
jmp 0x180051bdf
mov rax, r10
sub rax, r8
jb 0x18005503c
cmp rax, 0x20
jb 0x180051bdf
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r8]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18004c120
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
add r8, rax
cmp rax, 0x20
je 0x180051b3e
jmp 0x180051bdf
mov rax, r10
sub rax, r8
jb 0x18005503c
cmp rax, 0x10
jb 0x180051bd2
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r8]
mov qword [rsp + 0x50], r8
call fcn.18004c0d0
mov r8, qword [rsp + 0x50]
add r8, rax
cmp rax, 0x10
lea r11, [rsp + 0x200]
mov r10, qword [rsp + 0x40]
je 0x180051b90
jmp 0x180051bdf
lea r11, [rsp + 0x200]
mov r10, qword [rsp + 0x40]
mov rdx, r8
cmp rdx, 0xfffffffffffffff7
ja 0x180051bf9
lea rcx, [rdx + 8]
cmp rcx, r10
ja 0x180051bf9
mov r8, rdx
jmp 0x180051c7d
cmp r10, rdx
jbe 0x180054dc9
mov r9, r10
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + rdx]
lea r8, [rdx + 1]
lea rcx, [0x1801ab8c9]
cmp byte [rax + rcx], 0
je 0x180051d22
cmp rdx, 0xfffffffffffffff6
mov r10, r9
ja 0x180051c35
lea rcx, [rdx + 9]
cmp rcx, r10
jbe 0x180051c7d
add rdx, 9
mov rcx, rdx
lea rdx, [rcx - 8]
cmp r10, rdx
jbe 0x180054dc9
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + rcx - 8]
lea r8, [0x1801ab8c9]
cmp byte [rax + r8], 0
je 0x180051d1b
inc rcx
cmp rdx, 0xfffffffffffffff6
mov r10, r9
ja 0x180051c3c
cmp rcx, r10
ja 0x180051c3c
mov r8, rcx
add r8, 0xfffffffffffffff8
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x50], r8
movq xmm0, qword [rax + r8]
movdqa xmmword [rsp + 0x290], xmm0
movzx eax, byte [rsp + 0x290]
lea r9, [0x1801ab8c9]
cmp byte [rax + r9], 0
je 0x180051d27
movd edx, xmm0
mov eax, edx
shr eax, 8
movzx r8d, al
cmp byte [r8 + r9], 0
je 0x180051d31
mov eax, edx
shr eax, 0x10
movzx r8d, al
cmp byte [r8 + r9], 0
je 0x180051d3c
shr edx, 0x18
cmp byte [rdx + r9], 0
je 0x180051d47
pextrw eax, xmm0, 2
movzx edx, al
cmp byte [rdx + r9], 0
je 0x180051d54
shr eax, 8
cmp byte [rax + r9], 0
je 0x180051d5f
mov r8, r9
pextrw eax, xmm0, 3
movzx edx, al
cmp byte [rdx + r9], 0
je 0x180051d6a
shr eax, 8
cmp byte [rax + r8], 0
mov rdx, rcx
jne 0x180051be2
mov r8, rcx
jmp 0x180051d73
add rcx, 0xfffffffffffffff9
mov r8, rcx
mov r10, r9
jmp 0x180051d73
mov r8, qword [rsp + 0x50]
inc r8
jmp 0x180051d73
mov r8, qword [rsp + 0x50]
add r8, 2
jmp 0x180051d73
mov r8, qword [rsp + 0x50]
add r8, 3
jmp 0x180051d73
mov r8, qword [rsp + 0x50]
add r8, 4
mov eax, edx
jmp 0x180051d73
mov r8, qword [rsp + 0x50]
add r8, 5
jmp 0x180051d73
mov r8, qword [rsp + 0x50]
add r8, 6
jmp 0x180051d73
mov r8, qword [rsp + 0x50]
add r8, 7
mov rcx, 0xffffffffffffffff
cmp al, 0xa
je 0x180051db5
movzx ecx, al
cmp ecx, 0xd
jne 0x180051ee0
cmp r10, r8
jbe 0x180054dc9
mov rdx, r8
mov rcx, qword [rsp + 0x30]
cmp byte [rcx + rdx], 0xa
jne 0x180054c89
mov rax, r10
mov r8, rdx
inc r8
mov rcx, 0xfffffffffffffffe
cmp byte [rsp + 0x3f], 0
je 0x18005200b
cmp r10, r8
jbe 0x180054dc9
mov rdx, r10
mov r9, r8
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r9]
cmp eax, 9
je 0x1800519d1
cmp eax, 0x20
je 0x1800519d1
jmp 0x18005200b
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18016ca00
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
jmp 0x180051a07
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18016ca00
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
jmp 0x180051a62
xor edx, edx
cmp byte [rsp + 0x2f], 0
mov r9, qword [rsp + 0x40]
je 0x180052110
add rax, rdx
test r8b, r8b
je 0x180052110
movzx r8d, r8b
cmp r8d, 0xa
je 0x180051eaf
cmp r8d, 0xd
je 0x180051e9a
cmp r9, rdx
jbe 0x180054dc9
movzx r8d, byte [rax]
inc rdx
inc rax
mov r9, qword [rsp + 0x40]
test r8b, r8b
jne 0x180051e68
jmp 0x180052110
cmp r9, rdx
jbe 0x180054dc9
cmp byte [rax], 0xa
jne 0x180052110
inc rdx
mov rax, qword [rsp + 0x60]
add rax, rdx
add rax, rsi
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x48]
add rax, rdx
add rax, rsi
mov qword [rsp + 0x48], rax
sub rcx, rdx
sub rcx, rsi
jne 0x1800516fd
jmp 0x180054dc9
mov rdx, r14
cmp byte [rsp + 0x2f], 0
je 0x180054db2
test al, al
je 0x180054db2
movzx eax, al
cmp eax, 0xa
je 0x180052006
cmp eax, 0xd
je 0x180051fe7
cmp r10, r8
mov r14, rdx
jbe 0x180054dc9
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r8]
inc r8
test al, al
jne 0x180051ef6
jmp 0x180054db2
cmp r9d, 0xa
je 0x18005208a
mov edx, 1
cmp r9d, 0xd
je 0x180052097
cmp byte [rsp + 0x2f], 0
je 0x180054c89
test al, al
mov rcx, qword [rsp + 0x40]
je 0x180054c89
movzx eax, al
cmp eax, 0xa
je 0x180051f92
cmp eax, 0xd
je 0x180051f9a
cmp rcx, rdx
jbe 0x180054dc9
mov r8, rdx
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r8]
inc rdx
test al, al
mov rcx, qword [rsp + 0x40]
jne 0x180051f5e
jmp 0x180054c89
mov r8, rdx
mov rdx, r14
jmp 0x180051fbc
cmp rcx, rdx
jbe 0x180054dc9
mov r8, rdx
mov rdx, r14
mov rax, qword [rsp + 0x30]
cmp byte [rax + r8], 0xa
jne 0x180054db2
inc r8
mov rcx, qword [rsp + 0x40]
sub rcx, r8
mov rax, qword [rsp + 0x30]
add rax, r8
add qword [rsp + 0x60], r8
mov qword [rsp + 0x48], rax
test rcx, rcx
mov r14, rdx
jne 0x1800516fd
jmp 0x180054dc9
cmp r10, r8
mov r14, rdx
jbe 0x180054dc9
mov rax, qword [rsp + 0x30]
cmp byte [rax + r8], 0xa
jne 0x180054db2
inc r8
mov rcx, r10
jmp 0x180051fc1
cmp r13, 0x64
je 0x180054da8
mov rdx, r8
mov rax, r8
lea r8, [rdx + rcx]
sub r10, rdx
mov qword [rsp + 0x40], r8
test r8, r8
je 0x18005206d
mov rax, qword [rsp + 0x30]
add rax, rcx
dec rax
neg rcx
movabs r9, 0x100002600
mov r8, rdx
movzx r8d, byte [rax + r8]
cmp r8, 0x20
ja 0x180052072
bt r9, r8
jae 0x180052072
inc rcx
dec rax
mov r8, rdx
cmp rdx, rcx
jne 0x180052047
mov rdx, qword [rsp + 0x40]
jmp 0x1800520cf
mov r8, rdx
jmp 0x1800520cd
mov r8, rdx
mov rax, rdx
sub rax, rcx
cmp rax, qword [rsp + 0x40]
mov rdx, rax
jbe 0x1800520cf
jmp 0x18005503c
mov r9d, 1
mov r10, qword [rsp + 0x40]
jmp 0x1800520bd
cmp qword [rsp + 0x40], 2
jb 0x180054dc9
mov r9d, 2
mov rax, qword [rsp + 0x30]
cmp byte [rax + 1], 0xa
mov r10, qword [rsp + 0x40]
jne 0x180054c89
cmp r13, 0x64
je 0x180054da8
sub r10, r9
mov r8, r9
xor edx, edx
mov r9, qword [rsp + 0x30]
lea rax, [r9 + r8]
add qword [rsp + 0x60], r8
inc r13
mov rcx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x48]
mov qword [rcx], r8
dec rsi
mov qword [rcx + 8], rsi
mov qword [rcx + 0x10], r9
mov qword [rcx + 0x18], rdx
mov rdx, r10
test r10, r10
jne 0x1800516dc
jmp 0x180054dc9
mov rax, qword [rsp + 0x70]
and rax, 0xffffffffffffff00
mov qword [rsp + 0x70], rax
movzx ecx, al
cmp cl, 6
jne 0x180055040
mov rax, qword [rsp + 0x230]
cmp byte [rax + 0x16], 0
je 0x180054f44
mov ax, 0xc8
mov qword [rsp + 0x1c8], rax
xor r12d, r12d
xor eax, eax
xor ecx, ecx
mov qword [rsp + 0x158], rcx
xor r13d, r13d
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsp + 0x170]
lea rcx, [rsp + 0x1f0]
mov qword [rcx + 0x10], rax
movdqa xmm0, xmmword [rsp + 0x160]
movdqu xmmword [rcx], xmm0
lea rcx, [rsp + 0x270]
mov rdx, rbp
mov r8, r12
call fcn.180022280
cmp byte [rsp + 0x3f], 0
je 0x1800522b2
cmp r13, 0x65
jae 0x18005503c
test r13, r13
je 0x1800522b2
mov rax, r13
shl rax, 5
add rax, rsp
add rax, 0xf80
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rsp + 0x278]
lea r8, [rsp + 0xf80]
jmp 0x1800521e9
cmp r8, rax
je 0x1800522b2
mov r11, qword [r8 + 0x10]
mov r9, qword [r8 + 0x18]
cmp r9, r11
jb 0x18005503c
cmp r9, rdx
ja 0x18005503c
add r8, 0x20
cmp r9, r11
je 0x1800521e0
lea r10, [rcx + r11]
mov esi, r9d
sub esi, r11d
not r11
add r11, r9
and rsi, 3
jne 0x18005223c
cmp r11, 3
jb 0x1800521e0
add r9, rcx
jmp 0x18005225d
mov byte [r10], 0x20
inc r10
dec rsi
je 0x180052222
movzx edi, byte [r10]
cmp edi, 0xd
je 0x180052230
cmp edi, 0xa
je 0x180052230
jmp 0x180052234
mov byte [r10 + 3], 0x20
mov r10, r11
cmp r11, r9
je 0x1800521e0
movzx r11d, byte [r10]
cmp r11d, 0xd
je 0x18005226d
cmp r11d, 0xa
jne 0x180052271
mov byte [r10], 0x20
movzx r11d, byte [r10 + 1]
cmp r11d, 0xd
je 0x180052282
cmp r11d, 0xa
jne 0x180052287
mov byte [r10 + 1], 0x20
movzx r11d, byte [r10 + 2]
cmp r11d, 0xd
je 0x180052298
cmp r11d, 0xa
jne 0x18005229d
mov byte [r10 + 2], 0x20
lea r11, [r10 + 4]
movzx esi, byte [r10 + 3]
cmp esi, 0xd
je 0x180052250
cmp esi, 0xa
je 0x180052250
jmp 0x180052255
mov rdi, qword [rsp + 0x270]
mov rax, qword [rsp + 0x278]
mov rsi, qword [rsp + 0x288]
test sil, 1
jne 0x180052303
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rsi
lea rax, [0x1801c1358]
mov qword [rsp + 0xa0], rax
lea r12, [0x1801bdf48]
jmp 0x1800523f2
mov r12, r14
mov r14, qword [rsp + 0x280]
shr rsi, 5
sub rdi, rsi
lea rbx, [rsi + rax]
cmp rax, r14
jne 0x180052340
test rbx, rbx
je 0x1800523a1
test dil, 1
mov r14, r12
mov rax, rdi
jne 0x1800523b8
or rax, 1
lea rcx, [0x1801aaf68]
jmp 0x1800523bf
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x180052369
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055191
mov qword [0x1801fa958], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055191
add r14, rsi
mov qword [rax], rdi
mov qword [rax + 8], r14
mov qword [rax + 0x10], 1
lea rcx, [0x180173238]
mov r14, r12
jmp 0x1800523bf
xor eax, eax
lea rdi, str.description___is_deprecated__use_Display
xor ebx, ebx
lea rcx, [0x1801bdd48]
mov r14, r12
jmp 0x1800523bf
lea rcx, [0x1801aaf80]
lea r12, [0x1801bdf48]
sub rbx, rsi
jb 0x18005503c
add rdi, rsi
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x230]
mov rcx, qword [rax]
mov rax, qword [rcx]
mov qword [rcx], 3
cmp rax, 3
jne 0x18005245d
mov word [rsp + 0x1b8], 0
mov qword [rsp + 0x178], 2
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 8
lea rax, [rsp + 0x168]
movdqu xmmword [rax + 0x28], xmm6
mov qword [rsp + 0x1a0], 8
movdqu xmmword [rax + 0x40], xmm6
xor eax, eax
jmp 0x1800524a1
mov rdx, qword [rcx + 0x58]
lea r8, [rsp + 0x168]
mov qword [r8 + 0x50], rdx
movups xmm0, xmmword [rcx + 0x48]
movups xmmword [r8 + 0x40], xmm0
movdqu xmm0, xmmword [rcx + 8]
movupd xmm1, xmmword [rcx + 0x18]
movdqu xmm2, xmmword [rcx + 0x28]
movdqu xmm3, xmmword [rcx + 0x38]
movdqu xmmword [r8 + 0x30], xmm3
movdqu xmmword [r8 + 0x20], xmm2
movupd xmmword [r8 + 0x10], xmm1
movdqu xmmword [r8], xmm0
cmp byte [rsp + 0x158], 2
sete cl
mov dword [rsp + 0x50], ecx
mov qword [rsp + 0x160], rax
cmp byte [rsp + 0x7f], 0
je 0x18005250f
lea rax, [rsp + 0xd8]
movdqu xmmword [rax + 0x28], xmm6
movdqu xmmword [rax + 0x40], xmm6
mov qword [rsp + 0xe8], 2
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 8
mov qword [rsp + 0x110], 8
mov word [rsp + 0x128], 0
xor eax, eax
jmp 0x180052514
mov eax, 3
mov qword [rsp + 0x40], r14
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x198]
mov rdx, rax
add rdx, r13
jb 0x18005503c
mov r14, qword [rsp + 0x180]
cmp rdx, r14
jbe 0x180052595
lea rcx, [rdx - 1]
bsr rcx, rcx
not ecx
mov rsi, 0xffffffffffffffff
shr rsi, cl
inc rsi
cmp rdx, 2
mov ecx, 1
cmovb rsi, rcx
cmp rsi, 0x8000
ja 0x18005503c
test rsi, rsi
je 0x18005503c
test rax, rax
je 0x180054532
lea rcx, [rsp + 0x160]
mov rdx, rsi
call fcn.180038de0
cmp r13, 0x65
jae 0x18005503c
test r13, r13
je 0x180054235
shl r13, 5
lea rax, [rsp + r13]
add rax, 0xf80
mov qword [rsp + 0x258], rax
lea rsi, [rsp + 0xf80]
lea r13, [rsp + 0x80]
mov qword [rsp + 0x1d0], rbp
mov rdi, qword [rsi]
mov r14, qword [rsi + 8]
cmp r14, rdi
jb 0x18005503c
mov qword [rsp + 0x48], rsi
cmp r14, qword [rsp + 0xb0]
ja 0x18005503c
mov rsi, r14
sub rsi, rdi
je 0x180054e56
mov rbx, qword [rsp + 0xa8]
cmp rsi, 0x40
ja 0x180052637
mov rax, rdi
not rax
add r14, rax
mov eax, esi
and eax, 3
cmp r14, 3
jae 0x1800526a1
xor r9d, r9d
lea r14, [rsp + 0x300]
jmp 0x180052717
cmp rsi, 0x10000
jae 0x180054e56
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x18005266d
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055171
mov qword [0x1801fa958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055171
mov rcx, rsi
mov r15, rbp
shr rcx, 0xa
je 0x1800527b7
bsr rcx, rcx
xor rcx, 0x3f
jmp 0x1800527bc
mov rcx, rsi
and rcx, 0xfffffffffffffffc
lea rdx, [rbx + rdi]
add rdx, 3
xor r8d, r8d
lea r14, [rsp + 0x300]
nop dword [rax + rax]
movzx r9d, byte [rdx + r8 - 3]
movzx r9d, byte [r9 + r12]
mov byte [rsp + r8 + 0x300], r9b
movzx r9d, byte [rdx + r8 - 2]
movzx r9d, byte [r9 + r12]
mov byte [rsp + r8 + 0x301], r9b
movzx r9d, byte [rdx + r8 - 1]
movzx r9d, byte [r9 + r12]
mov byte [rsp + r8 + 0x302], r9b
lea r9, [r8 + 4]
movzx r10d, byte [rdx + r8]
movzx r10d, byte [r10 + r12]
mov byte [rsp + r8 + 0x303], r10b
mov r8, r9
cmp rcx, r9
jne 0x1800526c0
test rax, rax
je 0x180052746
lea rcx, [rsp + r9]
add rcx, 0x300
add rdi, r9
add rbx, rdi
xor edx, edx
nop
movzx r8d, byte [rbx + rdx]
movzx r8d, byte [r8 + r12]
mov byte [rcx + rdx], r8b
inc rdx
cmp rax, rdx
jne 0x180052730
mov rcx, r14
mov rdx, rsi
call fcn.180045fc0
cmp al, 0x51
jne 0x18005278b
cmp rsi, 0xf
ja 0x180052894
xor eax, eax
nop word cs:[rax + rax]
cmp byte [rsp + rax + 0x300], 0
je 0x180054e56
inc rax
cmp rsi, rax
jne 0x180052770
jmp 0x1800529b6
movzx eax, al
mov rdx, qword [rsp + 0x240]
and rdx, 0xffffffffffffff00
or rdx, rax
xor eax, eax
mov r8, qword [rsp + 0x250]
mov r9, qword [rsp + 0x248]
jmp 0x180052ae5
mov ecx, 0x40
mov edx, 0x40
sub rdx, rcx
cmp rdx, 7
mov ecx, 7
cmovae rdx, rcx
lea rcx, [rdx*4 + 1]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], rcx
xor r8d, r8d
movzx ecx, byte [rbx + rdi]
movzx ebp, byte [rcx + r12]
test bpl, bpl
je 0x180054de7
cmp rsi, r8
jne 0x18005283c
mov edx, 1
mov rcx, r13
call fcn.180022470
mov rax, qword [rsp + 0x80]
mov r8, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x90]
mov byte [rax + r8], bpl
inc r8
cmp r8, rsi
ja 0x18005503c
mov qword [rsp + 0x88], r8
inc rdi
cmp r14, rdi
jne 0x180052800
mov rdx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x98]
test sil, 1
jne 0x1800528ed
lea rax, [0x1801c1358]
mov r9, rsi
mov rbp, r15
lea r14, [rsp + 0x300]
lea r15, [rsp + 0xb8]
jmp 0x180052ae5
cmp qword [rsp + 0x268], r14
je 0x180052941
mov rcx, qword [rsp + 0x260]
cmp rcx, rsi
mov rax, rsi
cmovb rax, rcx
test rax, rax
je 0x180052941
xor ecx, ecx
cmp byte [rsp + rcx + 0x300], 0
je 0x180054e56
inc rcx
cmp rax, rcx
jne 0x1800528bf
lea rcx, [rsi - 0x10]
cmp rax, rcx
movabs r8, 0x8080808080808080
jbe 0x180052960
jmp 0x1800529b1
mov rbx, qword [rsp + 0x90]
shr rsi, 5
sub rdx, rsi
lea rdi, [rsi + r8]
cmp r8, rbx
mov rbp, r15
lea r14, [rsp + 0x300]
jne 0x180052a43
test rdi, rdi
je 0x180052ab2
test dl, 1
lea r15, [rsp + 0xb8]
mov r9, rdx
jne 0x180052acf
or r9, 1
lea rax, [0x1801aaf68]
jmp 0x180052ad6
lea rcx, [rsi - 0x10]
xor eax, eax
movabs r8, 0x8080808080808080
nop word cs:[rax + rax]
movdqu xmm0, xmmword [rsp + rax + 0x300]
movdqa xmm1, xmm0
paddq xmm1, xmm8
pandn xmm0, xmm1
pshufd xmm1, xmm0, 0xee
por xmm1, xmm0
movq rdx, xmm1
test rdx, r8
jne 0x1800529b1
add rax, 0x10
cmp rax, rcx
jbe 0x180052960
jmp 0x1800529b1
cmp byte [rsp + rax + 0x300], 0
je 0x180054e56
inc rax
cmp rsi, rax
jne 0x1800529a0
test rsi, rsi
js 0x18005503c
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
lea r14, [rsp + 0x300]
jne 0x1800529f0
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055171
mov qword [0x1801fa958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055171
mov rcx, rax
mov rdi, rax
mov rdx, r14
mov r8, rsi
call fcn.180158470
mov rdx, rdi
mov r9, rdi
or r9, 1
test dl, 1
cmovne r9, rdi
lea rax, [0x1801aaf80]
lea rcx, [0x1801aaf68]
cmove rax, rcx
mov r8, rsi
jmp 0x180052ae5
mov r15, rdx
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x180052a6f
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055191
mov qword [0x1801fa958], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055191
mov r9, rax
add rbx, rsi
mov rdx, r15
mov qword [rax], r15
mov qword [rax + 8], rbx
mov qword [rax + 0x10], 1
lea rax, [0x180173238]
lea r15, [rsp + 0xb8]
jmp 0x180052ad6
lea rdx, str.description___is_deprecated__use_Display
xor r9d, r9d
xor edi, edi
lea rax, [0x1801bdd48]
lea r15, [rsp + 0xb8]
jmp 0x180052ad6
lea rax, [0x1801aaf80]
mov r8, rdi
sub r8, rsi
jb 0x18005503c
add rdx, rsi
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x208], rax
mov qword [rsp + 0x210], rdx
mov qword [rsp + 0x250], r8
mov qword [rsp + 0x218], r8
mov qword [rsp + 0x248], r9
mov qword [rsp + 0x220], r9
mov r12, qword [rcx + 0x10]
mov rsi, qword [rcx + 0x18]
cmp rsi, r12
jb 0x18005503c
mov r9, qword [rsp + 0xb0]
cmp r9, rsi
jb 0x18005503c
sub rsi, r12
mov qword [rsp + 0x240], rdx
jne 0x180052b7f
mov ecx, edx
xor esi, esi
xor edx, edx
mov qword [rsp + 0x140], rdx
lea r12, str.description___is_deprecated__use_Display
lea rdx, [0x1801bdd48]
mov qword [rsp + 0x148], rdx
test rax, rax
mov qword [rsp + 0x1e0], rsi
je 0x180052be5
jmp 0x180052c44
mov rax, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xa8]
mov rcx, r14
mov rdx, r15
call qword [rax]
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x148], rax
test rax, rax
je 0x18005503c
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x140], rax
add r12, qword [rsp + 0x308]
mov rax, qword [rsp + 0x208]
movzx ecx, byte [rsp + 0x210]
test rax, rax
mov qword [rsp + 0x1e0], rsi
jne 0x180052c44
cmp cl, 0x14
jne 0x180052c44
test byte [rsp + 0x50], 1
jne 0x180052c1b
mov rcx, r12
mov rdx, rsi
call fcn.18004ed70
mov dword [rsp + 0x50], eax
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x1d8], r12
jne 0x180052c5e
jmp 0x180053ad3
xor eax, eax
nop dword [rax]
cmp rsi, rax
je 0x180052efa
movzx ecx, byte [r12 + rax]
inc rax
cmp cl, 9
je 0x180052c20
add cl, 0xe0
cmp cl, 0x5f
jb 0x180052c20
mov al, 1
mov dword [rsp + 0x50], eax
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x1d8], r12
je 0x180053ad3
mov rax, qword [rsp + 0x48]
mov r13, qword [rax]
mov rdi, qword [rax + 8]
cmp rdi, r13
jb 0x18005503c
mov r9, qword [rsp + 0xb0]
cmp r9, rdi
jb 0x18005503c
sub rdi, r13
jne 0x180052ca2
movdqa xmmword [rsp + 0x130], xmm6
lea rcx, [0x1801bdd48]
lea r13, str.description___is_deprecated__use_Display
jmp 0x180052ce7
mov rax, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xa8]
mov rcx, r14
mov rdx, r15
call qword [rax]
mov qword [rsp + 0x310], rdi
add r13, qword [rsp + 0x308]
mov rcx, qword [rsp + 0x300]
lea rax, [rsp + 0x310]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x130], xmm0
mov rbx, qword [rsp + 0x108]
cmp esi, 1
mov qword [rsp + 0xc8], r13
mov qword [rsp + 0x1c0], rcx
jne 0x180052d67
test rbx, rbx
js 0x18005301c
xorps xmm0, xmm0
cvtsi2ss xmm0, rbx
mov rsi, qword [rsp + 0xf0]
test rsi, rsi
jns 0x180053047
mov rax, rsi
shr rax, 1
mov ecx, esi
and ecx, 1
or rcx, rax
cvtsi2ss xmm1, rcx
addss xmm1, xmm1
divss xmm0, xmm1
ucomiss xmm0, xmm9
jb 0x18005305a
mov qword [rsp + 0xd0], 0
add rsi, rsi
lea rcx, [rsp + 0xd0]
mov rdx, rsi
jmp 0x180052d95
mov rdx, qword [rsp + 0xf0]
mov rax, rdx
shr rax, 2
mov rcx, rdx
sub rcx, rax
cmp rbx, rcx
jne 0x180052d9a
test rbx, rbx
je 0x18005337b
add rdx, rdx
lea rcx, [rsp + 0xd0]
call fcn.1800557a0
mov rcx, qword [rsp + 0xd0]
cmp rcx, 2
mov qword [rsp + 0x238], rcx
jne 0x180052e63
movdqu xmm0, xmmword [rsp + 0xd8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm10
movdqa xmmword [rsp + 0x300], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm11
movdqa xmmword [rsp + 0x310], xmm1
movdqa xmmword [rsp + 0x320], xmm0
lea rax, [rsp + 0x310]
movdqa xmmword [rax + 0x20], xmm6
mov qword [rax + 0x30], 0
mov r14, qword [rsp + 0x208]
xor eax, eax
test r14, r14
setne al
mov qword [rsp + 0x80], rax
mov r8d, 8
lea rsi, [rsp + 0x300]
mov rcx, rsi
lea rdi, [rsp + 0x80]
mov rdx, rdi
call fcn.18000cd50
mov rbx, r14
test r14, r14
je 0x180053231
mov rdx, qword [rsp + 0x210]
mov r8, qword [rsp + 0x218]
mov rcx, rsi
mov qword [rsp + 0x68], rdx
jmp 0x180053252
mov r10, qword [rsp + 0x208]
xor r15d, r15d
test r10, r10
setne r15b
movabs rax, 0xcbf29ce484222325
xor r15, rax
movabs rax, 0x1efac7090aef4a21
imul r15, rax
test r10, r10
je 0x18005335f
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x68], rax
mov r8, qword [rsp + 0x218]
test r8, r8
je 0x180053567
mov rcx, r8
and rcx, 7
je 0x1800534e0
mov rax, qword [rsp + 0x68]
movabs r9, 0x100000001b3
nop word cs:[rax + rax]
movzx edx, byte [rax]
inc rax
xor rdx, r15
imul rdx, r9
mov r15, rdx
dec rcx
jne 0x180052ee0
jmp 0x1800534f2
mov qword [rsp + 0x300], 0
mov qword [rsp + 0x308], rsi
mov qword [rsp + 0x310], r12
mov qword [rsp + 0x318], rsi
mov qword [rsp + 0x320], 0
mov qword [rsp + 0x328], rsi
mov qword [rsp + 0x330], 1
movabs rax, 0x2c0000002c
mov qword [rsp + 0x338], rax
mov word [rsp + 0x340], 1
nop word [rax + rax]
mov rcx, r14
call fcn.180059b90
test rax, rax
je 0x180052c3e
mov rcx, rax
call fcn.18004ef10
cmp rdx, 5
jne 0x180052f60
movzx ecx, byte [rax]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x63
jne 0x180052f60
movzx ecx, byte [rax + 1]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x6c
jne 0x180052f60
movzx ecx, byte [rax + 2]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x6f
jne 0x180052f60
movzx ecx, byte [rax + 3]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x73
jne 0x180052f60
movzx eax, byte [rax + 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
jne 0x180052f60
mov dword [rsp + 0x50], 0
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x1d8], r12
jne 0x180052c5e
jmp 0x180053ad3
mov rax, rbx
shr rax, 1
mov ecx, ebx
and ecx, 1
or rcx, rax
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
addss xmm0, xmm0
mov rsi, qword [rsp + 0xf0]
test rsi, rsi
js 0x180052d26
cvtsi2ss xmm1, rsi
divss xmm0, xmm1
ucomiss xmm0, xmm9
jae 0x180052d4b
mov eax, dword [0x1801fa9d4]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0xa0], 0
jne 0x18005307c
call fcn.18011cad0
mov qword [rsp + 0xd0], 2
mov eax, dword [0x1801fa9d4]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movdqu xmm0, xmmword [rax + 0xa8]
inc qword [rax + 0xa8]
movdqu xmmword [rsp + 0xd8], xmm0
mov rdi, qword [rsp + 0xe8]
test rsi, rsi
je 0x18005311f
lea rcx, [rsi - 1]
movabs rax, 0x3fffffffffffffff
and rcx, rax
mov rax, rdi
cmp rcx, 7
jb 0x180053109
inc rcx
mov rdx, rcx
and rdx, 0xfffffffffffffff8
lea rax, [rdi + rdx*4]
xor r8d, r8d
nop dword [rax + rax]
movups xmmword [rdi + r8*4], xmm7
movups xmmword [rdi + r8*4 + 0x10], xmm7
add r8, 8
cmp rdx, r8
jne 0x1800530f0
cmp rcx, rdx
je 0x18005311f
lea rcx, [rdi + rsi*4]
nop dword [rax]
mov dword [rax], 0xffff
add rax, 4
cmp rax, rcx
jne 0x180053110
test rbx, rbx
je 0x180052d9a
mov r14, qword [rsp + 0xf8]
lea rax, [rbx + rbx*2]
shl rax, 5
add rax, r14
mov qword [rsp + 0x30], rax
movzx r15d, word [rsp + 0x128]
xor r12d, r12d
jmp 0x180053168
mov word [rdi + rcx*4], r13w
mov rdx, rcx
mov word [rdi + rdx*4 + 2], ax
cmp r14, qword [rsp + 0x30]
je 0x180052d9a
mov r13, r12
mov rbx, rbp
mov rbp, r14
add r14, 0x60
inc r12
lea rdx, [rbp + 0x38]
lea rcx, [rsp + 0xd0]
call fcn.18004f600
mov r8d, r15d
and r8d, eax
mov word [rbp + 0x58], ax
mov rbp, rbx
xor edx, edx
nop dword [rax + rax]
mov rcx, r8
mov r8d, 0
cmp rcx, rsi
jae 0x1800531a0
cmp word [rdi + rcx*4], 0xffff
je 0x180053150
movzx r8d, word [rdi + rcx*4 + 2]
and r8d, r15d
mov r9d, ecx
sub r9d, r8d
and r9d, r15d
cmp r9, rdx
jb 0x180053200
inc rdx
inc rcx
mov r8, rcx
jmp 0x1800531a0
movzx r8d, word [rdi + rdx*4 + 2]
mov word [rdi + rdx*4], r13w
mov word [rdi + rdx*4 + 2], ax
inc rdx
mov eax, r8d
mov r13d, ecx
mov rcx, rdx
nop word cs:[rax + rax]
mov rdx, rcx
mov ecx, 0
cmp rdx, rsi
jae 0x180053200
movzx ecx, word [rdi + rdx*4]
cmp cx, 0xffff
jne 0x1800531d7
mov word [rdi + rdx*4], r13w
mov word [rdi + rdx*4 + 2], ax
cmp r14, qword [rsp + 0x30]
jne 0x180053168
jmp 0x180052d9a
movzx eax, byte [rsp + 0x210]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x80], rax
mov r8d, 8
mov rcx, rsi
mov rdx, rdi
call fcn.18000cd50
mov rax, qword [rsp + 0x310]
mov r9, qword [rsp + 0x330]
shl r9, 0x38
or r9, qword [rsp + 0x338]
mov rcx, qword [rsp + 0x318]
mov r8, qword [rsp + 0x300]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x308]
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 r15, rdx
shr r15, 0x20
xor r15, rdx
xor r15, rax
mov r10, rbx
jmp 0x180053567
movzx ecx, byte [rsp + 0x210]
mov qword [rsp + 0x68], rcx
xor r15, rcx
imul r15, rax
xor r10d, r10d
jmp 0x180053567
mov word [rsp + 0x128], 7
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x1800533ae
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800551cf
mov qword [0x1801fa958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800551cf
mov rsi, rax
movups xmmword [rax], xmm7
movups xmmword [rax + 0x10], xmm7
cmp qword [rsp + 0xf0], 0
je 0x1800533f4
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x1801fa958]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0xf0], 8
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x180053431
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800551e0
mov qword [0x1801fa958], rax
mov r8d, 0x240
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800551e0
mov rsi, rax
mov rdi, qword [rsp + 0xf8]
mov r14, qword [rsp + 0x108]
test r14, r14
je 0x18005349e
lea rbx, [rdi + 0x30]
jmp 0x180053484
mov rax, qword [rbx - 0x18]
mov rdx, qword [rbx - 0x10]
mov r8, qword [rbx - 8]
mov rcx, rbx
call qword [rax + 0x10]
add rbx, 0x60
dec r14
je 0x18005349e
mov rax, qword [rbx + 8]
test rax, rax
je 0x180053469
lea rcx, [rbx + 0x20]
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x18]
call qword [rax + 0x10]
jmp 0x180053469
cmp qword [rsp + 0x100], 0
je 0x1800534bb
mov rcx, qword [0x1801fa958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0xf8], rsi
mov qword [rsp + 0x100], 6
mov qword [rsp + 0x108], 0
jmp 0x180052d9a
mov rdx, r15
mov rax, qword [rsp + 0x68]
movabs r9, 0x100000001b3
cmp r8, 8
jb 0x180053564
mov rcx, qword [rsp + 0x68]
add rcx, r8
movzx r8d, byte [rax]
xor r8, rdx
imul r8, r9
movzx edx, byte [rax + 1]
xor rdx, r8
imul rdx, r9
movzx r8d, byte [rax + 2]
xor r8, rdx
imul r8, r9
movzx edx, byte [rax + 3]
xor rdx, r8
imul rdx, r9
movzx r8d, byte [rax + 4]
xor r8, rdx
imul r8, r9
movzx edx, byte [rax + 5]
xor rdx, r8
imul rdx, r9
movzx r8d, byte [rax + 6]
xor r8, rdx
imul r8, r9
movzx edx, byte [rax + 7]
add rax, 8
xor rdx, r8
imul rdx, r9
cmp rax, rcx
jne 0x180053500
mov r15, rdx
and r15d, 0x7fff
movzx edi, word [rsp + 0x128]
mov ebp, r15d
and ebp, edi
mov rsi, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xf0]
mov r9, qword [rsp + 0x108]
mov r8, qword [rsp + 0xf8]
mov r11, qword [rsp + 0x210]
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x30], rax
xor r13d, r13d
mov qword [rsp + 0x60], r9
mov qword [rsp + 0xc0], r10
mov qword [rsp + 0x150], r8
mov qword [rsp + 0x228], r11
jmp 0x1800535e6
mov rcx, qword [rsp + 0x68]
cmp byte [rax + 8], cl
je 0x1800536a9
inc r13
inc rbp
mov rax, rbp
nop dword [rax]
mov rbp, rax
mov eax, 0
cmp rbp, r12
jae 0x1800535f0
movzx r14d, word [rsi + rbp*4]
cmp r14, 0xffff
je 0x18005377a
movzx eax, word [rsi + rbp*4 + 2]
mov ecx, edi
and ecx, eax
mov edx, ebp
sub edx, ecx
and edx, edi
cmp rdx, r13
jb 0x1800537e1
cmp ax, r15w
jne 0x1800535e0
cmp r9, r14
jbe 0x18005503c
test r10, r10
sete al
lea rbx, [r14 + r14*2]
shl rbx, 5
mov rcx, qword [r8 + rbx + 0x38]
test rcx, rcx
setne dl
cmp dl, al
je 0x1800535e0
lea rax, [r8 + rbx]
add rax, 0x38
test rcx, rcx
je 0x1800535d2
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
jne 0x1800535e0
mov rcx, qword [rax + 8]
mov rdx, r11
mov r8, qword [rsp + 0x30]
call fcn.180158ec0
mov r11, qword [rsp + 0x228]
mov r8, qword [rsp + 0x150]
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0xc0]
test eax, eax
jne 0x1800535e0
lea rdi, [r8 + rbx]
cmp qword [r8 + rbx], 0
je 0x18005418e
mov rbx, qword [rdi + 0x10]
mov rsi, qword [rsp + 0x120]
mov rcx, rsi
cmp rsi, qword [rsp + 0x118]
lea r13, [rsp + 0x80]
jne 0x1800536f1
lea rcx, [rsp + 0x110]
mov rdx, rsi
call fcn.1801250a0
mov rcx, qword [rsp + 0x120]
mov rax, qword [rsp + 0x110]
mov rdx, rcx
shl rdx, 6
mov qword [rax + rdx], 1
mov qword [rax + rdx + 8], rbx
mov qword [rax + rdx + 0x10], 0
mov qword [rax + rdx + 0x18], r14
mov r8, qword [rsp + 0x1c0]
mov qword [rax + rdx + 0x20], r8
mov r8, qword [rsp + 0xc8]
mov qword [rax + rdx + 0x28], r8
movdqa xmm0, xmmword [rsp + 0x130]
movdqu xmmword [rax + rdx + 0x30], xmm0
inc rcx
mov qword [rsp + 0x120], rcx
cmp rbx, rcx
jae 0x18005503c
shl rbx, 6
mov qword [rax + rbx + 0x10], 1
mov qword [rax + rbx + 0x18], rsi
mov qword [rdi], 1
mov qword [rdi + 0x10], rsi
jmp 0x180053ad3
test r10, r10
je 0x18005385f
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x220]
mov rsi, r8
mov r8, r11
mov r9, qword [rsp + 0x30]
call qword [r10]
mov r8, rsi
mov r9, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x300]
movzx r11d, byte [rsp + 0x308]
lea rax, [rsp + 0x310]
movdqu xmm0, xmmword [rax - 7]
movdqa xmmword [rsp + 0x80], xmm0
mov rax, qword [rax + 8]
mov qword [rsp + 0x8f], rax
jmp 0x180053861
cmp r13, 0x200
setae r14b
cmp dword [rsp + 0x238], 2
setne dil
test r10, r10
je 0x180053969
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x220]
mov rbx, r8
mov r8, r11
mov r9, qword [rsp + 0x30]
call qword [r10]
mov r8, rbx
mov r9, qword [rsp + 0x60]
mov r13, qword [rsp + 0x300]
movzx r11d, byte [rsp + 0x308]
lea rax, [rsp + 0x310]
movdqu xmm0, xmmword [rax - 7]
movdqa xmmword [rsp + 0x80], xmm0
mov rax, qword [rax + 8]
mov qword [rsp + 0x8f], rax
jmp 0x18005396c
xor esi, esi
lea r13, [rsp + 0x80]
mov rax, qword [rsp + 0x8f]
mov qword [rsp + 0x30f], rax
movdqa xmm0, xmmword [rsp + 0x80]
movdqa xmmword [rsp + 0x300], xmm0
cmp r9, 0x7fff
ja 0x18005503c
mov rax, r9
cmp r9, qword [rsp + 0x100]
jne 0x1800538d8
lea rcx, [rsp + 0xf8]
mov rdx, r9
mov rdi, r11
call fcn.180055ae0
mov r11, rdi
mov r9, qword [rsp + 0x60]
mov rax, qword [rsp + 0x108]
mov r12, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xf8]
lea rcx, [rax + rax*2]
shl rcx, 5
mov qword [r8 + rcx], 0
mov rdx, qword [rsp + 0x1c0]
mov qword [r8 + rcx + 0x18], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [r8 + rcx + 0x20], rdx
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [r8 + rcx + 0x28], xmm0
mov qword [r8 + rcx + 0x38], rsi
mov byte [r8 + rcx + 0x40], r11b
movdqa xmm0, xmmword [rsp + 0x300]
movdqu xmmword [r8 + rcx + 0x41], xmm0
mov rdx, qword [rsp + 0x30f]
mov qword [r8 + rcx + 0x50], rdx
mov word [r8 + rcx + 0x58], r15w
inc rax
mov qword [rsp + 0x108], rax
cmp rbp, r12
jae 0x18005503c
mov rax, qword [rsp + 0xe8]
mov word [rax + rbp*4], r9w
mov word [rax + rbp*4 + 2], r15w
jmp 0x180053ad3
xor r13d, r13d
mov rax, qword [rsp + 0x8f]
mov qword [rsp + 0x30f], rax
movdqa xmm0, xmmword [rsp + 0x80]
movdqa xmmword [rsp + 0x300], xmm0
cmp r9, 0x7fff
ja 0x18005503c
mov rax, r9
cmp r9, qword [rsp + 0x100]
jne 0x1800539e3
lea rcx, [rsp + 0xf8]
mov rdx, r9
mov rsi, r11
call fcn.180055ae0
mov r11, rsi
mov r9, qword [rsp + 0x60]
mov rax, qword [rsp + 0x108]
mov r8, qword [rsp + 0xf8]
mov rsi, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xf0]
and r14b, dil
lea rcx, [rax + rax*2]
shl rcx, 5
mov qword [r8 + rcx], 0
mov rdx, qword [rsp + 0x1c0]
mov qword [r8 + rcx + 0x18], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [r8 + rcx + 0x20], rdx
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [r8 + rcx + 0x28], xmm0
mov qword [r8 + rcx + 0x38], r13
mov byte [r8 + rcx + 0x40], r11b
movdqa xmm0, xmmword [rsp + 0x300]
movdqu xmmword [r8 + rcx + 0x41], xmm0
mov rdx, qword [rsp + 0x30f]
mov qword [r8 + rcx + 0x50], rdx
mov word [r8 + rcx + 0x58], r15w
inc rax
mov qword [rsp + 0x108], rax
xor eax, eax
lea r13, [rsp + 0x80]
mov rcx, rbp
mov ebp, 0
cmp rcx, r12
jae 0x180053a60
movzx edx, word [rsi + rcx*4]
cmp dx, 0xffff
je 0x180053a99
inc rax
movzx r8d, word [rsi + rcx*4 + 2]
mov word [rsi + rcx*4], r9w
mov word [rsi + rcx*4 + 2], r15w
inc rcx
mov r15d, r8d
mov r9d, edx
mov rbp, rcx
jmp 0x180053a60
mov word [rsi + rcx*4], r9w
mov word [rsi + rcx*4 + 2], r15w
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
mov rdx, rcx
mov r8d, 1
cmove rdx, r8
cmp rax, 0x7f
cmova rcx, rdx
test r14b, r14b
cmovne rcx, rdx
mov qword [rsp + 0xd0], rcx
add qword [rsp + 0x48], 0x20
movdqu xmm0, xmmword [rsp + 0x208]
movupd xmm1, xmmword [rsp + 0x218]
movapd xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0x80], xmm0
lea rsi, [rsp + 0x160]
mov rcx, rsi
call fcn.18004fc60
mov rcx, rsi
mov rdx, r13
call fcn.18004f600
mov r8d, eax
movzx eax, ax
movzx r14d, word [rsp + 0x1b8]
mov dword [rsp + 0xc8], eax
mov r15d, eax
and r15d, r14d
mov rbx, qword [rsp + 0x178]
mov r12, qword [rsp + 0x180]
mov rsi, qword [rsp + 0x198]
mov r9, qword [rsp + 0x188]
mov r10, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x150], rax
movzx r11d, byte [rsp + 0x88]
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
xor ebp, ebp
mov qword [rsp + 0x60], r9
mov word [rsp + 0x68], r8w
mov qword [rsp + 0xc0], r10
mov byte [rsp + 0x228], r11b
jmp 0x180053bb6
cmp byte [rax + 8], r11b
je 0x180053c7d
nop dword [rax + rax]
inc rbp
inc r15
mov rax, r15
nop dword [rax]
mov r15, rax
mov eax, 0
cmp r15, r12
jae 0x180053bc0
movzx r13d, word [rbx + r15*4]
cmp r13, 0xffff
je 0x180053d80
movzx eax, word [rbx + r15*4 + 2]
mov ecx, r14d
and ecx, eax
mov edx, r15d
sub edx, ecx
and edx, r14d
cmp rdx, rbp
jb 0x180053eaa
cmp ax, r8w
jne 0x180053bb0
cmp rsi, r13
jbe 0x18005503c
test r10, r10
sete al
imul rdi, r13, 0x68
mov rcx, qword [r9 + rdi + 0x40]
test rcx, rcx
setne dl
cmp dl, al
je 0x180053bb0
lea rax, [r9 + rdi]
add rax, 0x40
test rcx, rcx
je 0x180053ba1
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
jne 0x180053bb0
mov rcx, qword [rax + 8]
mov rdx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x30]
call fcn.180158ec0
movzx r11d, byte [rsp + 0x228]
mov r10, qword [rsp + 0xc0]
movzx r8d, word [rsp + 0x68]
mov r9, qword [rsp + 0x60]
test eax, eax
jne 0x180053bb0
lea r14, [r9 + rdi]
cmp qword [r9 + rdi], 0
je 0x180054078
mov rbx, qword [r14 + 0x10]
mov rsi, qword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x1a8]
lea r15, [rsp + 0xb8]
mov rbp, qword [rsp + 0x1d0]
lea r12, [0x1801bdf48]
jne 0x180053cd4
lea rcx, [rsp + 0x1a0]
mov rdx, rsi
call fcn.180039110
mov rax, qword [rsp + 0x1b0]
mov rcx, qword [rsp + 0x1a0]
lea rdx, [rax + rax*8]
mov qword [rcx + rdx*8], 1
mov qword [rcx + rdx*8 + 8], rbx
mov qword [rcx + rdx*8 + 0x10], 0
mov qword [rcx + rdx*8 + 0x18], r13
mov r8, qword [rsp + 0x148]
mov qword [rcx + rdx*8 + 0x20], r8
mov r8, qword [rsp + 0x1d8]
mov qword [rcx + rdx*8 + 0x28], r8
mov r8, qword [rsp + 0x1e0]
mov qword [rcx + rdx*8 + 0x30], r8
mov r8, qword [rsp + 0x140]
mov qword [rcx + rdx*8 + 0x38], r8
mov byte [rcx + rdx*8 + 0x40], 0
mov r8d, dword [rsp + 0x130]
mov r9d, dword [rsp + 0x133]
mov dword [rcx + rdx*8 + 0x41], r8d
mov dword [rcx + rdx*8 + 0x44], r9d
inc rax
mov qword [rsp + 0x1b0], rax
cmp rbx, rax
jae 0x18005503c
lea rax, [rbx + rbx*8]
mov qword [rcx + rax*8 + 0x10], 1
mov qword [rcx + rax*8 + 0x18], rsi
mov qword [r14], 1
jmp 0x18005414c
cmp rsi, 0x7fff
ja 0x18005503c
movaps xmm0, xmmword [rsp + 0x80]
movaps xmm1, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0x310], xmm1
movaps xmmword [rsp + 0x300], xmm0
mov rax, rsi
cmp rsi, qword [rsp + 0x190]
mov rbp, qword [rsp + 0x1d0]
lea r13, [rsp + 0x80]
mov edi, dword [rsp + 0xc8]
jne 0x180053df9
lea rcx, [rsp + 0x188]
mov rdx, rsi
call fcn.18000bb80
mov rax, qword [rsp + 0x198]
mov r12, qword [rsp + 0x180]
mov r9, qword [rsp + 0x188]
imul rcx, rax, 0x68
mov qword [r9 + rcx], 0
mov rdx, qword [rsp + 0x148]
mov qword [r9 + rcx + 0x18], rdx
mov rdx, qword [rsp + 0x1d8]
mov qword [r9 + rcx + 0x20], rdx
mov rdx, qword [rsp + 0x1e0]
mov qword [r9 + rcx + 0x28], rdx
mov rdx, qword [rsp + 0x140]
mov qword [r9 + rcx + 0x30], rdx
mov byte [r9 + rcx + 0x38], 0
mov edx, dword [rsp + 0x130]
mov r8d, dword [rsp + 0x133]
mov dword [r9 + rcx + 0x39], edx
mov dword [r9 + rcx + 0x3c], r8d
movdqa xmm0, xmmword [rsp + 0x300]
movapd xmm1, xmmword [rsp + 0x310]
movdqu xmmword [r9 + rcx + 0x40], xmm0
movupd xmmword [r9 + rcx + 0x50], xmm1
mov word [r9 + rcx + 0x60], di
inc rax
mov qword [rsp + 0x198], rax
cmp r15, r12
jae 0x18005503c
mov rax, qword [rsp + 0x178]
mov word [rax + r15*4], si
mov word [rax + r15*4 + 2], di
jmp 0x180054051
cmp rbp, 0x200
setae dil
cmp qword [rsp + 0x160], 2
setne bpl
movdqa xmm0, xmmword [rsp + 0x80]
movapd xmm1, xmmword [rsp + 0x90]
movapd xmmword [rsp + 0x310], xmm1
movdqa xmmword [rsp + 0x300], xmm0
cmp rsi, 0x7fff
ja 0x18005503c
mov rax, rsi
cmp rsi, qword [rsp + 0x190]
lea r13, [rsp + 0x80]
mov r14d, dword [rsp + 0xc8]
jne 0x180053f40
lea rcx, [rsp + 0x188]
mov rdx, rsi
call fcn.18000bb80
mov rax, qword [rsp + 0x198]
mov r9, qword [rsp + 0x188]
mov rbx, qword [rsp + 0x178]
mov r12, qword [rsp + 0x180]
and dil, bpl
imul rcx, rax, 0x68
mov qword [r9 + rcx], 0
mov rdx, qword [rsp + 0x148]
mov qword [r9 + rcx + 0x18], rdx
mov rdx, qword [rsp + 0x1d8]
mov qword [r9 + rcx + 0x20], rdx
mov rdx, qword [rsp + 0x1e0]
mov qword [r9 + rcx + 0x28], rdx
mov rdx, qword [rsp + 0x140]
mov qword [r9 + rcx + 0x30], rdx
mov byte [r9 + rcx + 0x38], 0
mov edx, dword [rsp + 0x130]
mov r8d, dword [rsp + 0x133]
mov dword [r9 + rcx + 0x39], edx
mov dword [r9 + rcx + 0x3c], r8d
movdqa xmm0, xmmword [rsp + 0x300]
movapd xmm1, xmmword [rsp + 0x310]
movdqu xmmword [r9 + rcx + 0x40], xmm0
movupd xmmword [r9 + rcx + 0x50], xmm1
mov word [r9 + rcx + 0x60], r14w
inc rax
mov qword [rsp + 0x198], rax
xor eax, eax
mov rbp, qword [rsp + 0x1d0]
nop dword [rax]
mov rcx, r15
mov r15d, 0
cmp rcx, r12
jae 0x180053fe0
movzx edx, word [rbx + rcx*4]
cmp dx, 0xffff
je 0x180054018
inc rax
movzx r8d, word [rbx + rcx*4 + 2]
mov word [rbx + rcx*4], si
mov word [rbx + rcx*4 + 2], r14w
inc rcx
mov r14d, r8d
mov esi, edx
mov r15, rcx
jmp 0x180053fe0
mov word [rbx + rcx*4], si
mov word [rbx + rcx*4 + 2], r14w
mov rcx, qword [rsp + 0x160]
test rcx, rcx
mov rdx, rcx
mov r8d, 1
cmove rdx, r8
cmp rax, 0x7f
cmova rcx, rdx
test dil, dil
cmovne rcx, rdx
mov qword [rsp + 0x160], rcx
lea r15, [rsp + 0xb8]
lea r12, [0x1801bdf48]
mov rsi, qword [rsp + 0x48]
cmp rsi, qword [rsp + 0x258]
jne 0x1800525d6
jmp 0x180054235
mov rsi, qword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x1a8]
lea r15, [rsp + 0xb8]
mov rbp, qword [rsp + 0x1d0]
lea r12, [0x1801bdf48]
jne 0x1800540bc
lea rcx, [rsp + 0x1a0]
mov rdx, rsi
call fcn.180039110
mov rax, qword [rsp + 0x1b0]
mov rcx, qword [rsp + 0x1a0]
lea rdx, [rax + rax*8]
mov qword [rcx + rdx*8], 0
mov qword [rcx + rdx*8 + 8], r13
mov qword [rcx + rdx*8 + 0x10], 0
mov qword [rcx + rdx*8 + 0x18], r13
mov r8, qword [rsp + 0x148]
mov qword [rcx + rdx*8 + 0x20], r8
mov r8, qword [rsp + 0x1d8]
mov qword [rcx + rdx*8 + 0x28], r8
mov r8, qword [rsp + 0x1e0]
mov qword [rcx + rdx*8 + 0x30], r8
mov r8, qword [rsp + 0x140]
mov qword [rcx + rdx*8 + 0x38], r8
mov byte [rcx + rdx*8 + 0x40], 0
mov r8d, dword [rsp + 0x130]
mov r9d, dword [rsp + 0x133]
mov dword [rcx + rdx*8 + 0x41], r8d
mov dword [rcx + rdx*8 + 0x44], r9d
inc rax
mov qword [rsp + 0x1b0], rax
mov qword [r14], 1
mov qword [r14 + 8], rsi
mov qword [r14 + 0x10], rsi
lea r13, [rsp + 0x80]
mov rax, qword [rsp + 0x80]
test rax, rax
mov rsi, qword [rsp + 0x48]
je 0x180054065
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x10]
jmp 0x180054065
mov rsi, qword [rsp + 0x120]
mov rax, rsi
cmp rsi, qword [rsp + 0x118]
lea r13, [rsp + 0x80]
jne 0x1800541c3
lea rcx, [rsp + 0x110]
mov rdx, rsi
call fcn.1801250a0
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x110]
mov rdx, rax
shl rdx, 6
mov qword [rcx + rdx], 0
mov qword [rcx + rdx + 8], r14
mov qword [rcx + rdx + 0x10], 0
mov qword [rcx + rdx + 0x18], r14
mov r8, qword [rsp + 0x1c0]
mov qword [rcx + rdx + 0x20], r8
mov r8, qword [rsp + 0xc8]
mov qword [rcx + rdx + 0x28], r8
movdqa xmm0, xmmword [rsp + 0x130]
movdqu xmmword [rcx + rdx + 0x30], xmm0
inc rax
mov qword [rsp + 0x120], rax
mov qword [rdi], 1
mov qword [rdi + 8], rsi
mov qword [rdi + 0x10], rsi
jmp 0x180053ad3
mov r13, qword [rsp + 0xd0]
cmp r13, 3
mov qword [rsp + 0x48], r13
je 0x180054491
movups xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x2f0], xmm0
movups xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x2e0], xmm0
movups xmm0, xmmword [rsp + 0xd0]
movups xmm1, xmmword [rsp + 0xe0]
movdqu xmm2, xmmword [rsp + 0xf0]
movdqu xmm3, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0x2d0], xmm3
movdqa xmmword [rsp + 0x2c0], xmm2
movaps xmmword [rsp + 0x2b0], xmm1
movaps xmmword [rsp + 0x2a0], xmm0
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x1c8]
jne 0x1800542e6
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055180
mov qword [0x1801fa958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055180
mov rsi, rax
lea rax, [0x1801e43d0]
mov qword [rsi], rax
movdqu xmmword [rsi + 8], xmm6
mov qword [rsi + 0x18], 0
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x180054343
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800551a2
mov qword [0x1801fa958], rax
mov r8d, 0x60
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800551a2
movaps xmm0, xmmword [rsp + 0x2f0]
movups xmmword [rax + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x2e0]
movups xmmword [rax + 0x40], xmm0
movdqa xmm0, xmmword [rsp + 0x2a0]
movapd xmm1, xmmword [rsp + 0x2b0]
movdqa xmm2, xmmword [rsp + 0x2c0]
movdqa xmm3, xmmword [rsp + 0x2d0]
movdqu xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movupd xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
lea rcx, fcn.180055490
mov qword [rsp + 0x20], rcx
mov rcx, rsi
movabs rdx, 0xdd4628cbb1baea24
movabs r8, 0x91653c0384253955
mov r9, rax
call fcn.180055280
test rax, rax
je 0x180054722
mov rdi, rax
mov rbx, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0x91653c0384253955
xor rdx, rcx
movabs rcx, 0xdd4628cbb1baea24
xor rax, rcx
or rax, rdx
jne 0x1800546f9
movups xmm0, xmmword [rdi + 0x50]
movaps xmmword [rsp + 0x350], xmm0
movups xmm0, xmmword [rdi + 0x40]
movaps xmmword [rsp + 0x340], xmm0
movdqu xmm0, xmmword [rdi]
movupd xmm1, xmmword [rdi + 0x10]
movdqu xmm2, xmmword [rdi + 0x20]
movdqu xmm3, xmmword [rdi + 0x30]
movdqa xmmword [rsp + 0x330], xmm3
movdqa xmmword [rsp + 0x320], xmm2
movapd xmmword [rsp + 0x310], xmm1
movdqa xmmword [rsp + 0x300], xmm0
mov rcx, qword [0x1801fa958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x300], 3
je 0x180054722
lea rcx, [rsp + 0x300]
call fcn.180055490
jmp 0x180054722
cmp qword [rsp + 0x1e8], 0
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x1c8]
je 0x180054691
movups xmm0, xmmword [rsp + 0x1e8]
movups xmm1, xmmword [rsp + 0x1f8]
movaps xmmword [rsp + 0x310], xmm1
movaps xmmword [rsp + 0x300], xmm0
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x1800544f6
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055180
mov qword [0x1801fa958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055180
mov rsi, rax
lea rax, [0x1801e43d0]
mov qword [rsi], rax
movdqu xmmword [rsi + 8], xmm6
mov qword [rsi + 0x18], 0
mov r13b, 1
jmp 0x180054754
lea eax, [rsi - 1]
mov word [rsp + 0x1b8], ax
lea rbx, [rsi*4]
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x18005456e
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800551b3
mov qword [0x1801fa958], rax
mov rcx, rax
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800551b3
mov rdi, rax
cmp rsi, 2
jb 0x1800545ef
mov ecx, 1
mov rax, rdi
cmp rsi, 9
jb 0x1800545d9
lea rdx, [rsi - 1]
mov r8, rdx
and r8, 0xfffffffffffffff8
lea rax, [rdi + r8*4]
lea rcx, [r8 + 1]
xor r9d, r9d
nop word cs:[rax + rax]
movups xmmword [rdi + r9*4], xmm7
movups xmmword [rdi + r9*4 + 0x10], xmm7
add r9, 8
cmp r8, r9
jne 0x1800545c0
cmp rdx, r8
je 0x1800545ef
mov rdx, rsi
sub rdx, rcx
nop
mov dword [rax], 0xffff
add rax, 4
dec rdx
jne 0x1800545e0
mov dword [rax], 0xffff
test r14, r14
je 0x180054611
mov r8, qword [rsp + 0x178]
mov rcx, qword [0x1801fa958]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, rsi
shr rax, 2
mov r14, rsi
sub r14, rax
xor ebx, ebx
mov qword [rsp + 0x178], rdi
mov qword [rsp + 0x180], rsi
movabs rax, 0x13b13b13b13b13c
cmp r14, rax
setb al
jae 0x18005503c
imul rsi, r14, 0x68
mov bl, al
shl rbx, 3
test rsi, rsi
je 0x1800546a0
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x18005467e
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800551c2
mov qword [0x1801fa958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapAlloc]
mov rdi, rax
jmp 0x1800546a3
mov r13b, 1
xor ebx, ebx
xor esi, esi
mov dil, 1
jmp 0x18005489f
mov rdi, rbx
test rdi, rdi
je 0x1800551c2
cmp qword [rsp + 0x190], 0
je 0x1800546ce
mov r8, qword [rsp + 0x188]
mov rcx, qword [0x1801fa958]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x190], r14
mov qword [rsp + 0x198], 0
cmp r13, 0x65
jb 0x18005259f
jmp 0x18005503c
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x180054722
cmp qword [rbx + 0x10], 0x11
jb 0x180054710
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1801fa958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x1e8], 0
je 0x180054897
movups xmm0, xmmword [rsp + 0x1e8]
movups xmm1, xmmword [rsp + 0x1f8]
movaps xmmword [rsp + 0x310], xmm1
movaps xmmword [rsp + 0x300], xmm0
xor r13d, r13d
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x18005477d
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055180
mov qword [0x1801fa958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055180
movdqa xmm0, xmmword [rsp + 0x300]
movapd xmm1, xmmword [rsp + 0x310]
movupd xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
lea rcx, [0x1801abb88]
mov qword [rsp + 0x20], rcx
mov rcx, rsi
movabs rdx, 0x8b3d0a8ad14fefc
movabs r8, 0xd0b8144ae0731cd6
mov r9, rax
call fcn.180055280
test rax, rax
je 0x180054891
mov rdi, rax
mov rbx, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0xd0b8144ae0731cd6
xor rdx, rcx
movabs rcx, 0x8b3d0a8ad14fefc
xor rax, rcx
or rax, rdx
jne 0x180054868
movdqu xmm0, xmmword [rdi]
movupd xmm1, xmmword [rdi + 0x10]
movapd xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0x80], xmm0
mov rcx, qword [0x1801fa958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x180054891
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x10]
jmp 0x180054891
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x180054891
cmp qword [rbx + 0x10], 0x11
jb 0x18005487f
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1801fa958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov bl, 1
xor edi, edi
jmp 0x18005489f
mov dil, 1
xor ebx, ebx
xor r13d, r13d
movups xmm0, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0x350], xmm0
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x340], xmm0
movdqu xmm0, xmmword [rsp + 0x160]
movupd xmm1, xmmword [rsp + 0x170]
movdqu xmm2, xmmword [rsp + 0x180]
movdqu xmm3, xmmword [rsp + 0x190]
movdqa xmmword [rsp + 0x330], xmm3
movdqa xmmword [rsp + 0x320], xmm2
movapd xmmword [rsp + 0x310], xmm1
movdqa xmmword [rsp + 0x300], xmm0
mov rax, qword [rsp + 0x158]
mov byte [rsp + 0x36a], al
mov word [rsp + 0x368], r12w
mov qword [rsp + 0x360], rsi
movzx eax, r12w
cmp eax, 0x64
jg 0x180054934
je 0x180054962
jmp 0x180054953
cmp eax, 0x65
je 0x180054fa1
cmp eax, 0xcc
je 0x180054fa7
cmp eax, 0x130
je 0x180054fa7
lea eax, [r12 - 0x66]
cmp ax, 0x62
jae 0x180054f72
mov r12, qword [rbp + 8]
test r12, r12
je 0x180054f4b
lea rcx, [rsp + 0x300]
call fcn.18006f760
mov rcx, rsi
call fcn.18003d0d0
cmp dword [rsp + 0x48], 3
jne 0x1800549a5
mov rax, qword [rsp + 0xd0]
cmp eax, 3
je 0x1800549a5
lea rcx, [rsp + 0xd0]
call fcn.180055490
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
mov rcx, r15
call qword [rax + 0x10]
mov rax, qword [rsp + 0x1e8]
test rax, rax
sete cl
or bl, cl
je 0x1800549e2
lea r11, [rsp + 0x200]
jmp 0x180051387
mov rdx, qword [rsp + 0x1f0]
mov r8, qword [rsp + 0x1f8]
lea rcx, [rsp + 0x200]
call qword [rax + 0x10]
lea r11, [rsp + 0x200]
jmp 0x180051387
mov r9d, 4
jmp 0x180054a15
xor r9d, r9d
sub rbx, r9
je 0x180054dc9
add rax, r9
xor r9d, r9d
xor r8d, r8d
jmp 0x180054a4c
inc r13
test r10b, r10b
movzx r9d, r9b
mov r10d, 1
cmovs r9d, r10d
mov r8, r13
cmp rbx, r13
mov r11, rsi
je 0x180054dc9
mov rsi, r11
mov r13, r8
movzx r10d, byte [rax + r8]
mov r11d, r10d
add r11d, 0xfffffff7
cmp r11d, 0x17
ja case.0x180054a7b.11
mov r13, r15
lea r15, [0x180055204]
movsxd r11, dword [r15 + r11*4]
add r11, r15
mov r15, r13
mov r13, r8
jmp r11
test r10b, r10b
js case.0x180054a7b.9
lea r11d, [r10 - 0x7f]
cmp r11b, 0xa2
jae case.0x180054a7b.9
jmp case.0x180055052.3
mov r10, r13
not r10
add rbx, r10
test r9b, 1
mov r10, rax
lea r9, str.description___is_deprecated__use_Display
cmovne r10, r9
lea rax, [rax + r13 + 1]
mov r9d, 0
cmovne r13, r9
mov qword [rsp + 0x68], r13
mov r11, rsi
jmp 0x180054b0f
lea r10, [r13 + 1]
cmp rbx, r10
jbe 0x180054dc9
cmp byte [rax + r8 + 1], 0xa
jne case.0x180055052.3
mov r11, rsi
sub rbx, r8
add rbx, 0xfffffffffffffffe
test r9b, 1
mov r10, rax
lea r9, str.description___is_deprecated__use_Display
cmovne r10, r9
lea rax, [rax + r8 + 2]
mov r9d, 0
cmovne r8, r9
mov qword [rsp + 0x68], r8
mov qword [rsp + 0xc0], r10
test r10, r10
jne 0x1800516a4
jmp 0x180054dc9
add rsi, qword [rsp + 0x60]
jmp 0x180054b4f
cmp rcx, rsi
jbe 0x180054dc9
mov rax, qword [rsp + 0x48]
cmp byte [rax + rsi], 0xa
jne 0x180054c4d
mov rax, qword [rsp + 0x60]
add rsi, rax
inc rsi
mov rax, rsi
and rax, 0xffffffffffffff00
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x1c8]
lea eax, [rcx - 0x3e8]
movzx eax, ax
cmp eax, 0xfc7c
jb 0x180055167
call fcn.18004a020
test rax, rax
mov r15, qword [rsp + 0x68]
je 0x180054ba8
cmp r15, rdx
jne 0x180054ba8
mov rcx, qword [rsp + 0xc0]
mov rdx, rax
mov r8, r15
call fcn.180158ec0
test eax, eax
je 0x180054cc1
test r15, r15
je 0x180054c61
js 0x18005503c
movzx eax, byte [0x1801fa9d0]
mov rax, qword [0x1801fa958]
test rax, rax
jne 0x180054be0
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1800551f1
mov qword [0x1801fa958], rax
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x68]
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1800551f1
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0xc0]
mov r15, qword [rsp + 0x68]
mov r8, r15
call fcn.180158470
mov rcx, qword [rsp + 0x30]
test cl, 1
jne 0x180054c9d
mov rax, rcx
or rax, 1
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xe8], rax
xor r15d, r15d
lea rax, [0x1801aaf68]
jmp 0x180054cc6
mov rax, qword [rsp + 0x70]
and rax, 0xffffffffffffff00
or rax, 2
jmp 0x18005211b
lea rax, str.description___is_deprecated__use_Display
mov qword [rsp + 0xd8], rax
lea rax, [rsp + 0xd8]
movdqu xmmword [rax + 8], xmm6
xor r15d, r15d
lea rax, [0x1801bdd48]
jmp 0x180054cc6
mov rax, qword [rsp + 0x70]
and rax, 0xffffffffffffff00
or rax, 1
jmp 0x18005211b
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xe8], rcx
xor r15d, r15d
lea rax, [0x1801aaf80]
jmp 0x180054cc6
mov r15b, 1
xor eax, eax
mov qword [rsp + 0xd0], rax
cmp r13, 0x64
mov edx, 0x64
cmovb rdx, r13
test rdx, rdx
je 0x180054d66
cmp r13, 0x64
mov edx, 0x64
cmovb rdx, r13
shl rdx, 5
xor r8d, r8d
mov r9, qword [rsp + r8 + 0x308]
cmp r9, 0xffff
ja 0x180055122
mov r10, qword [rsp + r8 + 0x300]
mov r11, qword [rsp + r8 + 0x310]
sub r10, rdi
add r9, r10
sub r11, rdi
mov rcx, rbp
mov rbp, r14
mov r14, qword [rsp + r8 + 0x318]
add r14, r11
mov qword [rsp + r8 + 0xf80], r10
mov qword [rsp + r8 + 0xf88], r9
mov qword [rsp + r8 + 0xf90], r11
mov qword [rsp + r8 + 0xf98], r14
mov r14, rbp
mov rbp, rcx
add r8, 0x20
cmp rdx, r8
jne 0x180054cf8
movzx ecx, sil
or rcx, qword [rsp + 0x48]
sub r12, rbx
mov qword [rsp + 0x70], rcx
add r12, rcx
lea rdx, [rsp + 0xd8]
mov rcx, qword [rdx + 0x10]
mov qword [rsp + 0x170], rcx
movdqu xmm0, xmmword [rdx]
movdqa xmmword [rsp + 0x160], xmm0
lea r15, [rsp + 0xb8]
jmp 0x18005215c
mov eax, 5
jmp 0x18005211b
mov rax, qword [rsp + 0x70]
and rax, 0xffffffffffffff00
or rax, 1
mov r14, rdx
jmp 0x18005211b
mov qword [r14], 3
jmp 0x180054eea
xor eax, eax
mov byte [r14 + 8], al
mov qword [r14], 4
jmp 0x180054eea
mov rsi, qword [rsp + 0x98]
test sil, 1
jne 0x180054e23
lock dec qword [rsi + 0x20]
lea r15, [rsp + 0xb8]
jne 0x180054e56
mov rax, qword [rsi + 0x20]
cmp qword [rsi + 8], 0
je 0x180054e44
mov r8, qword [rsi]
mov rcx, qword [0x1801fa958]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x180054e44
shr rsi, 5
neg rsi
cmp qword [rsp + 0x90], rsi
lea r15, [rsp + 0xb8]
je 0x180054e56
add rsi, qword [rsp + 0x80]
mov rcx, qword [0x1801fa958]
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x40]
mov byte [rax + 8], 0xb
mov qword [rax], 4
mov r13b, 1
xor esi, esi
mov dil, 1
test r13b, r13b
je 0x180054e8d
mov rax, qword [rsp + 0xd0]
cmp eax, 3
je 0x180054e8d
lea rcx, [rsp + 0xd0]
call fcn.180055490
test sil, sil
jne 0x180054e9f
lea rcx, [rsp + 0x160]
call fcn.18006f760
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
mov rcx, r15
call qword [rax + 0x10]
test dil, dil
je 0x180054eea
mov rax, qword [rsp + 0x1e8]
test rax, rax
je 0x180054eea
mov rdx, qword [rsp + 0x1f0]
mov r8, qword [rsp + 0x1f8]
lea rcx, [rsp + 0x200]
call qword [rax + 0x10]
movaps xmm6, xmmword [rsp + 0x1c00]
movaps xmm7, xmmword [rsp + 0x1c10]
movaps xmm8, xmmword [rsp + 0x1c20]
movaps xmm9, xmmword [rsp + 0x1c30]
movaps xmm10, xmmword [rsp + 0x1c40]
movaps xmm11, xmmword [rsp + 0x1c50]
movaps xmm12, xmmword [rsp + 0x1c60]
movaps xmm13, xmmword [rsp + 0x1c70]
add rsp, 0x1c88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov al, 4
jmp case.0x180055052.0
mov eax, 3
mov qword [r14], rax
lea rcx, [rsp + 0x300]
call fcn.18006f760
mov rcx, qword [rsp + 0x360]
call fcn.18003d0d0
jmp 0x18005502b
mov rax, qword [rsp + 0x230]
mov rax, qword [rax + 8]
movzx eax, byte [rax]
cmp eax, 5
je 0x180054fa7
cmp eax, 7
jne 0x18005505b
add r12d, 0xffffff38
cmp r12w, 0x64
jae 0x18005505b
mov al, 1
xor edx, edx
jmp 0x180054fab
xor edx, edx
xor eax, eax
movaps xmm0, xmmword [rsp + 0x360]
movups xmmword [r14 + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x350]
movups xmmword [r14 + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x340]
movups xmmword [r14 + 0x40], xmm0
movdqa xmm0, xmmword [rsp + 0x300]
movapd xmm1, xmmword [rsp + 0x310]
movdqa xmm2, xmmword [rsp + 0x320]
movdqa xmm3, xmmword [rsp + 0x330]
movdqu xmmword [r14 + 0x30], xmm3
movdqu xmmword [r14 + 0x20], xmm2
movupd xmmword [r14 + 0x10], xmm1
movdqu xmmword [r14], xmm0
mov ecx, eax
xor cl, 1
mov r8d, dword [rsp + 0x50]
and r8b, cl
mov qword [r14 + 0x70], rdx
mov byte [r14 + 0x78], 0
mov byte [r14 + 0x79], r8b
mov byte [r14 + 0x7a], al
mov sil, 1
test r13b, r13b
jne 0x180054e73
jmp 0x180054e8d
ud2
xor eax, eax
mov ecx, ecx
lea rdx, [0x180055264]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
mov al, 0xa
jmp case.0x180055052.0
movups xmm0, xmmword [0x1801ac630]
movaps xmmword [rsp + 0x90], xmm0
movdqu xmm0, xmmword [0x1801ac620]
movdqa xmmword [rsp + 0x80], xmm0
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x80]
call fcn.180055580
test al, al
je 0x1800550b8
mov cl, 2
cmp byte [rsp + 0x158], 1
je 0x180055114
lea rcx, [rsp + 0x300]
call fcn.1800556e0
movzx edx, al
not rdx
jmp 0x180054fa9
lea rcx, [rsp + 0x300]
call fcn.18004f190
cmp rax, 1
jne 0x1800550d9
mov cl, 9
cmp rdx, 0xfffffffffffffffe
jb 0x180054fa9
jmp 0x180055114
movups xmm0, xmmword [0x1801bf330]
movaps xmmword [rsp + 0x90], xmm0
movdqu xmm0, xmmword [0x1801bf320]
movdqa xmmword [rsp + 0x80], xmm0
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x80]
call fcn.180055580
mov cl, 1
test al, al
je 0x18005515b
mov byte [r14 + 8], cl
mov eax, 4
jmp 0x180054f50
mov byte [r14 + 8], 9
mov qword [r14], 4
test r15b, r15b
jne 0x180054eea
mov rdx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xe0]
lea rcx, [rsp + 0xe8]
jmp 0x180054ee7
mov al, 9
jmp case.0x180055052.0
mov rdx, 0xffffffffffffffff
jmp 0x180054fa9
mov byte [r14 + 8], 0xa
jmp 0x180054ddb
mov ecx, 1
mov rdx, rsi
call fcn.180166060
ud2
mov ecx, 8
mov edx, 0x20
call fcn.180166060
ud2
mov ecx, 8
mov edx, 0x18
call fcn.180166060
ud2
mov ecx, 8
mov edx, 0x60
call fcn.180166060
ud2
mov ecx, 2
mov rdx, rbx
call fcn.180166060
ud2
mov rcx, rbx
mov rdx, rsi
call fcn.180166060
ud2
mov ecx, 2
mov edx, 0x20
call fcn.180166060
ud2
mov ecx, 8
mov edx, 0x240
call fcn.180166060
ud2
mov ecx, 1
mov rdx, qword [rsp + 0x68]
call fcn.180166060
ud2