Function at 0x180051d50
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.180159c30
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 [0x180174760]
movdqa xmm8, xmmword [0x1801747f0]
movss xmm9, dword [0x180174770]
movdqa xmm10, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm11, xmmword [0x180174750]
movdqa xmm12, xmmword [0x180174cc0]
movdqa xmm13, xmmword [0x180174cd0]
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 0x1800558a9
mov rdi, qword [rbp]
xor edx, edx
jmp 0x180051e8c
inc rdx
cmp rdx, r12
jae 0x1800558a9
movzx r8d, byte [rdi + rdx]
cmp r8d, 0xa
je 0x180051e80
cmp r8d, 0xd
jne 0x180051ed0
lea rax, [rdx + 1]
cmp rax, r12
jae 0x1800558a9
cmp byte [rdi + rdx + 1], 0xa
jne 0x1800558b5
add rdx, 2
cmp rdx, r12
jb 0x180051e8c
jmp 0x1800558a9
lea rax, [rdi + rdx]
mov rcx, r12
sub rcx, rdx
cmp rcx, 8
jae 0x180051f82
cmp r12, rdx
je 0x1800558a9
cmp r8b, 0x48
jne case.default.0x180055b32
cmp rcx, 2
jb 0x1800558a9
cmp byte [rax + 1], 0x54
jne case.default.0x180055b32
cmp rcx, 3
jb 0x1800558a9
cmp byte [rax + 2], 0x54
jne case.default.0x180055b32
cmp rcx, 4
jb 0x1800558a9
cmp byte [rax + 3], 0x50
jne case.default.0x180055b32
cmp rcx, 5
jb 0x1800558a9
cmp byte [rax + 4], 0x2f
jne case.default.0x180055b32
cmp rcx, 6
jb 0x1800558a9
cmp byte [rax + 5], 0x31
jne case.default.0x180055b32
cmp rcx, 7
jb 0x1800558a9
cmp byte [rax + 6], 0x2e
mov ecx, 6
mov eax, 0
cmove rcx, rax
jne 0x180052c03
jmp 0x1800558a9
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.0x180055b32
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.0x180055b32
test r8b, 1
je case.default.0x180055b32
shr rdx, 0x30
cmp dl, 0x2e
jne case.default.0x180055b32
pextrw edx, xmm0, 3
shr edx, 8
cmp dl, 0x30
je 0x180052049
cmp edx, 0x31
jne case.default.0x180055b32
mov dl, 2
jmp 0x18005204b
mov dl, 1
mov qword [rsp + 0x158], rdx
cmp rcx, 9
jb 0x1800558a9
cmp byte [rax + 8], 0x20
jne case.default.0x180055b32
add rax, 9
lea rbx, [rcx - 9]
cmp byte [rsp + 0x5f], 0
je 0x18005209b
cmp rcx, 9
je 0x1800558a9
test rax, rax
je 0x1800558a9
cmp byte [rax], 0x20
jne 0x18005209b
inc rax
dec rbx
jne 0x180052089
jmp 0x1800558a9
test rbx, rbx
je 0x1800558a9
movzx ecx, byte [rax]
add cl, 0xd0
cmp cl, 9
ja case.0x180055b32.3
cmp rbx, 2
jb 0x1800558a9
movzx edx, byte [rax + 1]
add dl, 0xd0
cmp dl, 9
ja case.0x180055b32.3
cmp rbx, 3
jb 0x1800558a9
movzx r8d, byte [rax + 2]
add r8b, 0xd0
mov byte [rsp + 0x48], r8b
cmp r8b, 0xa
jae case.0x180055b32.3
cmp rbx, 4
jb 0x1800558a9
movzx r9d, byte [rax + 3]
cmp r9d, 0xa
je 0x180052147
cmp r9d, 0xd
je 0x180052151
cmp r9d, 0x20
jne case.0x180055b32.3
cmp byte [rsp + 0x5f], 0
je 0x1800554ea
cmp rbx, 5
jb 0x1800558a9
add rbx, 0xfffffffffffffffc
add rax, 4
cmp byte [rax], 0x20
jne 0x1800554f2
inc rax
dec rbx
jne 0x180052131
jmp 0x1800558a9
add rax, 4
add rbx, 0xfffffffffffffffc
jmp 0x18005216d
cmp rbx, 4
jbe 0x1800558a9
cmp byte [rax + 4], 0xa
jne case.0x180055b32.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 0x1800558a9
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 0x18005227e
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
mov esi, 1
cmp eax, 0xa
je 0x180055605
cmp eax, 0xd
je 0x18005560c
lea rdx, [0x1801bf000]
cmp byte [rax + rdx], 0
jne 0x1800522ae
test al, al
je 0x180052bf0
movzx eax, al
cmp eax, 0xa
je 0x180052266
cmp eax, 0xd
je 0x18005224b
cmp rcx, rsi
jbe 0x1800558a9
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + rsi]
inc rsi
test al, al
jne 0x180052220
jmp 0x180052bf0
cmp rcx, rsi
jbe 0x1800558a9
mov rax, qword [rsp + 0x48]
cmp byte [rax + rsi], 0xa
jne 0x180052bf0
inc rsi
add qword [rsp + 0x60], rsi
add qword [rsp + 0x48], rsi
sub rcx, rsi
jne 0x1800521e8
jmp 0x1800558a9
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
mov esi, 1
cmp eax, 0xa
je 0x180055605
cmp eax, 0xd
je 0x18005560c
lea rdx, [0x1801bf000]
cmp byte [rax + rdx], 0
je 0x180052bf0
mov r9, rcx
sub r9, rsi
mov rax, qword [rsp + 0x48]
lea rdx, [rax + rsi]
inc rdx
cmp rcx, rsi
jbe 0x1800558a9
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, [0x1801bf000]
cmp byte [r8 + r15], 0
lea r15, [rsp + 0xb8]
jne 0x1800522c0
mov rdx, rcx
sub rdx, rsi
mov qword [rsp + 0x40], rdx
cmp r8b, 0x3a
jne 0x180052334
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 0x1800523de
jmp 0x1800558a9
cmp byte [rsp + 0x7e], 0
je 0x18005292a
mov rdx, qword [rsp + 0x48]
add rdx, rsi
mov qword [rsp + 0x30], rdx
sub r10, rcx
xor edx, edx
cmp r8b, 0x20
je 0x180052379
mov r15, rbp
mov rbp, r11
movzx r11d, r8b
cmp r11d, 9
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
jne 0x18005292c
lea r8, [r10 + rdx]
inc r8
test r8, r8
je 0x1800558a9
mov r8, qword [rsp + 0x30]
movzx r8d, byte [r8 + rdx]
inc rdx
cmp r8b, 0x3a
jne 0x180052351
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 0x1800523de
jmp 0x1800558a9
add qword [rsp + 0x60], rcx
add qword [rsp + 0x30], rcx
sub r10, rcx
mov qword [rsp + 0x40], r10
je 0x1800558a9
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax]
cmp byte [rsp + 0x3f], 0
je 0x18005247a
xor r9d, r9d
mov r10, qword [rsp + 0x40]
lea rcx, [r9 + 1]
cmp al, 0x20
je 0x1800523c6
movzx edx, al
cmp edx, 9
je 0x1800523c6
lea r8, [0x1801ae929]
cmp byte [rdx + r8], 0
jne 0x1800524ae
cmp al, 0xa
je 0x180052450
cmp edx, 0xd
mov rdx, rcx
jne 0x180052a26
cmp r10, rdx
jbe 0x1800558a9
mov rax, qword [rsp + 0x30]
cmp byte [rax + r9 + 1], 0xa
mov r10, qword [rsp + 0x40]
jne 0x180055769
add r9, 2
jmp 0x180052453
mov r9, rcx
cmp r9, r10
jae 0x1800558a9
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r9]
cmp eax, 9
mov r10, qword [rsp + 0x40]
je 0x1800523f9
cmp eax, 0x20
je 0x1800523f9
jmp 0x180052b9d
movzx r9d, al
mov ecx, 1
cmp r9d, 9
mov r10, qword [rsp + 0x40]
je 0x1800523c6
cmp r9d, 0x20
je 0x1800523c6
lea rdx, [0x1801ae929]
cmp byte [r9 + rdx], 0
je 0x180052a0d
mov r8, rcx
mov rax, qword [0x1801fd8c8]
test rax, rax
mov qword [rsp + 0x40], r10
jne 0x18005255a
mov rcx, qword [0x1801fd990]
test rcx, rcx
je 0x180052502
mov rax, qword [0x1801fd990]
test cx, cx
js 0x180052539
test rax, rax
je 0x1800528d0
and eax, 0x800
cmp rax, 1
mov ecx, 0
sbb rcx, rcx
or rcx, 1
shr rax, 0xb
jmp 0x180052553
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18016f5f0
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 [0x1801fd990]
test cx, cx
jns 0x1800524de
test rax, rax
je 0x1800528fd
xor ecx, ecx
test eax, 0x800
sete cl
xor rcx, 3
mov rax, rcx
mov qword [0x1801fd8c8], rcx
cmp rax, 1
je 0x1800525c9
cmp rax, 2
je 0x18005261e
cmp rax, 3
jne 0x1800526bf
mov rax, r10
sub rax, r8
jb 0x180055b1c
cmp rax, 0x1f
jbe 0x180052670
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r8]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18004c7b0
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 0x180052574
jmp 0x1800526bf
mov rax, r10
sub rax, r8
jb 0x180055b1c
cmp rax, 0x10
jb 0x1800526bf
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r8]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18004c760
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 0x1800525c9
jmp 0x1800526bf
mov rax, r10
sub rax, r8
jb 0x180055b1c
cmp rax, 0x20
jb 0x1800526bf
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r8]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18004c7b0
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 0x18005261e
jmp 0x1800526bf
mov rax, r10
sub rax, r8
jb 0x180055b1c
cmp rax, 0x10
jb 0x1800526b2
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r8]
mov qword [rsp + 0x50], r8
call fcn.18004c760
mov r8, qword [rsp + 0x50]
add r8, rax
cmp rax, 0x10
lea r11, [rsp + 0x200]
mov r10, qword [rsp + 0x40]
je 0x180052670
jmp 0x1800526bf
lea r11, [rsp + 0x200]
mov r10, qword [rsp + 0x40]
mov rdx, r8
cmp rdx, 0xfffffffffffffff7
ja 0x1800526d9
lea rcx, [rdx + 8]
cmp rcx, r10
ja 0x1800526d9
mov r8, rdx
jmp 0x18005275d
cmp r10, rdx
jbe 0x1800558a9
mov r9, r10
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + rdx]
lea r8, [rdx + 1]
lea rcx, [0x1801ae929]
cmp byte [rax + rcx], 0
je 0x180052802
cmp rdx, 0xfffffffffffffff6
mov r10, r9
ja 0x180052715
lea rcx, [rdx + 9]
cmp rcx, r10
jbe 0x18005275d
add rdx, 9
mov rcx, rdx
lea rdx, [rcx - 8]
cmp r10, rdx
jbe 0x1800558a9
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + rcx - 8]
lea r8, [0x1801ae929]
cmp byte [rax + r8], 0
je 0x1800527fb
inc rcx
cmp rdx, 0xfffffffffffffff6
mov r10, r9
ja 0x18005271c
cmp rcx, r10
ja 0x18005271c
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, [0x1801ae929]
cmp byte [rax + r9], 0
je 0x180052807
movd edx, xmm0
mov eax, edx
shr eax, 8
movzx r8d, al
cmp byte [r8 + r9], 0
je 0x180052811
mov eax, edx
shr eax, 0x10
movzx r8d, al
cmp byte [r8 + r9], 0
je 0x18005281c
shr edx, 0x18
cmp byte [rdx + r9], 0
je 0x180052827
pextrw eax, xmm0, 2
movzx edx, al
cmp byte [rdx + r9], 0
je 0x180052834
shr eax, 8
cmp byte [rax + r9], 0
je 0x18005283f
mov r8, r9
pextrw eax, xmm0, 3
movzx edx, al
cmp byte [rdx + r9], 0
je 0x18005284a
shr eax, 8
cmp byte [rax + r8], 0
mov rdx, rcx
jne 0x1800526c2
mov r8, rcx
jmp 0x180052853
add rcx, 0xfffffffffffffff9
mov r8, rcx
mov r10, r9
jmp 0x180052853
mov r8, qword [rsp + 0x50]
inc r8
jmp 0x180052853
mov r8, qword [rsp + 0x50]
add r8, 2
jmp 0x180052853
mov r8, qword [rsp + 0x50]
add r8, 3
jmp 0x180052853
mov r8, qword [rsp + 0x50]
add r8, 4
mov eax, edx
jmp 0x180052853
mov r8, qword [rsp + 0x50]
add r8, 5
jmp 0x180052853
mov r8, qword [rsp + 0x50]
add r8, 6
jmp 0x180052853
mov r8, qword [rsp + 0x50]
add r8, 7
mov rcx, 0xffffffffffffffff
cmp al, 0xa
je 0x180052895
movzx ecx, al
cmp ecx, 0xd
jne 0x1800529c0
cmp r10, r8
jbe 0x1800558a9
mov rdx, r8
mov rcx, qword [rsp + 0x30]
cmp byte [rcx + rdx], 0xa
jne 0x180055769
mov rax, r10
mov r8, rdx
inc r8
mov rcx, 0xfffffffffffffffe
cmp byte [rsp + 0x3f], 0
je 0x180052aeb
cmp r10, r8
jbe 0x1800558a9
mov rdx, r10
mov r9, r8
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r9]
cmp eax, 9
je 0x1800524b1
cmp eax, 0x20
je 0x1800524b1
jmp 0x180052aeb
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18016f5f0
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
jmp 0x1800524e7
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x50], r8
call fcn.18016f5f0
mov r8, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xb8]
jmp 0x180052542
xor edx, edx
cmp byte [rsp + 0x2f], 0
mov r9, qword [rsp + 0x40]
je 0x180052bf0
add rax, rdx
test r8b, r8b
je 0x180052bf0
movzx r8d, r8b
cmp r8d, 0xa
je 0x18005298f
cmp r8d, 0xd
je 0x18005297a
cmp r9, rdx
jbe 0x1800558a9
movzx r8d, byte [rax]
inc rdx
inc rax
mov r9, qword [rsp + 0x40]
test r8b, r8b
jne 0x180052948
jmp 0x180052bf0
cmp r9, rdx
jbe 0x1800558a9
cmp byte [rax], 0xa
jne 0x180052bf0
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 0x1800521dd
jmp 0x1800558a9
mov rdx, r14
cmp byte [rsp + 0x2f], 0
je 0x180055892
test al, al
je 0x180055892
movzx eax, al
cmp eax, 0xa
je 0x180052ae6
cmp eax, 0xd
je 0x180052ac7
cmp r10, r8
mov r14, rdx
jbe 0x1800558a9
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r8]
inc r8
test al, al
jne 0x1800529d6
jmp 0x180055892
cmp r9d, 0xa
je 0x180052b6a
mov edx, 1
cmp r9d, 0xd
je 0x180052b77
cmp byte [rsp + 0x2f], 0
je 0x180055769
test al, al
mov rcx, qword [rsp + 0x40]
je 0x180055769
movzx eax, al
cmp eax, 0xa
je 0x180052a72
cmp eax, 0xd
je 0x180052a7a
cmp rcx, rdx
jbe 0x1800558a9
mov r8, rdx
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r8]
inc rdx
test al, al
mov rcx, qword [rsp + 0x40]
jne 0x180052a3e
jmp 0x180055769
mov r8, rdx
mov rdx, r14
jmp 0x180052a9c
cmp rcx, rdx
jbe 0x1800558a9
mov r8, rdx
mov rdx, r14
mov rax, qword [rsp + 0x30]
cmp byte [rax + r8], 0xa
jne 0x180055892
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 0x1800521dd
jmp 0x1800558a9
cmp r10, r8
mov r14, rdx
jbe 0x1800558a9
mov rax, qword [rsp + 0x30]
cmp byte [rax + r8], 0xa
jne 0x180055892
inc r8
mov rcx, r10
jmp 0x180052aa1
cmp r13, 0x64
je 0x180055888
mov rdx, r8
mov rax, r8
lea r8, [rdx + rcx]
sub r10, rdx
mov qword [rsp + 0x40], r8
test r8, r8
je 0x180052b4d
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 0x180052b52
bt r9, r8
jae 0x180052b52
inc rcx
dec rax
mov r8, rdx
cmp rdx, rcx
jne 0x180052b27
mov rdx, qword [rsp + 0x40]
jmp 0x180052baf
mov r8, rdx
jmp 0x180052bad
mov r8, rdx
mov rax, rdx
sub rax, rcx
cmp rax, qword [rsp + 0x40]
mov rdx, rax
jbe 0x180052baf
jmp 0x180055b1c
mov r9d, 1
mov r10, qword [rsp + 0x40]
jmp 0x180052b9d
cmp qword [rsp + 0x40], 2
jb 0x1800558a9
mov r9d, 2
mov rax, qword [rsp + 0x30]
cmp byte [rax + 1], 0xa
mov r10, qword [rsp + 0x40]
jne 0x180055769
cmp r13, 0x64
je 0x180055888
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 0x1800521bc
jmp 0x1800558a9
mov rax, qword [rsp + 0x70]
and rax, 0xffffffffffffff00
mov qword [rsp + 0x70], rax
movzx ecx, al
cmp cl, 6
jne 0x180055b20
mov rax, qword [rsp + 0x230]
cmp byte [rax + 0x16], 0
je 0x180055a24
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.1800223c0
cmp byte [rsp + 0x3f], 0
je 0x180052d92
cmp r13, 0x65
jae 0x180055b1c
test r13, r13
je 0x180052d92
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 0x180052cc9
cmp r8, rax
je 0x180052d92
mov r11, qword [r8 + 0x10]
mov r9, qword [r8 + 0x18]
cmp r9, r11
jb 0x180055b1c
cmp r9, rdx
ja 0x180055b1c
add r8, 0x20
cmp r9, r11
je 0x180052cc0
lea r10, [rcx + r11]
mov esi, r9d
sub esi, r11d
not r11
add r11, r9
and rsi, 3
jne 0x180052d1c
cmp r11, 3
jb 0x180052cc0
add r9, rcx
jmp 0x180052d3d
mov byte [r10], 0x20
inc r10
dec rsi
je 0x180052d02
movzx edi, byte [r10]
cmp edi, 0xd
je 0x180052d10
cmp edi, 0xa
je 0x180052d10
jmp 0x180052d14
mov byte [r10 + 3], 0x20
mov r10, r11
cmp r11, r9
je 0x180052cc0
movzx r11d, byte [r10]
cmp r11d, 0xd
je 0x180052d4d
cmp r11d, 0xa
jne 0x180052d51
mov byte [r10], 0x20
movzx r11d, byte [r10 + 1]
cmp r11d, 0xd
je 0x180052d62
cmp r11d, 0xa
jne 0x180052d67
mov byte [r10 + 1], 0x20
movzx r11d, byte [r10 + 2]
cmp r11d, 0xd
je 0x180052d78
cmp r11d, 0xa
jne 0x180052d7d
mov byte [r10 + 2], 0x20
lea r11, [r10 + 4]
movzx esi, byte [r10 + 3]
cmp esi, 0xd
je 0x180052d30
cmp esi, 0xa
je 0x180052d30
jmp 0x180052d35
mov rdi, qword [rsp + 0x270]
mov rax, qword [rsp + 0x278]
mov rsi, qword [rsp + 0x288]
test sil, 1
jne 0x180052de3
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rsi
lea rax, [0x1801c4380]
mov qword [rsp + 0xa0], rax
lea r12, [0x1801c1010]
jmp 0x180052ed2
mov r12, r14
mov r14, qword [rsp + 0x280]
shr rsi, 5
sub rdi, rsi
lea rbx, [rsi + rax]
cmp rax, r14
jne 0x180052e20
test rbx, rbx
je 0x180052e81
test dil, 1
mov r14, r12
mov rax, rdi
jne 0x180052e98
or rax, 1
lea rcx, [0x1801adfc8]
jmp 0x180052e9f
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x180052e49
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c71
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c71
add r14, rsi
mov qword [rax], rdi
mov qword [rax + 8], r14
mov qword [rax + 0x10], 1
lea rcx, [0x180176280]
mov r14, r12
jmp 0x180052e9f
xor eax, eax
lea rdi, str.description___is_deprecated__use_Display
xor ebx, ebx
lea rcx, [0x1801c0e28]
mov r14, r12
jmp 0x180052e9f
lea rcx, [0x1801adfe0]
lea r12, [0x1801c1010]
sub rbx, rsi
jb 0x180055b1c
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 0x180052f3d
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 0x180052f81
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 0x180052fef
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 0x180052ff4
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 0x180055b1c
mov r14, qword [rsp + 0x180]
cmp rdx, r14
jbe 0x180053075
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 0x180055b1c
test rsi, rsi
je 0x180055b1c
test rax, rax
je 0x180055012
lea rcx, [rsp + 0x160]
mov rdx, rsi
call fcn.180050de0
cmp r13, 0x65
jae 0x180055b1c
test r13, r13
je 0x180054d15
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 0x180055b1c
mov qword [rsp + 0x48], rsi
cmp r14, qword [rsp + 0xb0]
ja 0x180055b1c
mov rsi, r14
sub rsi, rdi
je 0x180055936
mov rbx, qword [rsp + 0xa8]
cmp rsi, 0x40
ja 0x180053117
mov rax, rdi
not rax
add r14, rax
mov eax, esi
and eax, 3
cmp r14, 3
jae 0x180053181
xor r9d, r9d
lea r14, [rsp + 0x300]
jmp 0x1800531f7
cmp rsi, 0x10000
jae 0x180055936
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18005314d
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c51
mov qword [0x1801fd960], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c51
mov rcx, rsi
mov r15, rbp
shr rcx, 0xa
je 0x180053297
bsr rcx, rcx
xor rcx, 0x3f
jmp 0x18005329c
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 0x1800531a0
test rax, rax
je 0x180053226
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 0x180053210
mov rcx, r14
mov rdx, rsi
call fcn.180046650
cmp al, 0x51
jne 0x18005326b
cmp rsi, 0xf
ja 0x180053374
xor eax, eax
nop word cs:[rax + rax]
cmp byte [rsp + rax + 0x300], 0
je 0x180055936
inc rax
cmp rsi, rax
jne 0x180053250
jmp 0x180053496
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 0x1800535c5
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 0x1800558c7
cmp rsi, r8
jne 0x18005331c
mov edx, 1
mov rcx, r13
call fcn.1800225b0
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 0x180055b1c
mov qword [rsp + 0x88], r8
inc rdi
cmp r14, rdi
jne 0x1800532e0
mov rdx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x98]
test sil, 1
jne 0x1800533cd
lea rax, [0x1801c4380]
mov r9, rsi
mov rbp, r15
lea r14, [rsp + 0x300]
lea r15, [rsp + 0xb8]
jmp 0x1800535c5
cmp qword [rsp + 0x268], r14
je 0x180053421
mov rcx, qword [rsp + 0x260]
cmp rcx, rsi
mov rax, rsi
cmovb rax, rcx
test rax, rax
je 0x180053421
xor ecx, ecx
cmp byte [rsp + rcx + 0x300], 0
je 0x180055936
inc rcx
cmp rax, rcx
jne 0x18005339f
lea rcx, [rsi - 0x10]
cmp rax, rcx
movabs r8, 0x8080808080808080
jbe 0x180053440
jmp 0x180053491
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 0x180053523
test rdi, rdi
je 0x180053592
test dl, 1
lea r15, [rsp + 0xb8]
mov r9, rdx
jne 0x1800535af
or r9, 1
lea rax, [0x1801adfc8]
jmp 0x1800535b6
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 0x180053491
add rax, 0x10
cmp rax, rcx
jbe 0x180053440
jmp 0x180053491
cmp byte [rsp + rax + 0x300], 0
je 0x180055936
inc rax
cmp rsi, rax
jne 0x180053480
test rsi, rsi
js 0x180055b1c
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
lea r14, [rsp + 0x300]
jne 0x1800534d0
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c51
mov qword [0x1801fd960], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c51
mov rcx, rax
mov rdi, rax
mov rdx, r14
mov r8, rsi
call fcn.18015ab20
mov rdx, rdi
mov r9, rdi
or r9, 1
test dl, 1
cmovne r9, rdi
lea rax, [0x1801adfe0]
lea rcx, [0x1801adfc8]
cmove rax, rcx
mov r8, rsi
jmp 0x1800535c5
mov r15, rdx
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18005354f
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c71
mov qword [0x1801fd960], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c71
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, [0x180176280]
lea r15, [rsp + 0xb8]
jmp 0x1800535b6
lea rdx, str.description___is_deprecated__use_Display
xor r9d, r9d
xor edi, edi
lea rax, [0x1801c0e28]
lea r15, [rsp + 0xb8]
jmp 0x1800535b6
lea rax, [0x1801adfe0]
mov r8, rdi
sub r8, rsi
jb 0x180055b1c
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 0x180055b1c
mov r9, qword [rsp + 0xb0]
cmp r9, rsi
jb 0x180055b1c
sub rsi, r12
mov qword [rsp + 0x240], rdx
jne 0x18005365f
mov ecx, edx
xor esi, esi
xor edx, edx
mov qword [rsp + 0x140], rdx
lea r12, str.description___is_deprecated__use_Display
lea rdx, [0x1801c0e28]
mov qword [rsp + 0x148], rdx
test rax, rax
mov qword [rsp + 0x1e0], rsi
je 0x1800536c5
jmp 0x180053724
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 0x180055b1c
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 0x180053724
cmp cl, 0x14
jne 0x180053724
test byte [rsp + 0x50], 1
jne 0x1800536fb
mov rcx, r12
mov rdx, rsi
call fcn.18004fd50
mov dword [rsp + 0x50], eax
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x1d8], r12
jne 0x18005373e
jmp 0x1800545b3
xor eax, eax
nop dword [rax]
cmp rsi, rax
je 0x1800539da
movzx ecx, byte [r12 + rax]
inc rax
cmp cl, 9
je 0x180053700
add cl, 0xe0
cmp cl, 0x5f
jb 0x180053700
mov al, 1
mov dword [rsp + 0x50], eax
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x1d8], r12
je 0x1800545b3
mov rax, qword [rsp + 0x48]
mov r13, qword [rax]
mov rdi, qword [rax + 8]
cmp rdi, r13
jb 0x180055b1c
mov r9, qword [rsp + 0xb0]
cmp r9, rdi
jb 0x180055b1c
sub rdi, r13
jne 0x180053782
movdqa xmmword [rsp + 0x130], xmm6
lea rcx, [0x1801c0e28]
lea r13, str.description___is_deprecated__use_Display
jmp 0x1800537c7
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 0x180053847
test rbx, rbx
js 0x180053afc
xorps xmm0, xmm0
cvtsi2ss xmm0, rbx
mov rsi, qword [rsp + 0xf0]
test rsi, rsi
jns 0x180053b27
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 0x180053b3a
mov qword [rsp + 0xd0], 0
add rsi, rsi
lea rcx, [rsp + 0xd0]
mov rdx, rsi
jmp 0x180053875
mov rdx, qword [rsp + 0xf0]
mov rax, rdx
shr rax, 2
mov rcx, rdx
sub rcx, rax
cmp rbx, rcx
jne 0x18005387a
test rbx, rbx
je 0x180053e5b
add rdx, rdx
lea rcx, [rsp + 0xd0]
call fcn.180056120
mov rcx, qword [rsp + 0xd0]
cmp rcx, 2
mov qword [rsp + 0x238], rcx
jne 0x180053943
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.180039370
mov rbx, r14
test r14, r14
je 0x180053d11
mov rdx, qword [rsp + 0x210]
mov r8, qword [rsp + 0x218]
mov rcx, rsi
mov qword [rsp + 0x68], rdx
jmp 0x180053d32
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 0x180053e3f
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x68], rax
mov r8, qword [rsp + 0x218]
test r8, r8
je 0x180054047
mov rcx, r8
and rcx, 7
je 0x180053fc0
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 0x1800539c0
jmp 0x180053fd2
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.18005a170
test rax, rax
je 0x18005371e
mov rcx, rax
call fcn.180070570
cmp rdx, 5
jne 0x180053a40
movzx ecx, byte [rax]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x63
jne 0x180053a40
movzx ecx, byte [rax + 1]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x6c
jne 0x180053a40
movzx ecx, byte [rax + 2]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x6f
jne 0x180053a40
movzx ecx, byte [rax + 3]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x73
jne 0x180053a40
movzx eax, byte [rax + 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
jne 0x180053a40
mov dword [rsp + 0x50], 0
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x1d8], r12
jne 0x18005373e
jmp 0x1800545b3
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 0x180053806
cvtsi2ss xmm1, rsi
divss xmm0, xmm1
ucomiss xmm0, xmm9
jae 0x18005382b
mov eax, dword [0x1801fd9dc]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0xa0], 0
jne 0x180053b5c
call fcn.18011ed90
mov qword [rsp + 0xd0], 2
mov eax, dword [0x1801fd9dc]
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 0x180053bff
lea rcx, [rsi - 1]
movabs rax, 0x3fffffffffffffff
and rcx, rax
mov rax, rdi
cmp rcx, 7
jb 0x180053be9
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 0x180053bd0
cmp rcx, rdx
je 0x180053bff
lea rcx, [rdi + rsi*4]
nop dword [rax]
mov dword [rax], 0xffff
add rax, 4
cmp rax, rcx
jne 0x180053bf0
test rbx, rbx
je 0x18005387a
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 0x180053c48
mov word [rdi + rcx*4], r13w
mov rdx, rcx
mov word [rdi + rdx*4 + 2], ax
cmp r14, qword [rsp + 0x30]
je 0x18005387a
mov r13, r12
mov rbx, rbp
mov rbp, r14
add r14, 0x60
inc r12
lea rdx, [rbp + 0x38]
lea rcx, [rsp + 0xd0]
call fcn.180050360
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 0x180053c80
cmp word [rdi + rcx*4], 0xffff
je 0x180053c30
movzx r8d, word [rdi + rcx*4 + 2]
and r8d, r15d
mov r9d, ecx
sub r9d, r8d
and r9d, r15d
cmp r9, rdx
jb 0x180053ce0
inc rdx
inc rcx
mov r8, rcx
jmp 0x180053c80
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 0x180053ce0
movzx ecx, word [rdi + rdx*4]
cmp cx, 0xffff
jne 0x180053cb7
mov word [rdi + rdx*4], r13w
mov word [rdi + rdx*4 + 2], ax
cmp r14, qword [rsp + 0x30]
jne 0x180053c48
jmp 0x18005387a
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.180039370
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 0x180054047
movzx ecx, byte [rsp + 0x210]
mov qword [rsp + 0x68], rcx
xor r15, rcx
imul r15, rax
xor r10d, r10d
jmp 0x180054047
mov word [rsp + 0x128], 7
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x180053e8e
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055caf
mov qword [0x1801fd960], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055caf
mov rsi, rax
movups xmmword [rax], xmm7
movups xmmword [rax + 0x10], xmm7
cmp qword [rsp + 0xf0], 0
je 0x180053ed4
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x1801fd960]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0xf0], 8
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x180053f11
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055cc0
mov qword [0x1801fd960], rax
mov r8d, 0x240
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055cc0
mov rsi, rax
mov rdi, qword [rsp + 0xf8]
mov r14, qword [rsp + 0x108]
test r14, r14
je 0x180053f7e
lea rbx, [rdi + 0x30]
jmp 0x180053f64
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 0x180053f7e
mov rax, qword [rbx + 8]
test rax, rax
je 0x180053f49
lea rcx, [rbx + 0x20]
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x18]
call qword [rax + 0x10]
jmp 0x180053f49
cmp qword [rsp + 0x100], 0
je 0x180053f9b
mov rcx, qword [0x1801fd960]
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 0x18005387a
mov rdx, r15
mov rax, qword [rsp + 0x68]
movabs r9, 0x100000001b3
cmp r8, 8
jb 0x180054044
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 0x180053fe0
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 0x1800540c6
mov rcx, qword [rsp + 0x68]
cmp byte [rax + 8], cl
je 0x180054189
inc r13
inc rbp
mov rax, rbp
nop dword [rax]
mov rbp, rax
mov eax, 0
cmp rbp, r12
jae 0x1800540d0
movzx r14d, word [rsi + rbp*4]
cmp r14, 0xffff
je 0x18005425a
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 0x1800542c1
cmp ax, r15w
jne 0x1800540c0
cmp r9, r14
jbe 0x180055b1c
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 0x1800540c0
lea rax, [r8 + rbx]
add rax, 0x38
test rcx, rcx
je 0x1800540b2
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
jne 0x1800540c0
mov rcx, qword [rax + 8]
mov rdx, r11
mov r8, qword [rsp + 0x30]
call fcn.18015b570
mov r11, qword [rsp + 0x228]
mov r8, qword [rsp + 0x150]
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0xc0]
test eax, eax
jne 0x1800540c0
lea rdi, [r8 + rbx]
cmp qword [r8 + rbx], 0
je 0x180054c6e
mov rbx, qword [rdi + 0x10]
mov rsi, qword [rsp + 0x120]
mov rcx, rsi
cmp rsi, qword [rsp + 0x118]
lea r13, [rsp + 0x80]
jne 0x1800541d1
lea rcx, [rsp + 0x110]
mov rdx, rsi
call fcn.1801287d0
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 0x180055b1c
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 0x1800545b3
test r10, r10
je 0x18005433f
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 0x180054341
cmp r13, 0x200
setae r14b
cmp dword [rsp + 0x238], 2
setne dil
test r10, r10
je 0x180054449
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 0x18005444c
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 0x180055b1c
mov rax, r9
cmp r9, qword [rsp + 0x100]
jne 0x1800543b8
lea rcx, [rsp + 0xf8]
mov rdx, r9
mov rdi, r11
call fcn.180056460
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 0x180055b1c
mov rax, qword [rsp + 0xe8]
mov word [rax + rbp*4], r9w
mov word [rax + rbp*4 + 2], r15w
jmp 0x1800545b3
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 0x180055b1c
mov rax, r9
cmp r9, qword [rsp + 0x100]
jne 0x1800544c3
lea rcx, [rsp + 0xf8]
mov rdx, r9
mov rsi, r11
call fcn.180056460
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 0x180054540
movzx edx, word [rsi + rcx*4]
cmp dx, 0xffff
je 0x180054579
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 0x180054540
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.1800509c0
mov rcx, rsi
mov rdx, r13
call fcn.180050360
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 0x180054696
cmp byte [rax + 8], r11b
je 0x18005475d
nop dword [rax + rax]
inc rbp
inc r15
mov rax, r15
nop dword [rax]
mov r15, rax
mov eax, 0
cmp r15, r12
jae 0x1800546a0
movzx r13d, word [rbx + r15*4]
cmp r13, 0xffff
je 0x180054860
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 0x18005498a
cmp ax, r8w
jne 0x180054690
cmp rsi, r13
jbe 0x180055b1c
test r10, r10
sete al
imul rdi, r13, 0x68
mov rcx, qword [r9 + rdi + 0x40]
test rcx, rcx
setne dl
cmp dl, al
je 0x180054690
lea rax, [r9 + rdi]
add rax, 0x40
test rcx, rcx
je 0x180054681
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
jne 0x180054690
mov rcx, qword [rax + 8]
mov rdx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x30]
call fcn.18015b570
movzx r11d, byte [rsp + 0x228]
mov r10, qword [rsp + 0xc0]
movzx r8d, word [rsp + 0x68]
mov r9, qword [rsp + 0x60]
test eax, eax
jne 0x180054690
lea r14, [r9 + rdi]
cmp qword [r9 + rdi], 0
je 0x180054b58
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, [0x1801c1010]
jne 0x1800547b4
lea rcx, [rsp + 0x1a0]
mov rdx, rsi
call fcn.180088fe0
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 0x180055b1c
lea rax, [rbx + rbx*8]
mov qword [rcx + rax*8 + 0x10], 1
mov qword [rcx + rax*8 + 0x18], rsi
mov qword [r14], 1
jmp 0x180054c2c
cmp rsi, 0x7fff
ja 0x180055b1c
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 0x1800548d9
lea rcx, [rsp + 0x188]
mov rdx, rsi
call fcn.18006ee60
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 0x180055b1c
mov rax, qword [rsp + 0x178]
mov word [rax + r15*4], si
mov word [rax + r15*4 + 2], di
jmp 0x180054b31
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 0x180055b1c
mov rax, rsi
cmp rsi, qword [rsp + 0x190]
lea r13, [rsp + 0x80]
mov r14d, dword [rsp + 0xc8]
jne 0x180054a20
lea rcx, [rsp + 0x188]
mov rdx, rsi
call fcn.18006ee60
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 0x180054ac0
movzx edx, word [rbx + rcx*4]
cmp dx, 0xffff
je 0x180054af8
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 0x180054ac0
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, [0x1801c1010]
mov rsi, qword [rsp + 0x48]
cmp rsi, qword [rsp + 0x258]
jne 0x1800530b6
jmp 0x180054d15
mov rsi, qword [rsp + 0x1b0]
mov rax, rsi
cmp rsi, qword [rsp + 0x1a8]
lea r15, [rsp + 0xb8]
mov rbp, qword [rsp + 0x1d0]
lea r12, [0x1801c1010]
jne 0x180054b9c
lea rcx, [rsp + 0x1a0]
mov rdx, rsi
call fcn.180088fe0
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 0x180054b45
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x10]
jmp 0x180054b45
mov rsi, qword [rsp + 0x120]
mov rax, rsi
cmp rsi, qword [rsp + 0x118]
lea r13, [rsp + 0x80]
jne 0x180054ca3
lea rcx, [rsp + 0x110]
mov rdx, rsi
call fcn.1801287d0
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 0x1800545b3
mov r13, qword [rsp + 0xd0]
cmp r13, 3
mov qword [rsp + 0x48], r13
je 0x180054f71
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 [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x1c8]
jne 0x180054dc6
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c60
mov qword [0x1801fd960], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c60
mov rsi, rax
lea rax, [0x1801e7400]
mov qword [rsi], rax
movdqu xmmword [rsi + 8], xmm6
mov qword [rsi + 0x18], 0
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x180054e23
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c82
mov qword [0x1801fd960], rax
mov r8d, 0x60
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c82
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.180055f70
mov qword [rsp + 0x20], rcx
mov rcx, rsi
movabs rdx, 0xe7c5a09728dbedf0
movabs r8, 0xafc99d9965eca8e3
mov r9, rax
call fcn.180055d60
test rax, rax
je 0x180055202
mov rdi, rax
mov rbx, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0xafc99d9965eca8e3
xor rdx, rcx
movabs rcx, 0xe7c5a09728dbedf0
xor rax, rcx
or rax, rdx
jne 0x1800551d9
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 [0x1801fd960]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x300], 3
je 0x180055202
lea rcx, [rsp + 0x300]
call fcn.180055f70
jmp 0x180055202
cmp qword [rsp + 0x1e8], 0
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x1c8]
je 0x180055171
movups xmm0, xmmword [rsp + 0x1e8]
movups xmm1, xmmword [rsp + 0x1f8]
movaps xmmword [rsp + 0x310], xmm1
movaps xmmword [rsp + 0x300], xmm0
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x180054fd6
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c60
mov qword [0x1801fd960], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c60
mov rsi, rax
lea rax, [0x1801e7400]
mov qword [rsi], rax
movdqu xmmword [rsi + 8], xmm6
mov qword [rsi + 0x18], 0
mov r13b, 1
jmp 0x180055234
lea eax, [rsi - 1]
mov word [rsp + 0x1b8], ax
lea rbx, [rsi*4]
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18005504e
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c93
mov qword [0x1801fd960], rax
mov rcx, rax
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c93
mov rdi, rax
cmp rsi, 2
jb 0x1800550cf
mov ecx, 1
mov rax, rdi
cmp rsi, 9
jb 0x1800550b9
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 0x1800550a0
cmp rdx, r8
je 0x1800550cf
mov rdx, rsi
sub rdx, rcx
nop
mov dword [rax], 0xffff
add rax, 4
dec rdx
jne 0x1800550c0
mov dword [rax], 0xffff
test r14, r14
je 0x1800550f1
mov r8, qword [rsp + 0x178]
mov rcx, qword [0x1801fd960]
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 0x180055b1c
imul rsi, r14, 0x68
mov bl, al
shl rbx, 3
test rsi, rsi
je 0x180055180
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18005515e
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055ca2
mov qword [0x1801fd960], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.kernel32.dll_HeapAlloc]
mov rdi, rax
jmp 0x180055183
mov r13b, 1
xor ebx, ebx
xor esi, esi
mov dil, 1
jmp 0x18005537f
mov rdi, rbx
test rdi, rdi
je 0x180055ca2
cmp qword [rsp + 0x190], 0
je 0x1800551ae
mov r8, qword [rsp + 0x188]
mov rcx, qword [0x1801fd960]
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 0x18005307f
jmp 0x180055b1c
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x180055202
cmp qword [rbx + 0x10], 0x11
jb 0x1800551f0
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
cmp qword [rsp + 0x1e8], 0
je 0x180055377
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 [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x18005525d
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055c60
mov qword [0x1801fd960], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055c60
movdqa xmm0, xmmword [rsp + 0x300]
movapd xmm1, xmmword [rsp + 0x310]
movupd xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
lea rcx, [0x1801aec08]
mov qword [rsp + 0x20], rcx
mov rcx, rsi
movabs rdx, 0x7a60d917d51b3d46
movabs r8, 0xf3ea6f0af9cbcfd7
mov r9, rax
call fcn.180055d60
test rax, rax
je 0x180055371
mov rdi, rax
mov rbx, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0xf3ea6f0af9cbcfd7
xor rdx, rcx
movabs rcx, 0x7a60d917d51b3d46
xor rax, rcx
or rax, rdx
jne 0x180055348
movdqu xmm0, xmmword [rdi]
movupd xmm1, xmmword [rdi + 0x10]
movapd xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0x80], xmm0
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x180055371
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x10]
jmp 0x180055371
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x180055371
cmp qword [rbx + 0x10], 0x11
jb 0x18005535f
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1801fd960]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov bl, 1
xor edi, edi
jmp 0x18005537f
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 0x180055414
je 0x180055442
jmp 0x180055433
cmp eax, 0x65
je 0x180055a81
cmp eax, 0xcc
je 0x180055a87
cmp eax, 0x130
je 0x180055a87
lea eax, [r12 - 0x66]
cmp ax, 0x62
jae 0x180055a52
mov r12, qword [rbp + 8]
test r12, r12
je 0x180055a2b
lea rcx, [rsp + 0x300]
call fcn.180008e20
mov rcx, rsi
call fcn.1800837a0
cmp dword [rsp + 0x48], 3
jne 0x180055485
mov rax, qword [rsp + 0xd0]
cmp eax, 3
je 0x180055485
lea rcx, [rsp + 0xd0]
call fcn.180055f70
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 0x1800554c2
lea r11, [rsp + 0x200]
jmp 0x180051e67
mov rdx, qword [rsp + 0x1f0]
mov r8, qword [rsp + 0x1f8]
lea rcx, [rsp + 0x200]
call qword [rax + 0x10]
lea r11, [rsp + 0x200]
jmp 0x180051e67
mov r9d, 4
jmp 0x1800554f5
xor r9d, r9d
sub rbx, r9
je 0x1800558a9
add rax, r9
xor r9d, r9d
xor r8d, r8d
jmp 0x18005552c
inc r13
test r10b, r10b
movzx r9d, r9b
mov r10d, 1
cmovs r9d, r10d
mov r8, r13
cmp rbx, r13
mov r11, rsi
je 0x1800558a9
mov rsi, r11
mov r13, r8
movzx r10d, byte [rax + r8]
mov r11d, r10d
add r11d, 0xfffffff7
cmp r11d, 0x17
ja case.0x18005555b.11
mov r13, r15
lea r15, [0x180055ce4]
movsxd r11, dword [r15 + r11*4]
add r11, r15
mov r15, r13
mov r13, r8
jmp r11
test r10b, r10b
js case.0x18005555b.9
lea r11d, [r10 - 0x7f]
cmp r11b, 0xa2
jae case.0x18005555b.9
jmp case.0x180055b32.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 0x1800555ef
lea r10, [r13 + 1]
cmp rbx, r10
jbe 0x1800558a9
cmp byte [rax + r8 + 1], 0xa
jne case.0x180055b32.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 0x180052184
jmp 0x1800558a9
add rsi, qword [rsp + 0x60]
jmp 0x18005562f
cmp rcx, rsi
jbe 0x1800558a9
mov rax, qword [rsp + 0x48]
cmp byte [rax + rsi], 0xa
jne 0x18005572d
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 0x180055c47
call fcn.18004a6b0
test rax, rax
mov r15, qword [rsp + 0x68]
je 0x180055688
cmp r15, rdx
jne 0x180055688
mov rcx, qword [rsp + 0xc0]
mov rdx, rax
mov r8, r15
call fcn.18015b570
test eax, eax
je 0x1800557a1
test r15, r15
je 0x180055741
js 0x180055b1c
movzx eax, byte [0x1801fd9d8]
mov rax, qword [0x1801fd960]
test rax, rax
jne 0x1800556c0
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x180055cd1
mov qword [0x1801fd960], rax
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x68]
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x180055cd1
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.18015ab20
mov rcx, qword [rsp + 0x30]
test cl, 1
jne 0x18005577d
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, [0x1801adfc8]
jmp 0x1800557a6
mov rax, qword [rsp + 0x70]
and rax, 0xffffffffffffff00
or rax, 2
jmp 0x180052bfb
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, [0x1801c0e28]
jmp 0x1800557a6
mov rax, qword [rsp + 0x70]
and rax, 0xffffffffffffff00
or rax, 1
jmp 0x180052bfb
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xe8], rcx
xor r15d, r15d
lea rax, [0x1801adfe0]
jmp 0x1800557a6
mov r15b, 1
xor eax, eax
mov qword [rsp + 0xd0], rax
cmp r13, 0x64
mov edx, 0x64
cmovb rdx, r13
test rdx, rdx
je 0x180055846
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 0x180055c02
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 0x1800557d8
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 0x180052c3c
mov eax, 5
jmp 0x180052bfb
mov rax, qword [rsp + 0x70]
and rax, 0xffffffffffffff00
or rax, 1
mov r14, rdx
jmp 0x180052bfb
mov qword [r14], 3
jmp 0x1800559ca
xor eax, eax
mov byte [r14 + 8], al
mov qword [r14], 4
jmp 0x1800559ca
mov rsi, qword [rsp + 0x98]
test sil, 1
jne 0x180055903
lock dec qword [rsi + 0x20]
lea r15, [rsp + 0xb8]
jne 0x180055936
mov rax, qword [rsi + 0x20]
cmp qword [rsi + 8], 0
je 0x180055924
mov r8, qword [rsi]
mov rcx, qword [0x1801fd960]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x180055924
shr rsi, 5
neg rsi
cmp qword [rsp + 0x90], rsi
lea r15, [rsp + 0xb8]
je 0x180055936
add rsi, qword [rsp + 0x80]
mov rcx, qword [0x1801fd960]
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 0x18005596d
mov rax, qword [rsp + 0xd0]
cmp eax, 3
je 0x18005596d
lea rcx, [rsp + 0xd0]
call fcn.180055f70
test sil, sil
jne 0x18005597f
lea rcx, [rsp + 0x160]
call fcn.180008e20
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 0x1800559ca
mov rax, qword [rsp + 0x1e8]
test rax, rax
je 0x1800559ca
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.0x180055b32.0
mov eax, 3
mov qword [r14], rax
lea rcx, [rsp + 0x300]
call fcn.180008e20
mov rcx, qword [rsp + 0x360]
call fcn.1800837a0
jmp 0x180055b0b
mov rax, qword [rsp + 0x230]
mov rax, qword [rax + 8]
movzx eax, byte [rax]
cmp eax, 5
je 0x180055a87
cmp eax, 7
jne 0x180055b3b
add r12d, 0xffffff38
cmp r12w, 0x64
jae 0x180055b3b
mov al, 1
xor edx, edx
jmp 0x180055a8b
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 0x180055953
jmp 0x18005596d
ud2
xor eax, eax
mov ecx, ecx
lea rdx, [0x180055d44]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
mov al, 0xa
jmp case.0x180055b32.0
movups xmm0, xmmword [0x1801af698]
movaps xmmword [rsp + 0x90], xmm0
movdqu xmm0, xmmword [0x1801af688]
movdqa xmmword [rsp + 0x80], xmm0
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x80]
call fcn.18003e6d0
test al, al
je 0x180055b98
mov cl, 2
cmp byte [rsp + 0x158], 1
je 0x180055bf4
lea rcx, [rsp + 0x300]
call fcn.180056060
movzx edx, al
not rdx
jmp 0x180055a89
lea rcx, [rsp + 0x300]
call fcn.18004fef0
cmp rax, 1
jne 0x180055bb9
mov cl, 9
cmp rdx, 0xfffffffffffffffe
jb 0x180055a89
jmp 0x180055bf4
movups xmm0, xmmword [0x1801c2360]
movaps xmmword [rsp + 0x90], xmm0
movdqu xmm0, xmmword [0x1801c2350]
movdqa xmmword [rsp + 0x80], xmm0
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x80]
call fcn.18003e6d0
mov cl, 1
test al, al
je 0x180055c3b
mov byte [r14 + 8], cl
mov eax, 4
jmp 0x180055a30
mov byte [r14 + 8], 9
mov qword [r14], 4
test r15b, r15b
jne 0x1800559ca
mov rdx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xe0]
lea rcx, [rsp + 0xe8]
jmp 0x1800559c7
mov al, 9
jmp case.0x180055b32.0
mov rdx, 0xffffffffffffffff
jmp 0x180055a89
mov byte [r14 + 8], 0xa
jmp 0x1800558bb
mov ecx, 1
mov rdx, rsi
call fcn.180168710
ud2
mov ecx, 8
mov edx, 0x20
call fcn.180168710
ud2
mov ecx, 8
mov edx, 0x18
call fcn.180168710
ud2
mov ecx, 8
mov edx, 0x60
call fcn.180168710
ud2
mov ecx, 2
mov rdx, rbx
call fcn.180168710
ud2
mov rcx, rbx
mov rdx, rsi
call fcn.180168710
ud2
mov ecx, 2
mov edx, 0x20
call fcn.180168710
ud2
mov ecx, 8
mov edx, 0x240
call fcn.180168710
ud2
mov ecx, 1
mov rdx, qword [rsp + 0x68]
call fcn.180168710
ud2