Function at 0x180057e40
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, 0x1c48
call fcn.18016ffb0
sub rsp, rax
movaps xmmword [rsp + 0x1c30], xmm10
movaps xmmword [rsp + 0x1c20], xmm9
movaps xmmword [rsp + 0x1c10], xmm8
movaps xmmword [rsp + 0x1c00], xmm7
movaps xmmword [rsp + 0x1bf0], xmm6
mov rbp, rdx
mov r12, rcx
lea r15, [rsp + 0xc8]
movzx eax, byte [r8 + 0x15]
mov byte [rsp + 0x6f], al
movzx eax, byte [r8 + 0x13]
mov byte [rsp + 0x4f], al
movzx eax, byte [r8 + 0x14]
mov byte [rsp + 0x2f], al
movzx eax, byte [r8 + 0x10]
mov byte [rsp + 0x6e], al
lea rax, [rsp + 0x2f7]
and rax, 0xfffffffffffffff8
lea rcx, [rsp + 0x2f0]
mov qword [rsp + 0x268], rax
sub rax, rcx
mov qword [rsp + 0x260], rax
xorps xmm6, xmm6
movaps xmm7, xmmword [0x18018b820]
movss xmm8, dword [0x18018b830]
movdqa xmm9, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm10, xmmword [0x18018b810]
mov qword [rsp + 0x230], r8
movzx eax, byte [r8 + 0x11]
mov byte [rsp + 0x3f], al
lea r11, [rsp + 0x228]
mov r14, qword [rdx + 8]
test r14, r14
je 0x18005b778
mov rdi, qword [rbp]
xor edx, edx
jmp 0x180057f3c
inc rdx
cmp rdx, r14
jae 0x18005b778
movzx r8d, byte [rdi + rdx]
cmp r8d, 0xa
je 0x180057f30
cmp r8d, 0xd
jne 0x180057f80
lea rax, [rdx + 1]
cmp rax, r14
jae 0x18005b778
cmp byte [rdi + rdx + 1], 0xa
jne 0x18005b785
add rdx, 2
cmp rdx, r14
jb 0x180057f3c
jmp 0x18005b778
lea rax, [rdi + rdx]
mov rcx, r14
sub rcx, rdx
cmp rcx, 8
jae 0x180058024
cmp r14, rdx
je 0x18005b778
cmp r8b, 0x48
jne case.default.0x18005ba45
cmp rcx, 2
jb 0x18005b778
cmp byte [rax + 1], 0x54
jne case.default.0x18005ba45
cmp rcx, 3
jb 0x18005b778
cmp byte [rax + 2], 0x54
jne case.default.0x18005ba45
cmp rcx, 4
jb 0x18005b778
cmp byte [rax + 3], 0x50
jne case.default.0x18005ba45
cmp rcx, 5
jb 0x18005b778
cmp byte [rax + 4], 0x2f
jne case.default.0x18005ba45
cmp rcx, 6
jb 0x18005b778
cmp byte [rax + 5], 0x31
jne case.default.0x18005ba45
cmp rcx, 7
jb 0x18005b778
cmp byte [rax + 6], 0x2e
jne case.default.0x18005ba45
jmp 0x18005b778
mov rdx, qword [rax]
mov r8, rdx
movabs r9, 0xffffffffffffff
and r8, r9
movabs r9, 0x2e312f50545448
cmp r8, r9
jne case.default.0x18005ba45
shr rdx, 0x38
cmp dl, 0x30
je 0x180058060
cmp edx, 0x31
jne case.default.0x18005ba45
mov dl, 2
jmp 0x180058062
mov dl, 1
mov qword [rsp + 0x188], rdx
cmp rcx, 9
jb 0x18005b778
cmp byte [rax + 8], 0x20
jne case.default.0x18005ba45
add rax, 9
lea rbx, [rcx - 9]
cmp byte [rsp + 0x4f], 0
je 0x1800580b2
cmp rcx, 9
je 0x18005b778
test rax, rax
je 0x18005b778
cmp byte [rax], 0x20
jne 0x1800580b2
inc rax
dec rbx
jne 0x1800580a0
jmp 0x18005b778
test rbx, rbx
je 0x18005b778
movzx ecx, byte [rax]
add cl, 0xd0
cmp cl, 9
ja case.0x18005ba45.3
cmp rbx, 2
jb 0x18005b778
movzx edx, byte [rax + 1]
add dl, 0xd0
cmp dl, 9
ja case.0x18005ba45.3
cmp rbx, 3
jb 0x18005b778
movzx r8d, byte [rax + 2]
add r8b, 0xd0
mov byte [rsp + 0x40], r8b
cmp r8b, 0xa
jae case.0x18005ba45.3
cmp rbx, 4
jb 0x18005b778
movzx r9d, byte [rax + 3]
cmp r9d, 0xa
je 0x18005815e
cmp r9d, 0xd
je 0x180058168
cmp r9d, 0x20
jne case.0x18005ba45.3
cmp byte [rsp + 0x4f], 0
je 0x18005b3b8
cmp rbx, 5
jb 0x18005b778
add rbx, 0xfffffffffffffffc
add rax, 4
cmp byte [rax], 0x20
jne 0x18005b3c0
inc rax
dec rbx
jne 0x180058148
jmp 0x18005b778
add rax, 4
add rbx, 0xfffffffffffffffc
jmp 0x180058184
cmp rbx, 4
jbe 0x18005b778
cmp byte [rax + 4], 0xa
jne case.0x18005ba45.3
add rax, 5
add rbx, 0xfffffffffffffffb
xor r8d, r8d
mov qword [rsp + 0x98], r8
lea r9, str.description___is_deprecated__use_Display
mov qword [rsp + 0xa0], r9
test rbx, rbx
je 0x18005b778
movzx ecx, cl
imul ecx, ecx, 0x64
movzx edx, dl
add edx, edx
lea edx, [rdx + rdx*4]
movzx r8d, byte [rsp + 0x40]
add r8d, edx
add r8d, ecx
mov qword [rsp + 0x168], r8
mov rdx, rbx
xor ecx, ecx
mov qword [rsp + 0x50], rcx
xor r13d, r13d
mov rcx, r13
shl rcx, 5
add rcx, rsp
add rcx, 0x2f0
mov qword [rsp + 0x180], rcx
mov rcx, rdx
mov qword [rsp + 0x40], rax
cmp byte [rsp + 0x2f], 0
je 0x180058298
mov rax, qword [rsp + 0x40]
movzx eax, byte [rax]
mov esi, 1
cmp eax, 0xa
je 0x18005b4df
cmp eax, 0xd
je 0x18005b4ee
lea rdx, [0x1801d9b98]
cmp byte [rax + rdx], 0
jne 0x1800582c8
test al, al
je 0x180058bcb
movzx eax, al
cmp eax, 0xa
je 0x180058280
cmp eax, 0xd
je 0x180058265
cmp rcx, rsi
jbe 0x18005b778
mov rax, qword [rsp + 0x40]
movzx eax, byte [rax + rsi]
inc rsi
test al, al
jne 0x18005823a
jmp 0x180058bcb
cmp rcx, rsi
jbe 0x18005b778
mov rax, qword [rsp + 0x40]
cmp byte [rax + rsi], 0xa
jne 0x180058bcb
inc rsi
add qword [rsp + 0x50], rsi
add qword [rsp + 0x40], rsi
sub rcx, rsi
jne 0x180058202
jmp 0x18005b778
mov rax, qword [rsp + 0x40]
movzx eax, byte [rax]
mov esi, 1
cmp eax, 0xa
je 0x18005b4df
cmp eax, 0xd
je 0x18005b4ee
lea rdx, [0x1801d9b98]
cmp byte [rax + rdx], 0
je 0x180058bcb
mov r9, rcx
sub r9, rsi
mov rax, qword [rsp + 0x40]
lea rdx, [rax + rsi]
inc rdx
cmp rcx, rsi
jbe 0x18005b778
mov r10, rsi
mov rax, rdx
mov rdx, qword [rsp + 0x40]
movzx r8d, byte [rdx + rsi]
inc rsi
dec r9
lea rdx, [rax + 1]
lea r15, [0x1801d9b98]
cmp byte [r8 + r15], 0
lea r15, [rsp + 0xc8]
jne 0x1800582da
mov rdx, rcx
sub rdx, rsi
mov qword [rsp + 0x20], rdx
cmp r8b, 0x3a
jne 0x18005834e
add qword [rsp + 0x50], rsi
mov rax, qword [rsp + 0x40]
add rax, rsi
mov qword [rsp + 0x30], rax
mov r9, qword [rsp + 0x20]
mov qword [rsp + 0x20], r9
test r9, r9
jne 0x1800583f5
jmp 0x18005b778
cmp byte [rsp + 0x6e], 0
je 0x18005890f
mov rdx, qword [rsp + 0x40]
add rdx, rsi
mov qword [rsp + 0x30], rdx
sub r10, rcx
xor edx, edx
cmp r8b, 0x20
je 0x180058393
mov r15, rbp
mov rbp, r11
movzx r11d, r8b
cmp r11d, 9
mov r11, rbp
mov rbp, r15
lea r15, [rsp + 0xc8]
jne 0x180058911
lea r8, [r10 + rdx]
inc r8
test r8, r8
je 0x18005b778
mov r8, qword [rsp + 0x30]
movzx r8d, byte [r8 + rdx]
inc rdx
cmp r8b, 0x3a
jne 0x18005836b
mov rax, qword [rsp + 0x50]
add rax, rsi
add rax, rdx
mov qword [rsp + 0x50], rax
add qword [rsp + 0x30], rdx
sub r9, rdx
mov qword [rsp + 0x20], r9
test r9, r9
jne 0x1800583f5
jmp 0x18005b778
add qword [rsp + 0x50], r10
add qword [rsp + 0x30], r10
sub r9, r10
mov qword [rsp + 0x20], r9
je 0x18005b778
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax]
cmp byte [rsp + 0x3f], 0
je 0x18005848b
xor ecx, ecx
mov r9, qword [rsp + 0x20]
lea r10, [rcx + 1]
cmp al, 0x20
je 0x1800583dd
movzx edx, al
cmp edx, 9
je 0x1800583dd
lea r8, [0x1801c92fc]
cmp byte [rdx + r8], 0
jne 0x1800584bc
cmp al, 0xa
je 0x180058462
cmp edx, 0xd
jne 0x180058a04
cmp r9, r10
jbe 0x18005b778
mov rax, qword [rsp + 0x30]
cmp byte [rax + rcx + 1], 0xa
mov r9, qword [rsp + 0x20]
jne 0x18005b64b
add rcx, 2
jmp 0x180058465
mov rcx, r10
cmp rcx, r9
jae 0x18005b778
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + rcx]
cmp eax, 9
mov r9, qword [rsp + 0x20]
je 0x18005840f
cmp eax, 0x20
je 0x18005840f
jmp 0x180058b78
movzx ecx, al
mov r10d, 1
cmp ecx, 9
mov r9, qword [rsp + 0x20]
je 0x1800583dd
cmp ecx, 0x20
je 0x1800583dd
lea rdx, [0x1801c92fc]
cmp byte [rcx + rdx], 0
je 0x1800589f2
mov rax, qword [0x1802198c0]
test rax, rax
mov qword [rsp + 0x20], r9
jne 0x18005855d
mov rcx, qword [0x180219988]
test rcx, rcx
je 0x18005850d
mov rax, qword [0x180219988]
test cx, cx
js 0x18005853c
test rax, rax
je 0x1800588c5
and eax, 0x800
cmp rax, 1
mov ecx, 0
sbb rcx, rcx
or rcx, 1
shr rax, 0xb
jmp 0x180058556
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x58], r10
call fcn.180185330
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x20]
mov r11, rbp
mov rbp, r15
mov rcx, rax
mov rax, qword [0x180219988]
test cx, cx
jns 0x1800584e9
test rax, rax
je 0x1800588ea
xor ecx, ecx
test eax, 0x800
sete cl
xor rcx, 3
mov rax, rcx
mov qword [0x1802198c0], rcx
cmp rax, 1
lea r15, [0x1801c92fc]
je 0x1800585d2
cmp rax, 2
je 0x180058626
cmp rax, 3
jne 0x1800586c6
mov rax, r9
sub rax, r10
jb 0x18005b9d4
cmp rax, 0x1f
jbe 0x180058677
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r10]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x58], r10
call fcn.180052ed0
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x20]
mov r11, rbp
mov rbp, r15
lea r15, [0x1801c92fc]
add r10, rax
cmp rax, 0x20
je 0x18005857e
jmp 0x1800586c6
mov rax, r9
sub rax, r10
jb 0x18005b9d4
cmp rax, 0x10
jb 0x1800586c6
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r10]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x58], r10
call fcn.180052e80
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x20]
mov r11, rbp
mov rbp, r15
lea r15, [0x1801c92fc]
add r10, rax
cmp rax, 0x10
je 0x1800585d2
jmp 0x1800586c6
mov rax, r9
sub rax, r10
jb 0x18005b9d4
cmp rax, 0x20
jb 0x1800586c6
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r10]
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x58], r10
call fcn.180052ed0
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x20]
mov r11, rbp
mov rbp, r15
lea r15, [0x1801c92fc]
add r10, rax
cmp rax, 0x20
je 0x180058626
jmp 0x1800586c6
mov rax, r9
sub rax, r10
jb 0x18005b9d4
cmp rax, 0x10
jb 0x1800586b9
mov rax, qword [rsp + 0x30]
lea rcx, [rax + r10]
mov qword [rsp + 0x58], r10
call fcn.180052e80
mov r10, qword [rsp + 0x58]
add r10, rax
cmp rax, 0x10
lea r11, [rsp + 0x228]
mov r9, qword [rsp + 0x20]
je 0x180058677
jmp 0x1800586c6
lea r11, [rsp + 0x228]
mov r9, qword [rsp + 0x20]
mov rdx, r10
cmp rdx, 0xfffffffffffffff7
ja 0x1800586e0
lea rax, [rdx + 8]
cmp rax, r9
ja 0x1800586e0
mov r10, rdx
jmp 0x180058765
cmp r9, rdx
jbe 0x18005b778
mov r8, r9
mov rax, qword [rsp + 0x30]
movzx ecx, byte [rax + rdx]
lea r10, [rdx + 1]
lea r15, [0x1801c92fc]
cmp byte [rcx + r15], 0
je 0x18005880a
cmp rdx, 0xfffffffffffffff6
mov r9, r8
ja 0x18005871d
lea rax, [rdx + 9]
cmp rax, r9
jbe 0x180058765
add rdx, 9
mov rax, rdx
lea rdx, [rax - 8]
cmp r9, rdx
jbe 0x18005b778
mov rcx, qword [rsp + 0x30]
movzx ecx, byte [rcx + rax - 8]
lea r15, [0x1801c92fc]
cmp byte [rcx + r15], 0
je 0x180058803
inc rax
cmp rdx, 0xfffffffffffffff6
mov r9, r8
ja 0x180058724
cmp rax, r9
ja 0x180058724
mov r10, rax
add r10, 0xfffffffffffffff8
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx + r10]
movzx edx, cl
cmp byte [rdx + r15], 0
je 0x18005880f
mov rdx, rcx
shr rdx, 8
movzx r8d, dl
cmp byte [r8 + r15], 0
je 0x180058817
mov rdx, rcx
shr rdx, 0x10
movzx r8d, dl
cmp byte [r8 + r15], 0
je 0x18005881d
mov rdx, rcx
shr rdx, 0x18
movzx r8d, dl
cmp byte [r8 + r15], 0
je 0x180058823
mov rdx, rcx
shr rdx, 0x20
movzx r8d, dl
cmp byte [r8 + r15], 0
je 0x180058829
mov rdx, rcx
shr rdx, 0x28
movzx r8d, dl
cmp byte [r8 + r15], 0
je 0x18005882f
mov rdx, rcx
shr rdx, 0x30
movzx r8d, dl
cmp byte [r8 + r15], 0
je 0x180058835
shr rcx, 0x38
cmp byte [rcx + r15], 0
mov rdx, rax
jne 0x1800586c9
mov r10, rax
jmp 0x18005883f
add rax, 0xfffffffffffffff9
mov r10, rax
mov r9, r8
jmp 0x18005883f
inc r10
mov rax, r10
jmp 0x18005883f
add r10, 2
jmp 0x180058839
add r10, 3
jmp 0x180058839
add r10, 4
jmp 0x180058839
add r10, 5
jmp 0x180058839
add r10, 6
jmp 0x180058839
add r10, 7
mov rax, r10
mov rcx, rdx
mov rax, 0xffffffffffffffff
cmp cl, 0xa
lea r15, [rsp + 0xc8]
je 0x18005888a
movzx eax, cl
cmp eax, 0xd
jne 0x1800589a5
cmp r9, r10
jbe 0x18005b778
mov rdx, r10
mov rax, qword [rsp + 0x30]
cmp byte [rax + rdx], 0xa
jne 0x18005b64b
mov rcx, r9
mov r10, rdx
inc r10
mov rax, 0xfffffffffffffffe
cmp byte [rsp + 0x3f], 0
je 0x180058ac0
cmp r9, r10
jbe 0x18005b778
mov rdx, r9
mov r8, r10
mov rcx, qword [rsp + 0x30]
movzx ecx, byte [rcx + r8]
cmp ecx, 9
je 0x1800584bc
cmp ecx, 0x20
je 0x1800584bc
jmp 0x180058ac0
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x58], r10
call fcn.180185330
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x20]
mov r11, rbp
mov rbp, r15
jmp 0x1800584f2
mov r15, rbp
mov rbp, r11
mov qword [rsp + 0x58], r10
call fcn.180185330
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x20]
mov r11, rbp
mov rbp, r15
jmp 0x180058545
xor edx, edx
cmp byte [rsp + 0x2f], 0
mov r9, qword [rsp + 0x20]
je 0x180058bcb
add rax, rdx
test r8b, r8b
je 0x180058bcb
movzx r8d, r8b
cmp r8d, 0xa
je 0x180058974
cmp r8d, 0xd
je 0x18005895f
cmp r9, rdx
jbe 0x18005b778
movzx r8d, byte [rax]
inc rdx
inc rax
mov r9, qword [rsp + 0x20]
test r8b, r8b
jne 0x18005892d
jmp 0x180058bcb
cmp r9, rdx
jbe 0x18005b778
cmp byte [rax], 0xa
jne 0x180058bcb
inc rdx
mov rax, qword [rsp + 0x50]
add rax, rdx
add rax, rsi
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x40]
add rax, rdx
add rax, rsi
mov qword [rsp + 0x40], rax
sub rcx, rdx
sub rcx, rsi
jne 0x1800581f7
jmp 0x18005b778
mov rdx, r12
cmp byte [rsp + 0x2f], 0
je 0x18005b761
test cl, cl
je 0x18005b761
movzx eax, cl
cmp eax, 0xa
je 0x180058abb
cmp eax, 0xd
je 0x180058a9c
cmp r9, r10
mov r12, rdx
jbe 0x18005b778
mov rax, qword [rsp + 0x30]
movzx ecx, byte [rax + r10]
inc r10
test cl, cl
jne 0x1800589bb
jmp 0x18005b761
cmp ecx, 0xa
je 0x180058b6e
cmp ecx, 0xd
je 0x180058b48
cmp byte [rsp + 0x2f], 0
je 0x18005b64b
test al, al
mov rcx, qword [rsp + 0x20]
je 0x18005b64b
movzx eax, al
cmp eax, 0xa
je 0x180058a4d
cmp eax, 0xd
je 0x180058a52
cmp rcx, r10
jbe 0x18005b778
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + r10]
inc r10
test al, al
mov rcx, qword [rsp + 0x20]
jne 0x180058a1c
jmp 0x18005b64b
mov rdx, r12
jmp 0x180058a71
cmp rcx, r10
jbe 0x18005b778
mov rdx, r12
mov rax, qword [rsp + 0x30]
cmp byte [rax + r10], 0xa
jne 0x18005b761
inc r10
mov rcx, qword [rsp + 0x20]
sub rcx, r10
mov rax, qword [rsp + 0x30]
add rax, r10
add qword [rsp + 0x50], r10
mov qword [rsp + 0x40], rax
test rcx, rcx
mov r12, rdx
jne 0x1800581f7
jmp 0x18005b778
cmp r9, r10
mov r12, rdx
jbe 0x18005b778
mov rax, qword [rsp + 0x30]
cmp byte [rax + r10], 0xa
jne 0x18005b761
inc r10
mov rcx, r9
jmp 0x180058a76
mov qword [rsp + 0x20], r9
cmp r13, 0x64
je 0x18005bb0d
mov rdx, r10
lea rcx, [r10 + rax]
sub qword [rsp + 0x20], r10
test rcx, rcx
je 0x180058b21
mov rdx, qword [rsp + 0x30]
add rdx, rax
dec rdx
neg rax
movabs r9, 0x100002600
mov r8, r10
movzx r8d, byte [rdx + r8]
cmp r8, 0x20
ja 0x180058b2d
bt r9, r8
jae 0x180058b2d
inc rax
dec rdx
mov r8, r10
cmp r10, rax
jne 0x180058afb
mov r9, qword [rsp + 0x20]
jmp 0x180058b8a
xor ecx, ecx
mov r9, qword [rsp + 0x20]
mov r8, r10
jmp 0x180058b8a
mov r8, r10
mov rdx, r10
sub rdx, rax
cmp rdx, rcx
mov rcx, rdx
mov r9, qword [rsp + 0x20]
jbe 0x180058b8a
jmp 0x18005b9d4
cmp qword [rsp + 0x20], 2
jb 0x18005b778
mov ecx, 2
mov rax, qword [rsp + 0x30]
cmp byte [rax + 1], 0xa
mov r9, qword [rsp + 0x20]
je 0x180058b78
jmp 0x18005b64b
mov ecx, 1
mov r9, qword [rsp + 0x20]
cmp r13, 0x64
je 0x18005bb0d
sub r9, rcx
mov r8, rcx
xor ecx, ecx
mov r10, qword [rsp + 0x30]
lea rax, [r10 + r8]
add qword [rsp + 0x50], r8
inc r13
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x40]
mov qword [rdx], r8
dec rsi
mov qword [rdx + 8], rsi
mov qword [rdx + 0x10], r10
mov qword [rdx + 0x18], rcx
mov rdx, r9
test r9, r9
jne 0x1800581d6
jmp 0x18005b778
mov rax, qword [rsp + 0x60]
and rax, 0xffffffffffffff00
mov qword [rsp + 0x60], rax
movzx ecx, al
cmp cl, 6
jne 0x18005ba31
mov rax, qword [rsp + 0x230]
cmp byte [rax + 0x16], 0
je 0x18005b8de
mov ax, 0xc8
mov qword [rsp + 0x168], rax
xor eax, eax
xor r13d, r13d
xor ecx, ecx
mov qword [rsp + 0x188], rcx
xor r14d, r14d
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x1a0]
lea rcx, [rsp + 0x218]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0x190]
movups xmmword [rcx], xmm0
lea rcx, [rsp + 0x270]
mov rdx, rbp
mov r8, r14
call fcn.180020f50
cmp byte [rsp + 0x3f], 0
je 0x180058d72
cmp r13, 0x65
jae 0x18005b9d4
test r13, r13
je 0x180058d72
mov rax, r13
shl rax, 5
add rax, rsp
add rax, 0xf70
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rsp + 0x278]
lea r8, [rsp + 0xf70]
jmp 0x180058ca9
cmp r8, rax
je 0x180058d72
mov r11, qword [r8 + 0x10]
mov r9, qword [r8 + 0x18]
cmp r9, r11
jb 0x18005b9d4
cmp r9, rdx
ja 0x18005b9d4
add r8, 0x20
cmp r9, r11
je 0x180058ca0
lea r10, [rcx + r11]
mov esi, r9d
sub esi, r11d
not r11
add r11, r9
and rsi, 3
jne 0x180058cfc
cmp r11, 3
jb 0x180058ca0
add r9, rcx
jmp 0x180058d1d
mov byte [r10], 0x20
inc r10
dec rsi
je 0x180058ce2
movzx edi, byte [r10]
cmp edi, 0xd
je 0x180058cf0
cmp edi, 0xa
je 0x180058cf0
jmp 0x180058cf4
mov byte [r10 + 3], 0x20
mov r10, r11
cmp r11, r9
je 0x180058ca0
movzx r11d, byte [r10]
cmp r11d, 0xa
je 0x180058d2d
cmp r11d, 0xd
jne 0x180058d31
mov byte [r10], 0x20
movzx r11d, byte [r10 + 1]
cmp r11d, 0xd
je 0x180058d42
cmp r11d, 0xa
jne 0x180058d47
mov byte [r10 + 1], 0x20
movzx r11d, byte [r10 + 2]
cmp r11d, 0xd
je 0x180058d58
cmp r11d, 0xa
jne 0x180058d5d
mov byte [r10 + 2], 0x20
lea r11, [r10 + 4]
movzx esi, byte [r10 + 3]
cmp esi, 0xd
je 0x180058d10
cmp esi, 0xa
je 0x180058d10
jmp 0x180058d15
mov rdi, qword [rsp + 0x270]
mov rax, qword [rsp + 0x278]
mov rsi, qword [rsp + 0x288]
test sil, 1
jne 0x180058dbc
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], rsi
lea rax, [0x1801df438]
mov qword [rsp + 0xb0], rax
jmp 0x180058e8d
mov r14, qword [rsp + 0x280]
shr rsi, 5
sub rdi, rsi
lea rbx, [rsi + rax]
cmp rax, r14
jne 0x180058def
test rbx, rbx
je 0x180058e46
mov rax, rdi
test dil, 1
jne 0x180058e5a
or rax, 1
lea rcx, [0x1801c85d0]
jmp 0x180058e61
mov rax, qword [0x180219958]
test rax, rax
jne 0x180058e11
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb34
mov qword [0x180219958], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb34
add r14, rsi
mov qword [rax], rdi
mov qword [rax + 8], r14
mov qword [rax + 0x10], 1
lea rcx, [0x18018d008]
jmp 0x180058e61
xor eax, eax
lea rdi, str.description___is_deprecated__use_Display
xor ebx, ebx
lea rcx, [0x1801dbb08]
jmp 0x180058e61
lea rcx, [0x1801c85e8]
sub rbx, rsi
jb 0x18005b9d4
add rdi, rsi
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x230]
mov rcx, qword [rax]
mov rax, qword [rcx]
mov qword [rcx], 3
cmp rax, 3
jne 0x180058ef6
mov word [rsp + 0x1e8], 0
mov qword [rsp + 0x1a8], 2
mov qword [rsp + 0x1b0], 0
mov qword [rsp + 0x1b8], 8
lea rax, [rsp + 0x198]
movups xmmword [rax + 0x28], xmm6
mov qword [rsp + 0x1d0], 8
movups xmmword [rax + 0x40], xmm6
xor eax, eax
jmp 0x180058f32
mov rdx, qword [rcx + 0x58]
lea r8, [rsp + 0x198]
mov qword [r8 + 0x50], rdx
movups xmm0, xmmword [rcx + 0x48]
movups xmmword [r8 + 0x40], xmm0
movups xmm0, xmmword [rcx + 8]
movups xmm1, xmmword [rcx + 0x18]
movups xmm2, xmmword [rcx + 0x28]
movups xmm3, xmmword [rcx + 0x38]
movups xmmword [r8 + 0x30], xmm3
movups xmmword [r8 + 0x20], xmm2
movups xmmword [r8 + 0x10], xmm1
movups xmmword [r8], xmm0
cmp byte [rsp + 0x188], 2
sete cl
mov qword [rsp + 0x190], rax
cmp byte [rsp + 0x6f], 0
je 0x180058f9a
lea rax, [rsp + 0xd8]
movups xmmword [rax + 0x28], xmm6
movups 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 0x180058f9f
mov eax, 3
mov dword [rsp + 0x20], ecx
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x1c8]
mov rdx, rax
add rdx, r13
jb 0x18005b9d4
mov r14, qword [rsp + 0x1b0]
cmp rdx, r14
jbe 0x18005901f
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 0x18005b9d4
test rsi, rsi
je 0x18005b9d4
test rax, rax
je 0x18005af20
lea rcx, [rsp + 0x190]
mov rdx, rsi
call fcn.180056990
cmp r13, 0x65
jae 0x18005b9d4
test r13, r13
je 0x18005ac46
shl r13, 5
lea rax, [rsp + r13]
add rax, 0xf70
mov qword [rsp + 0x258], rax
lea rsi, [rsp + 0xf70]
lea r13, [0x1801dbd08]
mov qword [rsp + 0x90], r12
mov qword [rsp + 0x1f8], rbp
mov rdi, qword [rsi]
mov r14, qword [rsi + 8]
cmp r14, rdi
jb 0x18005b9d4
mov qword [rsp + 0x40], rsi
cmp r14, qword [rsp + 0xc0]
ja 0x18005b9d4
mov rsi, r14
sub rsi, rdi
je 0x18005b80d
mov rbx, qword [rsp + 0xb8]
cmp rsi, 0x40
ja 0x1800590c8
mov rax, rdi
not rax
add r14, rax
mov eax, esi
and eax, 3
cmp r14, 3
jae 0x18005912e
xor r9d, r9d
lea r14, [rsp + 0x2f0]
jmp 0x1800591a7
cmp rsi, 0x10000
jae 0x18005b80d
mov rax, qword [0x180219958]
test rax, rax
jne 0x1800590f7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb14
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb14
mov r12, r15
mov rcx, rsi
mov r15, rbp
shr rcx, 0xa
je 0x180059247
bsr rcx, rcx
xor rcx, 0x3f
jmp 0x18005924c
mov rcx, rsi
and rcx, 0xfffffffffffffffc
lea rdx, [rbx + rdi]
add rdx, 3
xor r8d, r8d
lea r14, [rsp + 0x2f0]
nop dword [rax + rax]
movzx r9d, byte [rdx + r8 - 3]
movzx r9d, byte [r9 + r13]
mov byte [rsp + r8 + 0x2f0], r9b
movzx r9d, byte [rdx + r8 - 2]
movzx r9d, byte [r9 + r13]
mov byte [rsp + r8 + 0x2f1], r9b
movzx r9d, byte [rdx + r8 - 1]
movzx r9d, byte [r9 + r13]
mov byte [rsp + r8 + 0x2f2], r9b
lea r9, [r8 + 4]
movzx r10d, byte [rdx + r8]
movzx r10d, byte [r10 + r13]
mov byte [rsp + r8 + 0x2f3], r10b
mov r8, r9
cmp rcx, r9
jne 0x180059150
test rax, rax
je 0x1800591d6
lea rcx, [rsp + r9]
add rcx, 0x2f0
add rdi, r9
add rbx, rdi
xor edx, edx
nop
movzx r8d, byte [rbx + rdx]
movzx r8d, byte [r8 + r13]
mov byte [rcx + rdx], r8b
inc rdx
cmp rax, rdx
jne 0x1800591c0
mov rcx, r14
mov rdx, rsi
call fcn.18004c900
cmp al, 0x51
jne 0x18005921b
cmp rsi, 0xf
ja 0x180059319
xor eax, eax
nop word cs:[rax + rax]
cmp byte [rsp + rax + 0x2f0], 0
je 0x18005b80d
inc rax
cmp rsi, rax
jne 0x180059200
jmp 0x180059446
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 0x18005955d
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 + 0x70], rax
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x88], rcx
xor r8d, r8d
nop word [rax + rax]
movzx ecx, byte [rbx + rdi]
movzx ebp, byte [rcx + r13]
test bpl, bpl
je 0x18005b79b
cmp rsi, r8
jne 0x1800592c8
mov edx, 1
lea rcx, [rsp + 0x70]
call fcn.180021130
mov rax, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
mov byte [rax + r8], bpl
inc r8
cmp r8, rsi
ja 0x18005b9d4
mov qword [rsp + 0x78], r8
inc rdi
cmp r14, rdi
jne 0x180059290
mov rdx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x88]
test sil, 1
jne 0x18005937c
lea rax, [0x1801df438]
mov r9, rsi
mov rbp, r15
lea r14, [rsp + 0x2f0]
mov r15, r12
jmp 0x18005955d
cmp qword [rsp + 0x268], r14
je 0x1800593cb
mov rcx, qword [rsp + 0x260]
cmp rcx, rsi
mov rax, rsi
cmovb rax, rcx
test rax, rax
je 0x1800593cb
xor ecx, ecx
cmp byte [rsp + rcx + 0x2f0], 0
je 0x18005b80d
inc rcx
cmp rax, rcx
jne 0x180059344
lea rcx, [rsi - 0x10]
cmp rax, rcx
movabs r9, 0xfefefefefefefeff
movabs r10, 0x8080808080808080
jbe 0x1800593f0
jmp 0x180059441
mov rbx, qword [rsp + 0x80]
shr rsi, 5
sub rdx, rsi
lea rdi, [rsi + r8]
cmp r8, rbx
mov rbp, r15
lea r14, [rsp + 0x2f0]
jne 0x1800594cc
test rdi, rdi
je 0x18005952f
test dl, 1
mov r15, r12
mov r9, rdx
jne 0x180059547
or r9, 1
lea rax, [0x1801c85d0]
jmp 0x18005954e
lea rcx, [rsi - 0x10]
xor eax, eax
movabs r9, 0xfefefefefefefeff
movabs r10, 0x8080808080808080
nop word cs:[rax + rax]
mov rdx, qword [rsp + rax + 0x2f0]
mov r8, rdx
not r8
add rdx, r9
and r8, r10
test r8, rdx
jne 0x180059441
mov rdx, qword [rsp + rax + 0x2f8]
mov r8, rdx
not r8
add rdx, r9
and r8, r10
test r8, rdx
jne 0x180059441
add rax, 0x10
cmp rax, rcx
jbe 0x1800593f0
jmp 0x180059441
cmp byte [rsp + rax + 0x2f0], 0
je 0x18005b80d
inc rax
cmp rsi, rax
jne 0x180059430
test rsi, rsi
js 0x18005b9d4
mov rax, qword [0x180219958]
test rax, rax
lea r14, [rsp + 0x2f0]
jne 0x180059479
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb14
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb14
mov rcx, rax
mov rdi, rax
mov rdx, r14
mov r8, rsi
call fcn.180170ea0
mov rdx, rdi
mov r9, rdi
or r9, 1
test dl, 1
cmovne r9, rdi
lea rax, [0x1801c85e8]
lea rcx, [0x1801c85d0]
cmove rax, rcx
mov r8, rsi
jmp 0x18005955d
mov r15, rdx
mov rax, qword [0x180219958]
test rax, rax
jne 0x1800594f1
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb34
mov qword [0x180219958], rax
mov r8d, 0x18
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb34
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, [0x18018d008]
mov r15, r12
jmp 0x18005954e
lea rdx, str.description___is_deprecated__use_Display
xor r9d, r9d
xor edi, edi
lea rax, [0x1801dbb08]
mov r15, r12
jmp 0x18005954e
lea rax, [0x1801c85e8]
mov r8, rdi
sub r8, rsi
jb 0x18005b9d4
add rdx, rsi
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x250], r8
mov qword [rsp + 0x158], r8
mov qword [rsp + 0x248], r9
mov qword [rsp + 0x160], r9
mov r13, qword [rcx + 0x10]
mov rsi, qword [rcx + 0x18]
cmp rsi, r13
jb 0x18005b9d4
mov r9, qword [rsp + 0xc0]
cmp r9, rsi
jb 0x18005b9d4
sub rsi, r13
mov qword [rsp + 0x240], rdx
jne 0x1800595f7
mov ecx, edx
xor esi, esi
xor edx, edx
mov qword [rsp + 0x170], rdx
lea r13, str.description___is_deprecated__use_Display
lea rdx, [0x1801dbb08]
mov qword [rsp + 0x178], rdx
test rax, rax
mov qword [rsp + 0x208], rsi
je 0x18005965d
jmp 0x1800596c5
mov rax, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xb8]
mov rcx, r14
mov rdx, r15
call qword [rax]
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x178], rax
test rax, rax
je 0x18005b9d4
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x170], rax
add r13, qword [rsp + 0x2f8]
mov rax, qword [rsp + 0x148]
movzx ecx, byte [rsp + 0x150]
test rax, rax
mov qword [rsp + 0x208], rsi
jne 0x1800596c5
cmp cl, 0x14
jne 0x1800596c5
test byte [rsp + 0x20], 1
jne 0x180059693
mov rcx, r13
mov rdx, rsi
call fcn.180055930
mov dword [rsp + 0x20], eax
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x200], r13
jne 0x1800596df
jmp 0x18005a513
xor eax, eax
nop word cs:[rax + rax]
cmp rsi, rax
je 0x18005996a
movzx ecx, byte [r13 + rax]
inc rax
cmp cl, 9
je 0x1800596a0
add cl, 0xe0
cmp cl, 0x5f
jb 0x1800596a0
mov al, 1
mov dword [rsp + 0x20], eax
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x200], r13
je 0x18005a513
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
mov rdi, qword [rax + 8]
cmp rdi, rcx
jb 0x18005b9d4
mov r9, qword [rsp + 0xc0]
cmp r9, rdi
jb 0x18005b9d4
sub rdi, rcx
jne 0x180059722
movaps xmmword [rsp + 0x130], xmm6
lea rdx, [0x1801dbb08]
lea rcx, str.description___is_deprecated__use_Display
jmp 0x18005976b
mov rax, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xb8]
mov rbx, rcx
mov rcx, r14
mov rdx, r15
call qword [rax]
mov rcx, rbx
mov qword [rsp + 0x300], rdi
add rcx, qword [rsp + 0x2f8]
mov rdx, qword [rsp + 0x2f0]
lea rax, [rsp + 0x300]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
mov rax, qword [rsp + 0x108]
cmp esi, 1
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0x1f0], rdx
jne 0x1800597eb
test rax, rax
js 0x180059a8c
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mov rsi, qword [rsp + 0xf0]
test rsi, rsi
jns 0x180059ab5
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, xmm8
jb 0x180059ac8
mov qword [rsp + 0xd0], 0
add rsi, rsi
lea rcx, [rsp + 0xd0]
mov rdx, rsi
jmp 0x180059819
mov rdx, qword [rsp + 0xf0]
mov rcx, rdx
shr rcx, 2
mov r8, rdx
sub r8, rcx
cmp rax, r8
jne 0x18005981e
test rax, rax
je 0x180059dfb
add rdx, rdx
lea rcx, [rsp + 0xd0]
call fcn.18005bc20
mov rcx, qword [rsp + 0xd0]
cmp rcx, 2
mov qword [rsp + 0x238], rcx
jne 0x1800598e0
movdqu xmm0, xmmword [rsp + 0xd8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm9
movdqa xmmword [rsp + 0x2f0], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm10
movdqa xmmword [rsp + 0x300], xmm1
movdqa xmmword [rsp + 0x310], xmm0
lea rax, [rsp + 0x300]
movaps xmmword [rax + 0x20], xmm6
mov qword [rax + 0x30], 0
mov r14, qword [rsp + 0x148]
xor eax, eax
test r14, r14
setne al
mov qword [rsp + 0x70], rax
mov r8d, 8
lea rsi, [rsp + 0x2f0]
mov rcx, rsi
lea rdi, [rsp + 0x70]
mov rdx, rdi
call fcn.18000daa0
mov rbx, r14
test r14, r14
je 0x180059cb4
mov rdx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x158]
mov rcx, rsi
mov qword [rsp + 0x50], rdx
jmp 0x180059cd2
mov r10, qword [rsp + 0x148]
xor r14d, r14d
test r10, r10
setne r14b
movabs rax, 0xcbf29ce484222325
xor r14, rax
movabs rax, 0x1efac7090aef4a21
imul r14, rax
test r10, r10
je 0x180059ddf
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x50], rax
mov r8, qword [rsp + 0x158]
test r8, r8
je 0x180059fe7
mov rcx, r8
and rcx, 7
je 0x180059f52
mov rax, qword [rsp + 0x50]
movabs r9, 0x100000001b3
movzx edx, byte [rax]
inc rax
xor rdx, r14
imul rdx, r9
mov r14, rdx
dec rcx
jne 0x180059950
jmp 0x180059f64
mov qword [rsp + 0x2f0], 0
mov qword [rsp + 0x2f8], rsi
mov qword [rsp + 0x300], r13
mov qword [rsp + 0x308], rsi
mov qword [rsp + 0x310], 0
mov qword [rsp + 0x318], rsi
mov qword [rsp + 0x320], 1
movabs rax, 0x2c0000002c
mov qword [rsp + 0x328], rax
mov word [rsp + 0x330], 1
nop word [rax + rax]
mov rcx, r14
call fcn.18005fd20
test rax, rax
je 0x1800596bf
mov rcx, rax
call fcn.180055ad0
cmp rdx, 5
jne 0x1800599d0
movzx ecx, byte [rax]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x63
jne 0x1800599d0
movzx ecx, byte [rax + 1]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x6c
jne 0x1800599d0
movzx ecx, byte [rax + 2]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x6f
jne 0x1800599d0
movzx ecx, byte [rax + 3]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x73
jne 0x1800599d0
movzx eax, byte [rax + 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
jne 0x1800599d0
mov dword [rsp + 0x20], 0
mov rsi, qword [rsp + 0xd0]
cmp rsi, 3
mov qword [rsp + 0x200], r13
jne 0x1800596df
jmp 0x18005a513
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rsi, qword [rsp + 0xf0]
test rsi, rsi
js 0x1800597aa
cvtsi2ss xmm1, rsi
divss xmm0, xmm1
ucomiss xmm0, xmm8
jae 0x1800597cf
mov eax, dword [0x1802199d0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0xa8], 0
jne 0x180059aea
call fcn.1800074f0
mov qword [rsp + 0xd0], 2
mov eax, dword [0x1802199d0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movups xmm0, xmmword [rax + 0xb0]
inc qword [rax + 0xb0]
movups xmmword [rsp + 0xd8], xmm0
mov rdi, qword [rsp + 0xe8]
test rsi, rsi
je 0x180059b8f
lea rcx, [rsi - 1]
movabs rax, 0x3fffffffffffffff
and rcx, rax
mov rax, rdi
cmp rcx, 7
jb 0x180059b79
inc rcx
mov rdx, rcx
and rdx, 0xfffffffffffffff8
lea rax, [rdi + rdx*4]
xor r8d, r8d
nop word [rax + rax]
movups xmmword [rdi + r8*4], xmm7
movups xmmword [rdi + r8*4 + 0x10], xmm7
add r8, 8
cmp rdx, r8
jne 0x180059b60
cmp rcx, rdx
je 0x180059b8f
lea rcx, [rdi + rsi*4]
nop dword [rax]
mov dword [rax], 0xffff
add rax, 4
cmp rax, rcx
jne 0x180059b80
mov rax, qword [rsp + 0x108]
test rax, rax
je 0x18005981e
mov r14, qword [rsp + 0xf8]
lea rax, [rax + rax*2]
shl rax, 5
add rax, r14
mov qword [rsp + 0x30], rax
movzx r15d, word [rsp + 0x128]
xor r12d, r12d
jmp 0x180059be5
mov word [rdi + rcx*4], r13w
mov word [rdi + rcx*4 + 2], ax
cmp r14, qword [rsp + 0x30]
je 0x18005981e
mov r13, r12
mov rbx, rbp
mov rbp, r14
add r14, 0x60
inc r12
lea rdx, [rbp + 0x38]
lea rcx, [rsp + 0xd0]
call fcn.18003f340
mov r8d, r15d
and r8d, eax
mov word [rbp + 0x58], ax
mov rbp, rbx
xor edx, edx
nop word cs:[rax + rax]
mov rcx, r8
mov r8d, 0
cmp rcx, rsi
jae 0x180059c20
cmp word [rdi + rcx*4], 0xffff
je 0x180059bd0
movzx r8d, word [rdi + rcx*4 + 2]
and r8d, r15d
mov r9d, ecx
sub r9d, r8d
and r9d, r15d
cmp r9, rdx
jb 0x180059c80
inc rdx
inc rcx
mov r8, rcx
jmp 0x180059c20
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 0x180059c80
movzx ecx, word [rdi + rdx*4]
cmp cx, 0xffff
jne 0x180059c57
mov word [rdi + rdx*4], r13w
mov rcx, rdx
mov word [rdi + rcx*4 + 2], ax
cmp r14, qword [rsp + 0x30]
jne 0x180059be5
jmp 0x18005981e
movzx eax, byte [rsp + 0x150]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x70], rax
mov r8d, 8
mov rcx, rsi
mov rdx, rdi
call fcn.18000daa0
mov rax, qword [rsp + 0x300]
mov r9, qword [rsp + 0x320]
shl r9, 0x38
or r9, qword [rsp + 0x328]
mov rcx, qword [rsp + 0x308]
mov r8, qword [rsp + 0x2f0]
add r8, rax
rol rax, 0xd
xor rcx, r9
xor rax, r8
rol r8, 0x20
mov rdx, qword [rsp + 0x2f8]
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 r14, rdx
shr r14, 0x20
xor r14, rdx
xor r14, rax
mov r10, rbx
jmp 0x180059fe7
movzx ecx, byte [rsp + 0x150]
mov qword [rsp + 0x50], rcx
xor r14, rcx
imul r14, rax
xor r10d, r10d
jmp 0x180059fe7
mov word [rsp + 0x128], 7
mov rax, qword [0x180219958]
test rax, rax
jne 0x180059e27
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb72
mov qword [0x180219958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb72
mov rsi, rax
movups xmmword [rax], xmm7
movups xmmword [rax + 0x10], xmm7
cmp qword [rsp + 0xf0], 0
je 0x180059e6d
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0xf0], 8
mov rax, qword [0x180219958]
test rax, rax
jne 0x180059ea3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb83
mov qword [0x180219958], rax
mov r8d, 0x240
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb83
mov rsi, rax
mov rdi, qword [rsp + 0xf8]
mov r14, qword [rsp + 0x108]
test r14, r14
je 0x180059f10
lea rbx, [rdi + 0x30]
jmp 0x180059ef6
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 0x180059f10
mov rax, qword [rbx + 8]
test rax, rax
je 0x180059edb
lea rcx, [rbx + 0x20]
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x18]
call qword [rax + 0x10]
jmp 0x180059edb
cmp qword [rsp + 0x100], 0
je 0x180059f2d
mov rcx, qword [0x180219958]
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 0x18005981e
mov rdx, r14
mov rax, qword [rsp + 0x50]
movabs r9, 0x100000001b3
cmp r8, 8
jb 0x180059fe4
mov rcx, qword [rsp + 0x50]
add rcx, r8
nop word cs:[rax + rax]
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 0x180059f80
mov r14, rdx
and r14d, 0x7fff
movzx edi, word [rsp + 0x128]
mov ebp, r14d
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 + 0x150]
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x30], rax
xor r13d, r13d
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x98], r10
mov qword [rsp + 0xa0], r8
mov qword [rsp + 0x180], r11
jmp 0x18005a066
mov rcx, qword [rsp + 0x50]
cmp byte [rax + 8], cl
je 0x18005a129
inc r13
inc rbp
mov rax, rbp
nop dword [rax]
mov rbp, rax
mov eax, 0
cmp rbp, r12
jae 0x18005a070
movzx r15d, word [rsi + rbp*4]
cmp r15, 0xffff
je 0x18005a1f0
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 0x18005a24c
cmp ax, r14w
jne 0x18005a060
cmp r9, r15
jbe 0x18005b9d4
test r10, r10
sete al
lea rbx, [r15 + r15*2]
shl rbx, 5
mov rcx, qword [r8 + rbx + 0x38]
test rcx, rcx
setne dl
cmp dl, al
je 0x18005a060
lea rax, [r8 + rbx]
add rax, 0x38
test rcx, rcx
je 0x18005a052
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
jne 0x18005a060
mov rcx, qword [rax + 8]
mov rdx, r11
mov r8, qword [rsp + 0x30]
call fcn.1801718f0
mov r11, qword [rsp + 0x180]
mov r8, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x98]
test eax, eax
jne 0x18005a060
lea rdi, [r8 + rbx]
cmp qword [r8 + rbx], 0
je 0x18005aba9
mov rbx, qword [rdi + 0x10]
mov rsi, qword [rsp + 0x120]
mov rcx, rsi
cmp rsi, qword [rsp + 0x118]
mov r14, qword [rsp + 0x1f0]
jne 0x18005a171
lea rcx, [rsp + 0x110]
mov rdx, rsi
call fcn.18005c030
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], r15
mov qword [rax + rdx + 0x20], r14
mov r8, qword [rsp + 0xa8]
mov qword [rax + rdx + 0x28], r8
movaps xmm0, xmmword [rsp + 0x130]
movups xmmword [rax + rdx + 0x30], xmm0
inc rcx
mov qword [rsp + 0x120], rcx
cmp rbx, rcx
jae 0x18005b9d4
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 0x18005a513
test r10, r10
je 0x18005a2c2
lea rcx, [rsp + 0x2f0]
lea rdx, [rsp + 0x160]
mov rsi, r8
mov r8, r11
mov r9, qword [rsp + 0x30]
call qword [r10]
mov r8, rsi
mov r9, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x2f0]
movzx r11d, byte [rsp + 0x2f8]
lea rax, [rsp + 0x300]
movups xmm0, xmmword [rax - 7]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rax + 8]
mov qword [rsp + 0x7f], rax
jmp 0x18005a2c4
cmp r13, 0x200
setae r15b
cmp dword [rsp + 0x238], 2
setne dil
test r10, r10
je 0x18005a3ba
lea rcx, [rsp + 0x2f0]
lea rdx, [rsp + 0x160]
mov rbx, r8
mov r8, r11
mov r9, qword [rsp + 0x30]
call qword [r10]
mov r8, rbx
mov r9, qword [rsp + 0x58]
mov r13, qword [rsp + 0x2f0]
movzx r11d, byte [rsp + 0x2f8]
lea rax, [rsp + 0x300]
movups xmm0, xmmword [rax - 7]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rax + 8]
mov qword [rsp + 0x7f], rax
jmp 0x18005a3bd
xor esi, esi
mov rax, qword [rsp + 0x7f]
mov qword [rsp + 0x2ff], rax
movaps xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x2f0], xmm0
cmp r9, 0x7fff
ja 0x18005b9d4
mov rax, r9
cmp r9, qword [rsp + 0x100]
jne 0x18005a32b
lea rcx, [rsp + 0xf8]
mov rdx, r9
mov rdi, r11
call fcn.18005bf60
mov r11, rdi
mov r9, qword [rsp + 0x58]
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 + 0x1f0]
mov qword [r8 + rcx + 0x18], rdx
mov rdx, qword [rsp + 0xa8]
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
movaps xmm0, xmmword [rsp + 0x2f0]
movups xmmword [r8 + rcx + 0x41], xmm0
mov rdx, qword [rsp + 0x2ff]
mov qword [r8 + rcx + 0x50], rdx
mov word [r8 + rcx + 0x58], r14w
inc rax
mov qword [rsp + 0x108], rax
cmp rbp, r12
jae 0x18005b9d4
mov rax, qword [rsp + 0xe8]
mov word [rax + rbp*4], r9w
mov word [rax + rbp*4 + 2], r14w
jmp 0x18005a513
xor r13d, r13d
mov rax, qword [rsp + 0x7f]
mov qword [rsp + 0x2ff], rax
movaps xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x2f0], xmm0
cmp r9, 0x7fff
ja 0x18005b9d4
mov rax, r9
cmp r9, qword [rsp + 0x100]
jne 0x18005a42c
lea rcx, [rsp + 0xf8]
mov rdx, r9
mov rsi, r11
call fcn.18005bf60
mov r11, rsi
mov r9, qword [rsp + 0x58]
mov rax, qword [rsp + 0x108]
mov r8, qword [rsp + 0xf8]
mov rsi, qword [rsp + 0xe8]
mov r12, qword [rsp + 0xf0]
and r15b, dil
lea rcx, [rax + rax*2]
shl rcx, 5
mov qword [r8 + rcx], 0
mov rdx, qword [rsp + 0x1f0]
mov qword [r8 + rcx + 0x18], rdx
mov rdx, qword [rsp + 0xa8]
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
movaps xmm0, xmmword [rsp + 0x2f0]
movups xmmword [r8 + rcx + 0x41], xmm0
mov rdx, qword [rsp + 0x2ff]
mov qword [r8 + rcx + 0x50], rdx
mov word [r8 + rcx + 0x58], r14w
inc rax
mov qword [rsp + 0x108], rax
xor eax, eax
nop
mov rcx, rbp
mov ebp, 0
cmp rcx, r12
jae 0x18005a4a0
movzx edx, word [rsi + rcx*4]
cmp dx, 0xffff
je 0x18005a4d9
inc rax
movzx r8d, word [rsi + rcx*4 + 2]
mov word [rsi + rcx*4], r9w
mov word [rsi + rcx*4 + 2], r14w
inc rcx
mov r14d, r8d
mov r9d, edx
mov rbp, rcx
jmp 0x18005a4a0
mov word [rsi + rcx*4], r9w
mov word [rsi + rcx*4 + 2], r14w
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
mov rdx, rcx
mov r8d, 1
cmove rdx, r8
cmp rax, 0x7f
cmova rcx, rdx
test r15b, r15b
cmovne rcx, rdx
mov qword [rsp + 0xd0], rcx
add qword [rsp + 0x40], 0x20
movups xmm0, xmmword [rsp + 0x148]
movups xmm1, xmmword [rsp + 0x158]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
lea rsi, [rsp + 0x190]
mov rcx, rsi
call fcn.180056560
mov rcx, rsi
lea rdx, [rsp + 0x70]
call fcn.18003f340
mov r8d, eax
movzx eax, ax
movzx r15d, word [rsp + 0x1e8]
mov dword [rsp + 0xa8], eax
mov r14d, eax
and r14d, r15d
mov rbx, qword [rsp + 0x1a8]
mov r12, qword [rsp + 0x1b0]
mov rsi, qword [rsp + 0x1c8]
mov r9, qword [rsp + 0x1b8]
mov r10, qword [rsp + 0x70]
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xa0], rax
movzx r11d, byte [rsp + 0x78]
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x30], rax
xor ebp, ebp
mov qword [rsp + 0x58], r9
mov word [rsp + 0x50], r8w
mov qword [rsp + 0x98], r10
mov byte [rsp + 0x180], r11b
jmp 0x18005a5e6
cmp byte [rax + 8], r11b
je 0x18005a6ad
nop dword [rax]
inc rbp
inc r14
mov rax, r14
nop dword [rax]
mov r14, rax
mov eax, 0
cmp r14, r12
jae 0x18005a5f0
movzx r13d, word [rbx + r14*4]
cmp r13, 0xffff
je 0x18005a7b1
movzx eax, word [rbx + r14*4 + 2]
mov ecx, r15d
and ecx, eax
mov edx, r14d
sub edx, ecx
and edx, r15d
cmp rdx, rbp
jb 0x18005a8d3
cmp ax, r8w
jne 0x18005a5e0
cmp rsi, r13
jbe 0x18005b9d4
test r10, r10
sete al
imul rdi, r13, 0x68
mov rcx, qword [r9 + rdi + 0x40]
test rcx, rcx
setne dl
cmp dl, al
je 0x18005a5e0
lea rax, [r9 + rdi]
add rax, 0x40
test rcx, rcx
je 0x18005a5d3
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
jne 0x18005a5e0
mov rcx, qword [rax + 8]
mov rdx, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x30]
call fcn.1801718f0
movzx r11d, byte [rsp + 0x180]
mov r10, qword [rsp + 0x98]
movzx r8d, word [rsp + 0x50]
mov r9, qword [rsp + 0x58]
test eax, eax
jne 0x18005a5e0
lea r14, [r9 + rdi]
cmp qword [r9 + rdi], 0
je 0x18005aa99
mov rbx, qword [r14 + 0x10]
mov rsi, qword [rsp + 0x1e0]
mov rax, rsi
cmp rsi, qword [rsp + 0x1d8]
lea r15, [rsp + 0xc8]
mov r12, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x1f8]
jne 0x18005a705
lea rcx, [rsp + 0x1d0]
mov rdx, rsi
call fcn.18003e9a0
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x1d0]
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 + 0x178]
mov qword [rcx + rdx*8 + 0x20], r8
mov r8, qword [rsp + 0x200]
mov qword [rcx + rdx*8 + 0x28], r8
mov r8, qword [rsp + 0x208]
mov qword [rcx + rdx*8 + 0x30], r8
mov r8, qword [rsp + 0x170]
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 + 0x1e0], rax
cmp rbx, rax
jae 0x18005b9d4
lea rax, [rbx + rbx*8]
mov qword [rcx + rax*8 + 0x10], 1
mov qword [rcx + rax*8 + 0x18], rsi
mov qword [r14], 1
jmp 0x18005ab6e
cmp rsi, 0x7fff
ja 0x18005b9d4
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x300], xmm1
movaps xmmword [rsp + 0x2f0], xmm0
mov rax, rsi
cmp rsi, qword [rsp + 0x1c0]
mov rbp, qword [rsp + 0x1f8]
lea r13, [0x1801dbd08]
mov edi, dword [rsp + 0xa8]
jne 0x18005a826
lea rcx, [rsp + 0x1b8]
mov rdx, rsi
call fcn.18003f610
mov rax, qword [rsp + 0x1c8]
mov r12, qword [rsp + 0x1b0]
mov r9, qword [rsp + 0x1b8]
imul rcx, rax, 0x68
mov qword [r9 + rcx], 0
mov rdx, qword [rsp + 0x178]
mov qword [r9 + rcx + 0x18], rdx
mov rdx, qword [rsp + 0x200]
mov qword [r9 + rcx + 0x20], rdx
mov rdx, qword [rsp + 0x208]
mov qword [r9 + rcx + 0x28], rdx
mov rdx, qword [rsp + 0x170]
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
movaps xmm0, xmmword [rsp + 0x2f0]
movaps xmm1, xmmword [rsp + 0x300]
movups xmmword [r9 + rcx + 0x40], xmm0
movups xmmword [r9 + rcx + 0x50], xmm1
mov word [r9 + rcx + 0x60], di
inc rax
mov qword [rsp + 0x1c8], rax
cmp r14, r12
jae 0x18005b9d4
mov rax, qword [rsp + 0x1a8]
mov word [rax + r14*4], si
mov word [rax + r14*4 + 2], di
jmp 0x18005aa71
cmp rbp, 0x200
setae dil
cmp qword [rsp + 0x190], 2
setne bpl
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x300], xmm1
movaps xmmword [rsp + 0x2f0], xmm0
cmp rsi, 0x7fff
lea r13, [0x1801dbd08]
ja 0x18005b9d4
mov rax, rsi
cmp rsi, qword [rsp + 0x1c0]
mov r15d, dword [rsp + 0xa8]
jne 0x18005a961
lea rcx, [rsp + 0x1b8]
mov rdx, rsi
call fcn.18003f610
mov rax, qword [rsp + 0x1c8]
mov r9, qword [rsp + 0x1b8]
mov rbx, qword [rsp + 0x1a8]
mov r12, qword [rsp + 0x1b0]
and dil, bpl
imul rcx, rax, 0x68
mov qword [r9 + rcx], 0
mov rdx, qword [rsp + 0x178]
mov qword [r9 + rcx + 0x18], rdx
mov rdx, qword [rsp + 0x200]
mov qword [r9 + rcx + 0x20], rdx
mov rdx, qword [rsp + 0x208]
mov qword [r9 + rcx + 0x28], rdx
mov rdx, qword [rsp + 0x170]
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
movaps xmm0, xmmword [rsp + 0x2f0]
movaps xmm1, xmmword [rsp + 0x300]
movups xmmword [r9 + rcx + 0x40], xmm0
movups xmmword [r9 + rcx + 0x50], xmm1
mov word [r9 + rcx + 0x60], r15w
inc rax
mov qword [rsp + 0x1c8], rax
xor eax, eax
mov rbp, qword [rsp + 0x1f8]
nop word [rax + rax]
mov rcx, r14
mov r14d, 0
cmp rcx, r12
jae 0x18005aa00
movzx edx, word [rbx + rcx*4]
cmp dx, 0xffff
je 0x18005aa38
inc rax
movzx r8d, word [rbx + rcx*4 + 2]
mov word [rbx + rcx*4], si
mov word [rbx + rcx*4 + 2], r15w
inc rcx
mov r15d, r8d
mov esi, edx
mov r14, rcx
jmp 0x18005aa00
mov word [rbx + rcx*4], si
mov word [rbx + rcx*4 + 2], r15w
mov rcx, qword [rsp + 0x190]
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 + 0x190], rcx
lea r15, [rsp + 0xc8]
mov r12, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x40]
cmp rsi, qword [rsp + 0x258]
jne 0x180059067
jmp 0x18005ac46
mov rsi, qword [rsp + 0x1e0]
mov rax, rsi
cmp rsi, qword [rsp + 0x1d8]
lea r15, [rsp + 0xc8]
mov r12, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x1f8]
jne 0x18005aade
lea rcx, [rsp + 0x1d0]
mov rdx, rsi
call fcn.18003e9a0
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x1d0]
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 + 0x178]
mov qword [rcx + rdx*8 + 0x20], r8
mov r8, qword [rsp + 0x200]
mov qword [rcx + rdx*8 + 0x28], r8
mov r8, qword [rsp + 0x208]
mov qword [rcx + rdx*8 + 0x30], r8
mov r8, qword [rsp + 0x170]
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 + 0x1e0], rax
mov qword [r14], 1
mov qword [r14 + 8], rsi
mov qword [r14 + 0x10], rsi
lea r13, [0x1801dbd08]
mov rax, qword [rsp + 0x70]
test rax, rax
mov rsi, qword [rsp + 0x40]
je 0x18005aa86
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x80]
lea rcx, [rsp + 0x88]
call qword [rax + 0x10]
jmp 0x18005aa86
mov rsi, qword [rsp + 0x120]
mov rax, rsi
cmp rsi, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x1f0]
jne 0x18005abde
lea rcx, [rsp + 0x110]
mov rdx, rsi
call fcn.18005c030
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], r15
mov qword [rcx + rdx + 0x10], 0
mov qword [rcx + rdx + 0x18], r15
mov qword [rcx + rdx + 0x20], rbx
mov r8, qword [rsp + 0xa8]
mov qword [rcx + rdx + 0x28], r8
movaps xmm0, xmmword [rsp + 0x130]
movups 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 0x18005a513
mov qword [rsp + 0x148], 0
mov r13, qword [rsp + 0xd0]
cmp r13, 3
mov qword [rsp + 0x40], r13
je 0x18005ae77
movups xmm0, xmmword [rsp + 0x120]
movaps xmmword [rsp + 0x2e0], xmm0
movups xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x2d0], xmm0
movups xmm0, xmmword [rsp + 0xd0]
movups xmm1, xmmword [rsp + 0xe0]
movups xmm2, xmmword [rsp + 0xf0]
movups xmm3, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x2c0], xmm3
movaps xmmword [rsp + 0x2b0], xmm2
movaps xmmword [rsp + 0x2a0], xmm1
movaps xmmword [rsp + 0x290], xmm0
mov rax, qword [0x180219958]
test rax, rax
lea r14, [rsp + 0x2f0]
jne 0x18005acf3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb23
mov qword [0x180219958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb23
mov rsi, rax
lea rax, [0x180202a70]
mov qword [rsi], rax
movups xmmword [rsi + 8], xmm6
mov qword [rsi + 0x18], 0
lea rcx, [rsp + 0x148]
call fcn.1800437e0
mov qword [rsp + 0x148], rsi
mov rax, qword [0x180219958]
test rax, rax
jne 0x18005ad5d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb45
mov qword [0x180219958], rax
mov r8d, 0x60
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb45
movaps xmm0, xmmword [rsp + 0x2e0]
movups xmmword [rax + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x2d0]
movups xmmword [rax + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x290]
movaps xmm1, xmmword [rsp + 0x2a0]
movaps xmm2, xmmword [rsp + 0x2b0]
movaps xmm3, xmmword [rsp + 0x2c0]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rcx, rsi
movabs rdx, 0x57ce2d5a889f0f89
mov r8, rax
lea r9, fcn.18005c2d0
call fcn.18005c0f0
test rax, rax
je 0x18005b0fb
mov rdi, rax
mov rbx, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0x57ce2d5a889f0f89
cmp rax, rcx
jne 0x18005b0d2
movups xmm0, xmmword [rdi + 0x50]
movaps xmmword [rsp + 0x340], xmm0
movups xmm0, xmmword [rdi + 0x40]
movaps xmmword [rsp + 0x330], xmm0
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movups xmm3, xmmword [rdi + 0x30]
movaps xmmword [rsp + 0x320], xmm3
movaps xmmword [rsp + 0x310], xmm2
movaps xmmword [rsp + 0x300], xmm1
movaps xmmword [rsp + 0x2f0], xmm0
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rsp + 0x2f0], 3
je 0x18005b0fb
mov rcx, r14
call fcn.18005c2d0
jmp 0x18005b0fb
cmp qword [rsp + 0x210], 0
mov r14, qword [rsp + 0x168]
je 0x18005b06a
movups xmm0, xmmword [rsp + 0x210]
movups xmm1, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0x300], xmm1
movaps xmmword [rsp + 0x2f0], xmm0
mov rax, qword [0x180219958]
test rax, rax
jne 0x18005aed0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb23
mov qword [0x180219958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb23
mov rsi, rax
lea rax, [0x180202a70]
mov qword [rsi], rax
movups xmmword [rsi + 8], xmm6
mov qword [rsi + 0x18], 0
lea rcx, [rsp + 0x148]
call fcn.1800437e0
mov qword [rsp + 0x148], rsi
mov r13b, 1
jmp 0x18005b135
lea eax, [rsi - 1]
mov word [rsp + 0x1e8], ax
lea rbx, [rsi*4]
mov rax, qword [0x180219958]
test rax, rax
jne 0x18005af55
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb56
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb56
mov rdi, rax
cmp rsi, 2
jb 0x18005afcf
mov ecx, 1
mov rax, rdi
cmp rsi, 9
jb 0x18005afb9
lea rdx, [rsi - 1]
mov r8, rdx
and r8, 0xfffffffffffffff8
lea rax, [rdi + r8*4]
lea rcx, [r8 + 1]
xor r9d, r9d
nop dword [rax]
movups xmmword [rdi + r9*4], xmm7
movups xmmword [rdi + r9*4 + 0x10], xmm7
add r9, 8
cmp r8, r9
jne 0x18005afa0
cmp rdx, r8
je 0x18005afcf
mov rdx, rsi
sub rdx, rcx
nop
mov dword [rax], 0xffff
add rax, 4
dec rdx
jne 0x18005afc0
mov dword [rax], 0xffff
test r14, r14
je 0x18005aff1
mov r8, qword [rsp + 0x1a8]
mov rcx, qword [0x180219958]
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 + 0x1a8], rdi
mov qword [rsp + 0x1b0], rsi
movabs rax, 0x13b13b13b13b13c
cmp r14, rax
setb al
jae 0x18005b9d4
imul rsi, r14, 0x68
mov bl, al
shl rbx, 3
test rsi, rsi
je 0x18005b079
mov rax, qword [0x180219958]
test rax, rax
jne 0x18005b057
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb65
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
jmp 0x18005b07c
mov r13b, 1
xor ebx, ebx
xor esi, esi
mov dil, 1
jmp 0x18005b251
mov rdi, rbx
test rdi, rdi
je 0x18005bb65
cmp qword [rsp + 0x1c0], 0
je 0x18005b0a7
mov r8, qword [rsp + 0x1b8]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsp + 0x1b8], rdi
mov qword [rsp + 0x1c0], r14
mov qword [rsp + 0x1c8], 0
cmp r13, 0x65
jb 0x180059029
jmp 0x18005b9d4
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x18005b0fb
cmp qword [rbx + 0x10], 0x11
jb 0x18005b0e9
mov rdi, qword [rdi - 8]
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp qword [rsp + 0x210], 0
je 0x18005b241
movups xmm0, xmmword [rsp + 0x210]
movups xmm1, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0x300], xmm1
movaps xmmword [rsp + 0x2f0], xmm0
xor r13d, r13d
mov r14, qword [rsp + 0x168]
mov rax, qword [0x180219958]
test rax, rax
jne 0x18005b157
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb23
mov qword [0x180219958], rax
mov r8d, 0x20
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb23
movaps xmm0, xmmword [rsp + 0x2f0]
movaps xmm1, xmmword [rsp + 0x300]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rcx, rsi
movabs rdx, 0x269d6f279b972a1d
mov r8, rax
lea r9, [0x1801c9650]
call fcn.18005c0f0
test rax, rax
je 0x18005b23b
mov rdi, rax
mov rbx, rdx
mov rcx, rax
call qword [rdx + 0x18]
movabs rcx, 0x269d6f279b972a1d
cmp rax, rcx
jne 0x18005b212
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x18005b23b
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x80]
lea rcx, [rsp + 0x88]
call qword [rax + 0x10]
jmp 0x18005b23b
mov rcx, rdi
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x18005b23b
cmp qword [rbx + 0x10], 0x11
jb 0x18005b229
mov rdi, qword [rdi - 8]
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov bl, 1
xor edi, edi
jmp 0x18005b251
mov dil, 1
xor ebx, ebx
xor r13d, r13d
mov r14, qword [rsp + 0x168]
movups xmm0, xmmword [rsp + 0x1e0]
movaps xmmword [rsp + 0x340], xmm0
movups xmm0, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x330], xmm0
movups xmm0, xmmword [rsp + 0x190]
movups xmm1, xmmword [rsp + 0x1a0]
movups xmm2, xmmword [rsp + 0x1b0]
movups xmm3, xmmword [rsp + 0x1c0]
movaps xmmword [rsp + 0x320], xmm3
movaps xmmword [rsp + 0x310], xmm2
movaps xmmword [rsp + 0x300], xmm1
movaps xmmword [rsp + 0x2f0], xmm0
mov rax, qword [rsp + 0x188]
mov byte [rsp + 0x35a], al
mov word [rsp + 0x358], r14w
mov qword [rsp + 0x350], rsi
movzx eax, r14w
cmp eax, 0x64
jg 0x18005b2de
je 0x18005b30b
jmp 0x18005b2fd
cmp eax, 0x65
je 0x18005b93f
cmp eax, 0xcc
je 0x18005b945
cmp eax, 0x130
je 0x18005b945
lea eax, [r14 - 0x66]
cmp ax, 0x62
jae 0x18005b910
mov r14, qword [rbp + 8]
test r14, r14
je 0x18005b8e5
lea rcx, [rsp + 0x2f0]
call fcn.18007a830
lea rcx, [rsp + 0x350]
call fcn.1800437e0
cmp dword [rsp + 0x40], 3
jne 0x18005b353
mov rax, qword [rsp + 0xd0]
cmp eax, 3
je 0x18005b353
lea rcx, [rsp + 0xd0]
call fcn.18005c2d0
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xc0]
mov rcx, r15
call qword [rax + 0x10]
mov rax, qword [rsp + 0x210]
test rax, rax
sete cl
or bl, cl
je 0x18005b390
lea r11, [rsp + 0x228]
jmp 0x180057f1f
mov rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
lea rcx, [rsp + 0x228]
call qword [rax + 0x10]
lea r11, [rsp + 0x228]
jmp 0x180057f1f
mov r9d, 4
jmp 0x18005b3c3
xor r9d, r9d
sub rbx, r9
je 0x18005b778
add rax, r9
xor r9d, r9d
xor r8d, r8d
jmp 0x18005b3fa
inc r13
test r10b, r10b
movzx r9d, r9b
mov r10d, 1
cmovs r9d, r10d
mov r8, r13
cmp rbx, r13
mov r11, rsi
je 0x18005b778
mov rsi, r11
mov r13, r8
movzx r10d, byte [rax + r8]
mov r11d, r10d
add r11d, 0xfffffff7
cmp r11d, 0x17
ja case.0x18005b42f.11
mov r13, r12
mov r12, r15
lea r15, [0x18005bba8]
movsxd r11, dword [r15 + r11*4]
add r11, r15
mov r15, r12
mov r12, r13
mov r13, r8
jmp r11
test r10b, r10b
js case.0x18005b42f.9
lea r11d, [r10 - 0x7f]
cmp r11b, 0xa2
jae case.0x18005b42f.9
jmp case.0x18005ba45.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 + 0x98], r13
mov r11, rsi
jmp 0x18005b4c9
lea r10, [r13 + 1]
cmp rbx, r10
jbe 0x18005b778
cmp byte [rax + r8 + 1], 0xa
jne case.0x18005ba45.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 + 0x98], r8
mov qword [rsp + 0xa0], r10
test r10, r10
jne 0x18005819e
jmp 0x18005b778
mov qword [rsp + 0x90], r12
add rsi, qword [rsp + 0x50]
jmp 0x18005b519
cmp rcx, rsi
jbe 0x18005b778
mov rax, qword [rsp + 0x40]
cmp byte [rax + rsi], 0xa
jne 0x18005b611
mov qword [rsp + 0x90], r12
mov rax, qword [rsp + 0x50]
add rsi, rax
inc rsi
mov r12, rsi
and r12, 0xffffffffffffff00
mov rcx, qword [rsp + 0x168]
lea eax, [rcx - 0x3e8]
movzx eax, ax
cmp eax, 0xfc7c
jb 0x18005baf5
call fcn.180050690
test rax, rax
mov r15, qword [rsp + 0x98]
je 0x18005b571
cmp r15, rdx
jne 0x18005b571
mov rcx, qword [rsp + 0xa0]
mov rdx, rax
mov r8, r15
call fcn.1801718f0
test eax, eax
je 0x18005b687
test r15, r15
je 0x18005b625
js 0x18005b9d4
mov rax, qword [0x180219958]
test rax, rax
jne 0x18005b5a2
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
test rax, rax
je 0x18005bb94
mov qword [0x180219958], rax
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x98]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
test rax, rax
je 0x18005bb94
mov qword [rsp + 0x40], r12
mov r12, rax
mov rcx, rax
mov rdx, qword [rsp + 0xa0]
mov r15, qword [rsp + 0x98]
mov r8, r15
call fcn.180170ea0
test r12b, 1
jne 0x18005b65f
mov rax, r12
or rax, 1
mov qword [rsp + 0xd8], r12
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xe8], rax
xor ecx, ecx
lea rax, [0x1801c85d0]
jmp 0x18005b680
mov rax, qword [rsp + 0x60]
and rax, 0xffffffffffffff00
or rax, 2
jmp 0x180058bd6
lea rax, str.description___is_deprecated__use_Display
mov qword [rsp + 0xd8], rax
lea rax, [rsp + 0xd8]
movups xmmword [rax + 8], xmm6
xor ecx, ecx
lea rax, [0x1801dbb08]
jmp 0x18005b68b
mov rax, qword [rsp + 0x60]
and rax, 0xffffffffffffff00
or rax, 1
jmp 0x180058bd6
mov qword [rsp + 0xd8], r12
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xe8], r12
xor ecx, ecx
lea rax, [0x1801c85e8]
mov r12, qword [rsp + 0x40]
jmp 0x18005b68b
mov cl, 1
xor eax, eax
mov qword [rsp + 0xd0], rax
cmp r13, 0x64
mov edx, 0x64
cmovb rdx, r13
test rdx, rdx
je 0x18005b71b
cmp r13, 0x64
mov edx, 0x64
cmovb rdx, r13
shl rdx, 5
xor r8d, r8d
mov r9, qword [rsp + r8 + 0x2f8]
cmp r9, 0xffff
ja 0x18005bab1
mov r10, qword [rsp + r8 + 0x2f0]
mov r11, qword [rsp + r8 + 0x300]
sub r10, rdi
add r9, r10
sub r11, rdi
mov r15, qword [rsp + r8 + 0x308]
add r15, r11
mov qword [rsp + r8 + 0xf70], r10
mov qword [rsp + r8 + 0xf78], r9
mov qword [rsp + r8 + 0xf80], r11
mov qword [rsp + r8 + 0xf88], r15
add r8, 0x20
cmp rdx, r8
jne 0x18005b6b9
movzx ecx, sil
or rcx, r12
sub r14, rbx
mov qword [rsp + 0x60], rcx
add r14, rcx
lea rdx, [rsp + 0xd8]
mov rcx, qword [rdx + 0x10]
mov qword [rsp + 0x1a0], rcx
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x190], xmm0
lea r15, [rsp + 0xc8]
mov r12, qword [rsp + 0x90]
jmp 0x180058c17
mov rax, qword [rsp + 0x60]
and rax, 0xffffffffffffff00
or rax, 1
mov r12, rdx
jmp 0x180058bd6
mov qword [r12], 3
jmp 0x18005b89f
xor edx, edx
mov eax, edx
mov byte [r12 + 8], al
mov qword [r12], 4
jmp 0x18005b89f
mov rsi, qword [rsp + 0x88]
test sil, 1
jne 0x18005b7da
lock dec qword [rsi + 0x20]
mov r15, r12
mov r12, qword [rsp + 0x90]
jne 0x18005b80d
mov rax, qword [rsi + 0x20]
cmp qword [rsi + 8], 0
je 0x18005b7fb
mov r8, qword [rsi]
mov rcx, qword [0x180219958]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x18005b7fb
shr rsi, 5
neg rsi
cmp qword [rsp + 0x80], rsi
mov r15, r12
mov r12, qword [rsp + 0x90]
je 0x18005b80d
add rsi, qword [rsp + 0x70]
mov rcx, qword [0x180219958]
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov byte [r12 + 8], 0xb
mov qword [r12], 4
mov r13b, 1
xor esi, esi
mov dil, 1
test r13b, r13b
je 0x18005b842
mov rax, qword [rsp + 0xd0]
cmp eax, 3
je 0x18005b842
lea rcx, [rsp + 0xd0]
call fcn.18005c2d0
test sil, sil
jne 0x18005b854
lea rcx, [rsp + 0x190]
call fcn.18007a830
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xc0]
mov rcx, r15
call qword [rax + 0x10]
test dil, dil
je 0x18005b89f
mov rax, qword [rsp + 0x210]
test rax, rax
je 0x18005b89f
mov rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
lea rcx, [rsp + 0x228]
call qword [rax + 0x10]
movaps xmm6, xmmword [rsp + 0x1bf0]
movaps xmm7, xmmword [rsp + 0x1c00]
movaps xmm8, xmmword [rsp + 0x1c10]
movaps xmm9, xmmword [rsp + 0x1c20]
movaps xmm10, xmmword [rsp + 0x1c30]
add rsp, 0x1c48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dl, 4
jmp case.0x18005ba45.0
mov eax, 3
mov qword [r12], rax
lea rcx, [rsp + 0x2f0]
call fcn.18007a830
lea rcx, [rsp + 0x350]
call fcn.1800437e0
mov sil, 1
jmp 0x18005b823
mov rax, qword [rsp + 0x230]
mov rax, qword [rax + 8]
movzx eax, byte [rax]
cmp eax, 5
je 0x18005b945
cmp eax, 7
jne 0x18005b9d8
add r14d, 0xffffff38
cmp r14w, 0x64
jae 0x18005b9d8
mov al, 1
xor edx, edx
jmp 0x18005b949
xor edx, edx
xor eax, eax
mov r8d, dword [rsp + 0x20]
movaps xmm0, xmmword [rsp + 0x350]
movups xmmword [r12 + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x340]
movups xmmword [r12 + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x330]
movups xmmword [r12 + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x2f0]
movaps xmm1, xmmword [rsp + 0x300]
movaps xmm2, xmmword [rsp + 0x310]
movaps xmm3, xmmword [rsp + 0x320]
movups xmmword [r12 + 0x30], xmm3
movups xmmword [r12 + 0x20], xmm2
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12], xmm0
mov ecx, eax
xor cl, 1
and r8b, cl
mov qword [r12 + 0x70], rdx
mov byte [r12 + 0x78], 0
mov byte [r12 + 0x79], r8b
mov byte [r12 + 0x7a], al
mov sil, 1
jmp 0x18005b823
ud2
movups xmm0, xmmword [0x1801ca0d0]
movaps xmmword [rsp + 0x80], xmm0
movups xmm0, xmmword [0x1801ca0c0]
movaps xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x2f0]
lea rdx, [rsp + 0x70]
call fcn.18005c3c0
test al, al
je 0x18005ba4e
mov cl, 2
cmp byte [rsp + 0x188], 1
je 0x18005baa2
lea rcx, [rsp + 0x2f0]
call fcn.18005c520
movzx edx, al
not rdx
jmp 0x18005b947
mov al, 9
xor edx, edx
mov ecx, ecx
lea r8, [0x18005bc08]
movsxd rcx, dword [r8 + rcx*4]
add rcx, r8
jmp rcx
mov al, 0xa
jmp case.0x18005ba45.5
lea rcx, [rsp + 0x2f0]
call fcn.180055d60
cmp rax, 1
jne 0x18005ba6f
mov cl, 9
cmp rdx, 0xfffffffffffffffe
jb 0x18005b947
jmp 0x18005baa2
movups xmm0, xmmword [0x1801dd060]
movaps xmmword [rsp + 0x80], xmm0
movups xmm0, xmmword [0x1801dd050]
movaps xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x2f0]
lea rdx, [rsp + 0x70]
call fcn.18005c3c0
mov cl, 1
test al, al
je 0x18005bae9
mov byte [r12 + 8], cl
mov eax, 4
jmp 0x18005b8ea
mov rdx, qword [rsp + 0x90]
mov byte [rdx + 8], 9
mov qword [rdx], 4
test cl, cl
jne 0x18005b89f
mov rdx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xe0]
lea rcx, [rsp + 0xe8]
jmp 0x18005b89c
mov rdx, 0xffffffffffffffff
jmp 0x18005b947
mov rax, qword [rsp + 0x90]
mov byte [rax + 8], 0xa
mov qword [rax], 4
jmp 0x18005b89f
mov al, 9
jmp case.0x18005ba45.5
mov ecx, 1
mov rdx, rsi
call fcn.18017ea70
ud2
mov ecx, 8
mov edx, 0x20
call fcn.18017ea70
ud2
mov ecx, 8
mov edx, 0x18
call fcn.18017ea70
ud2
mov ecx, 8
mov edx, 0x60
call fcn.18017ea70
ud2
mov ecx, 2
mov rdx, rbx
call fcn.18017ea70
ud2
mov rcx, rbx
mov rdx, rsi
call fcn.18017ea70
ud2
mov ecx, 2
mov edx, 0x20
call fcn.18017ea70
ud2
mov ecx, 8
mov edx, 0x240
call fcn.18017ea70
ud2
mov ecx, 1
mov rdx, qword [rsp + 0x98]
call fcn.18017ea70
ud2