Function at 0x140066590
Capabilities:
Inspect section memory permissions

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x700
mov rax, qword [0x1400eb3c0]
xor rax, rsp
mov qword [rsp + 0x6f0], rax
mov rsi, r9
mov r13d, r8d
mov rdi, rdx
mov qword [rsp + 0x70], rdx
mov rbx, rcx
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xe0], rdx
mov dword [rsp + 0x60], r8d
mov qword [rsp + 0x78], r9
xor r14d, r14d
mov eax, r14d
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x58], eax
mov rdx, qword [rdx + 8]
sub rdx, qword [rdi]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rdx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 1
jae 0x14006662a
mov rcx, rdi
call fcn.14006ace0
mov al, 1
jmp 0x140069021
mov rax, qword [0x1400eb240]
sub rax, qword [0x1400eb238]
sar rax, 5
test rax, rax
je 0x140066646
call fcn.1400664a0
mov rdx, qword [rdi]
lea rcx, [rsp + 0x318]
call fcn.1400089f0
nop
lea r8, [rsp + 0x318]
mov rdx, rbx
lea rcx, [rsp + 0x218]
call fcn.14005d0c0
nop
lea r9, [rsp + 0x318]
mov r12, qword [rsp + 0x318]
mov qword [rsp + 0x88], r12
mov r15, qword [rsp + 0x330]
mov qword [rsp + 0x80], r15
cmp r15, 0xf
cmova r9, r12
lea rcx, [rsp + 0x218]
mov rdi, qword [rsp + 0x218]
mov rbx, qword [rsp + 0x230]
cmp rbx, 0xf
cmova rcx, rdi
mov rax, qword [rsp + 0x328]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rsp + 0x228]
call fcn.1400075e0
cmp rax, 0xffffffffffffffff
jne 0x14006672d
cmp rbx, 0xf
jbe 0x1400666fc
mov r8, rbx
mov rdx, rdi
lea rcx, [rsp + 0x218]
call fcn.140024c50
mov qword [rsp + 0x228], r14
mov qword [rsp + 0x230], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x218], 0
cmp r15, 0xf
jbe 0x1400668fe
mov r8, r15
mov rdx, r12
jmp 0x140067403
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x278]
call fcn.1400089f0
nop
mov rdi, qword [rsp + 0x70]
mov rbx, qword [rdi]
mov r12, qword [rdi + 8]
cmp rbx, r12
je 0x140066849
nop dword [rax + rax]
mov rax, qword [rbx + 0x10]
mov r9, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x140066771
mov r9, qword [rbx]
lea rcx, [rsp + 0x218]
mov r15, qword [rsp + 0x218]
mov rdi, qword [rsp + 0x230]
cmp rdi, 0xf
cmova rcx, r15
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rsp + 0x228]
call fcn.1400075e0
cmp rax, 0xffffffffffffffff
je 0x140066872
xorps xmm0, xmm0
movups xmmword [rsp + 0x258], xmm0
mov qword [rsp + 0x268], r14
mov qword [rsp + 0x270], r14
xor r8d, r8d
lea rdx, [0x1400b0c12]
lea rcx, [rsp + 0x258]
call fcn.1400042a0
nop
mov edi, r14d
cmp dword [rbx + 0x20], r14d
jle 0x140066811
nop dword [rax]
mov r8d, 3
lea rdx, [0x1400bd480]
lea rcx, [rsp + 0x258]
call fcn.140028de0
inc edi
cmp edi, dword [rbx + 0x20]
jl 0x1400667f0
lea r8, [rsp + 0x258]
mov rdx, rbx
lea rcx, [rsp + 0x218]
call fcn.140049db0
nop
lea rcx, [rsp + 0x258]
call fcn.140009b10
add rbx, 0x30
cmp rbx, r12
jne 0x140066760
mov rdi, qword [rsp + 0x70]
mov r12, qword [rsp + 0x760]
test rsi, rsi
je 0x140066908
test r12, r12
je 0x140066908
movabs r15, 0x7fffffffffffffff
jmp 0x140067006
mov r8, qword [rsp + 0x290]
cmp r8, 0xf
jbe 0x1400668a5
mov rdx, qword [rsp + 0x278]
lea rcx, [rsp + 0x278]
call fcn.140024c50
mov rdi, qword [rsp + 0x230]
mov r15, qword [rsp + 0x218]
cmp rdi, 0xf
jbe 0x1400668be
mov r8, rdi
mov rdx, r15
lea rcx, [rsp + 0x218]
call fcn.140024c50
mov qword [rsp + 0x228], r14
mov qword [rsp + 0x230], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x218], 0
mov r8, qword [rsp + 0x80]
cmp r8, 0xf
jbe 0x1400668fe
mov rdx, qword [rsp + 0x88]
lea rcx, [rsp + 0x318]
call fcn.140024c50
nop
mov rcx, qword [rsp + 0x70]
jmp 0x14006901a
lea rdx, [rsp + 0x278]
lea rcx, [rsp + 0x2f8]
call fcn.1400089f0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x2d8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x2e8], xmm1
mov r8d, 2
lea rdx, [0x1400bd3d4]
lea rcx, [rsp + 0x2d8]
call fcn.1400042a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x238], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x248], xmm1
mov r8d, 1
lea rdx, [0x1400b0c10]
lea rcx, [rsp + 0x238]
call fcn.1400042a0
nop
lea r8, [rsp + 0x2d8]
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0x2f8]
call fcn.140049db0
nop
lea rcx, [rsp + 0x238]
call fcn.140009b10
nop
lea rcx, [rsp + 0x2d8]
call fcn.140009b10
lea rdx, [0x1400eb200]
lea rcx, [rsp + 0x4d8]
call fcn.1400089f0
nop
movabs r15, 0x7fffffffffffffff
mov rax, r15
mov rcx, qword [rsp + 0x308]
sub rax, rcx
cmp rax, 0x1c
jb 0x140069044
lea rax, [rsp + 0x2f8]
cmp qword [rsp + 0x310], 0xf
cmova rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x1c
lea r9, str.aobscanmodule_.___.___._
lea r8, [rsp + 0x2f8]
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x4f8]
call fcn.140008b10
nop
mov r8d, 5
lea rdx, [0x1400bd3d8]
lea rcx, [rsp + 0x4f8]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x3f8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x408], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x3f8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x408], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], 0
mov r8d, 1
lea rdx, [rsp + 0x3f8]
lea rcx, [rsp + 0x108]
call fcn.14005b6d0
nop
mov r8, qword [rsp + 0x410]
cmp r8, 0xf
jbe 0x140066ad7
mov rdx, qword [rsp + 0x3f8]
lea rcx, [rsp + 0x3f8]
call fcn.140024c50
movdqa xmm0, xmmword [0x1400b1c60]
movdqu xmmword [rsp + 0x408], xmm0
mov byte [rsp + 0x3f8], 0
lea rcx, [rsp + 0x4f8]
call fcn.140009b10
mov qword [rsp + 0x130], r14
mov byte [rsp + 0x138], 0
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x140], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x150], xmm1
mov qword [rsp + 0x160], r14
mov byte [rsp + 0x168], 0
movdqa xmmword [rsp + 0x170], xmm0
mov byte [rsp + 0x180], 0
mov qword [rsp + 0x188], r14
mov qword [rsp + 0x190], r14
mov byte [rsp + 0x198], 0
mov rbx, qword [rsp + 0x50]
cmp qword [rbx + 0x18], 0xf
jbe 0x140066b79
mov rdx, qword [rbx]
mov r11, rdx
mov r10, rdx
add r11, qword [rbx + 0x10]
jmp 0x140066b86
mov r10, rbx
mov r11, qword [rbx + 0x10]
add r11, rbx
mov rdx, rbx
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], r14d
lea r9, [rsp + 0x108]
lea r8, [rsp + 0x130]
mov rdx, r11
mov rcx, r10
call fcn.140006360
test al, al
je 0x140066c70
mov rcx, qword [rsp + 0x148]
mov r8, qword [rsp + 0x140]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 2
jne 0x140066c70
lea rcx, [r8 + 0x18]
lea rdx, [rsp + 0x338]
call fcn.14000a5c0
mov rdx, rax
lea rcx, [rsp + 0x4d8]
call fcn.14000a2a0
lea rcx, [rsp + 0x338]
call fcn.140009b10
lea rcx, [rsp + 0x4d8]
call fcn.14004a9e0
lea rdx, [rsp + 0x4d8]
lea rcx, [rsp + 0x338]
call fcn.1400089f0
mov rdx, rax
lea rcx, [rsp + 0x598]
call fcn.14002ffe0
mov rsi, qword [rsp + 0x598]
mov r12, qword [rsp + 0x5a0]
add r12, rsi
lea rcx, [rsp + 0x5b0]
call fcn.1400288a0
jmp 0x140066fb0
mov qword [rsp + 0x1a0], r14
mov byte [rsp + 0x1a8], 0
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x1b0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x1c0], xmm1
mov qword [rsp + 0x1d0], r14
mov byte [rsp + 0x1d8], 0
movdqa xmmword [rsp + 0x1e0], xmm0
mov byte [rsp + 0x1f0], 0
mov qword [rsp + 0x1f8], r14
mov qword [rsp + 0x200], r14
mov byte [rsp + 0x208], 0
mov rax, r15
mov rcx, qword [rsp + 0x308]
sub rax, rcx
cmp rax, 0x22
jb 0x14006904a
lea rax, [rsp + 0x2f8]
cmp qword [rsp + 0x310], 0xf
cmova rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x22
lea r9, str.aobscanregion_.___.____.___._
lea r8, [rsp + 0x2f8]
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x518]
call fcn.140008b10
nop
mov r8d, 5
lea rdx, [0x1400bd3d8]
lea rcx, [rsp + 0x518]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x418], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x428], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x418], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x428], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], 0
mov r8d, 1
lea rdx, [rsp + 0x418]
lea rcx, [rsp + 0x598]
call fcn.14005b6d0
nop
mov r8, qword [rsp + 0x430]
cmp r8, 0xf
jbe 0x140066dce
mov rdx, qword [rsp + 0x418]
lea rcx, [rsp + 0x418]
call fcn.140024c50
movdqa xmm0, xmmword [0x1400b1c60]
movdqu xmmword [rsp + 0x428], xmm0
mov byte [rsp + 0x418], 0
lea rcx, [rsp + 0x518]
call fcn.140009b10
cmp qword [rbx + 0x18], 0xf
jbe 0x140066e0a
mov rdx, qword [rbx]
mov r11, rdx
mov r10, rdx
add r11, qword [rbx + 0x10]
jmp 0x140066e17
mov r11, qword [rbx + 0x10]
add r11, rbx
mov r10, rbx
mov rdx, rbx
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], r14d
lea r9, [rsp + 0x598]
lea r8, [rsp + 0x1a0]
mov rdx, r11
mov rcx, r10
call fcn.140006360
test al, al
je 0x140066f6c
mov rcx, qword [rsp + 0x1b8]
mov rbx, qword [rsp + 0x1b0]
sub rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 3
jne 0x140066f6c
lea rcx, [rbx + 0x18]
lea rdx, [rsp + 0x4f8]
call fcn.14000a5c0
nop
lea rcx, [rbx + 0x30]
lea rdx, [rsp + 0x518]
call fcn.14000a5c0
nop
lea rdx, [rsp + 0x4f8]
lea rcx, [rsp + 0x338]
call fcn.1400089f0
mov rcx, rax
call fcn.1400103d0
mov rsi, rax
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x518]
lea rcx, [rsp + 0x338]
call fcn.1400089f0
mov rcx, rax
call fcn.1400103d0
mov r12, rax
mov qword [rsp + 0x760], rax
jmp 0x140066f50
lea rcx, [rsp + 0x518]
call fcn.140009b10
nop
lea rcx, [rsp + 0x4f8]
call fcn.140009b10
nop
lea rcx, [rsp + 0x598]
call fcn.1400286c0
mov rcx, qword [rsp + 0x5b8]
test rcx, rcx
je 0x140066fa3
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x140066fa3
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
nop
lea rcx, [rsp + 0x1b0]
call fcn.140009fe0
test rsi, rsi
je 0x140068f2c
test r12, r12
je 0x140068f2c
lea rcx, [rsp + 0x140]
call fcn.140009fe0
nop
lea rcx, [rsp + 0x108]
call fcn.1400286c0
lea rcx, [rsp + 0x110]
call fcn.140009e50
nop
lea rcx, [rsp + 0x4d8]
call fcn.140009b10
nop
lea rcx, [rsp + 0x2f8]
call fcn.140009b10
mov ecx, SafeArrayUnaccessData
nop dword [rax + rax]
xorps xmm0, xmm0
movups xmmword [rsp + 0xc0], xmm0
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xd8], r14
mov rbx, qword [rsp + 0x228]
lea rdi, [rsp + 0x218]
cmp qword [rsp + 0x230], 0xf
cmova rdi, qword [rsp + 0x218]
cmp rbx, r15
ja 0x14006913a
cmp rbx, 0xf
ja 0x14006707d
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xd8], reloc.OLEAUT32.dll_SafeArrayDestroy
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0xc0], xmm0
jmp 0x1400670d9
mov rax, rbx
or rax, 0xf
cmp rax, r15
jbe 0x14006708e
mov rax, r15
jmp 0x140067096
cmp rax, 0x16
cmovb rax, rcx
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0xc0]
call fcn.14005b740
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xd0], rbx
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0xd8], rcx
lea r8, [rbx + 1]
mov rdx, rdi
mov rcx, rax
call fcn.1400a8810
test r13d, r13d
setne r9b
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rsi
xor r8d, r8d
lea rdx, [rsp + 0xc0]
mov rcx, qword [0x1400eddc8]
call fcn.140057750
mov rsi, rax
mov qword [rsp + 0xb8], rax
cmp rax, 0x10000
jb 0x140067383
mov rax, qword [rsp + 0x70]
mov rdi, qword [rax]
mov r15, qword [rax + 8]
cmp rdi, r15
je 0x140067225
cmp dword [rdi + 0x28], 0x80000000
jne 0x140067148
cmp dword [rdi + 0x2c], 0x7fffffff
je 0x140067218
mov ecx, 4
cmp dword [rdi + 0x20], ecx
cmovg ecx, dword [rdi + 0x20]
movsxd rsi, ecx
mov rcx, rsi
call fcn.1400813f8
mov rbx, rax
test rax, rax
je 0x140067176
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.1400a8eb0
jmp 0x140067179
mov rbx, r14
mov qword [rsp + 0x98], rbx
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.1400a8eb0
mov rax, qword [0x1400edd60]
movsxd r9, dword [rdi + 0x20]
movsxd rdx, dword [rdi + 0x24]
mov rsi, qword [rsp + 0xb8]
add rdx, rsi
mov rcx, qword [rax + 0x1b0]
test rcx, rcx
je 0x140067375
mov rax, qword [0x1400ed608]
mov qword [rsp + 0x20], r14
mov r8, rbx
mov rcx, qword [rcx + 0xa0]
call rax
test eax, eax
je 0x140067375
mov eax, r14d
mov ecx, dword [rdi + 0x20]
cmp ecx, 1
jne 0x1400671e8
movsx eax, byte [rbx]
jmp 0x1400671f9
cmp ecx, 2
jne 0x1400671f2
movsx eax, word [rbx]
jmp 0x1400671f9
cmp ecx, 4
jg 0x1400671f9
mov eax, dword [rbx]
cmp eax, dword [rdi + 0x28]
jl 0x14006734d
cmp eax, dword [rdi + 0x2c]
jg 0x14006734d
test rbx, rbx
je 0x140067218
mov rcx, rbx
call fcn.140080efc
add rdi, 0x30
cmp rdi, r15
jne 0x140067132
lea r9, [rsp + 0x278]
mov rdi, qword [rsp + 0x278]
mov qword [rsp + 0x78], rdi
mov r15, qword [rsp + 0x290]
mov qword [rsp + 0xb0], r15
cmp r15, 0xf
cmova r9, rdi
mov rbx, qword [rsp + 0x50]
mov rcx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x140067264
mov rcx, qword [rbx]
mov rax, qword [rsp + 0x288]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rbx + 0x10]
call fcn.1400075e0
cmp rax, 0xffffffffffffffff
je 0x1400672c3
lea rdx, [rsp + 0x278]
lea rcx, [rsp + 0x338]
call fcn.1400089f0
mov r8, rsi
mov rdx, rax
mov rcx, rbx
call fcn.140061270
mov rax, qword [rsp + 0x290]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x78], rax
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rbx]
mov qword [rsp + 0x48], rcx
mov rax, qword [rbx + 8]
mov qword [rsp + 0x98], rax
cmp rcx, rax
je 0x140068d24
movzx esi, byte [rsp + 0x40]
movzx edi, byte [rsp + 0x40]
movzx r13d, byte [rsp + 0x40]
movzx r14d, byte [rsp + 0x40]
movzx r15d, byte [rsp + 0x40]
movzx r12d, byte [rsp + 0x40]
nop word [rax + rax]
mov eax, dword [rcx + 0x20]
mov ecx, 4
cmp eax, ecx
cmovg ecx, eax
movsxd rax, ecx
mov qword [rsp + 0x68], rax
mov rcx, rax
call fcn.1400813f8
mov rbx, rax
test rax, rax
je 0x14006741b
mov r8, qword [rsp + 0x68]
xor edx, edx
mov rcx, rax
call fcn.1400a8eb0
jmp 0x14006741d
inc rsi
test rbx, rbx
mov ecx, SafeArrayUnaccessData
movabs r15, 0x7fffffffffffffff
je 0x140067010
mov rcx, rbx
call fcn.140080efc
jmp 0x140067006
test rbx, rbx
je 0x140067383
mov rcx, rbx
call fcn.140080efc
nop
mov r8, qword [rsp + 0x290]
cmp r8, 0xf
jbe 0x1400673a7
mov rdx, qword [rsp + 0x278]
lea rcx, [rsp + 0x278]
call fcn.140024c50
nop
mov r8, qword [rsp + 0x230]
cmp r8, 0xf
jbe 0x1400673ca
mov rdx, qword [rsp + 0x218]
lea rcx, [rsp + 0x218]
call fcn.140024c50
mov byte [rsp + 0x218], 0
mov qword [rsp + 0x230], reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rsp + 0x228], r14
mov rax, qword [rsp + 0x80]
cmp rax, 0xf
jbe 0x1400668fe
mov rdx, qword [rsp + 0x88]
mov r8, rax
lea rcx, [rsp + 0x318]
call fcn.140024c50
nop
mov rcx, qword [rsp + 0x70]
jmp 0x14006901a
xor ebx, ebx
mov qword [rsp + 0x210], rbx
or dword [rsp + 0x44], 0x100
mov r8, qword [rsp + 0x68]
xor edx, edx
mov rcx, rbx
call fcn.1400a8eb0
mov rax, qword [0x1400edd60]
mov rcx, qword [rsp + 0x48]
movsxd r9, dword [rcx + 0x20]
movsxd rdx, dword [rcx + 0x24]
add rdx, qword [rsp + 0xb8]
mov rcx, qword [rax + 0x1b0]
test rcx, rcx
je 0x140068d6d
mov rax, qword [0x1400ed608]
mov qword [rsp + 0x20], 0
mov r8, rbx
mov rcx, qword [rcx + 0xa0]
call rax
test eax, eax
je 0x140068d6d
xorps xmm0, xmm0
movups xmmword [rsp + 0xe8], xmm0
mov qword [rsp + 0xf8], 1
mov qword [rsp + 0x100], reloc.OLEAUT32.dll_SafeArrayDestroy
mov word [rsp + 0xe8], 0x20
mov rax, qword [rsp + 0x48]
movsxd r8, dword [rax + 0x20]
lea r9, [rsp + 0xe8]
mov rdx, rbx
lea rcx, [rsp + 0x2b8]
call fcn.14000b1e0
nop
movabs rax, 0x7fffffffffffffff
mov rcx, qword [rsp + 0x2c8]
sub rax, rcx
cmp rax, 1
jb 0x140069116
lea rax, [rsp + 0x2b8]
cmp qword [rsp + 0x2d0], 0xf
cmova rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b1020]
lea r8, [rsp + 0x2b8]
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x558]
call fcn.140008b10
or dword [rsp + 0x44], 0x20000000
mov r8d, 1
lea rdx, [0x1400bd4cc]
lea rcx, [rsp + 0x558]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x498], xmm0
xor ecx, ecx
mov qword [rsp + 0x4a8], rcx
mov qword [rsp + 0x4b0], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x498], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x4a8], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], cl
or dword [rsp + 0x44], 0x10000000
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x140069110
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x1400675e1
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b1020]
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x538]
call fcn.140008b10
or dword [rsp + 0x44], 0x8000000
mov r8d, 1
lea rdx, [0x1400bd4cc]
lea rcx, [rsp + 0x538]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x478], xmm0
xor ecx, ecx
mov qword [rsp + 0x488], rcx
mov qword [rsp + 0x490], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x478], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x488], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], cl
or dword [rsp + 0x44], 0x4000000
lea r8, [rsp + 0x498]
lea rdx, [rsp + 0x478]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
lea rcx, [rsp + 0x478]
call fcn.140009b10
nop
lea rcx, [rsp + 0x538]
call fcn.140009b10
nop
lea rcx, [rsp + 0x498]
call fcn.140009b10
nop
lea rcx, [rsp + 0x558]
call fcn.140009b10
movabs rax, 0x7fffffffffffffff
mov rcx, qword [rsp + 0x2c8]
sub rax, rcx
cmp rax, 6
jb 0x14006910a
lea rax, [rsp + 0x2b8]
cmp qword [rsp + 0x2d0], 0xf
cmova rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 6
lea r9, str.bytes_
lea r8, [rsp + 0x2b8]
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x538]
call fcn.140008b10
or dword [rsp + 0x44], 0x2000000
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 6
jb 0x140069104
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x140067770
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 6
lea r9, str.bytes_
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x558]
call fcn.140008b10
or dword [rsp + 0x44], 0x1000000
lea r8, [rsp + 0x538]
lea rdx, [rsp + 0x558]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
lea rcx, [rsp + 0x558]
call fcn.140009b10
nop
lea rcx, [rsp + 0x538]
call fcn.140009b10
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 5
jb 0x1400690fe
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x14006780a
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 5
lea r9, str.push
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x610]
call fcn.140008b10
or dword [rsp + 0x44], 0x800000
mov r8d, 2
lea rdx, [0x1400bd4d8]
lea rcx, [rsp + 0x610]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x4b8], xmm0
xor ecx, ecx
mov qword [rsp + 0x4c8], rcx
mov qword [rsp + 0x4d0], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x4b8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x4c8], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], cl
or dword [rsp + 0x44], 0x400000
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 5
jb 0x1400690f8
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x1400678d2
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 5
lea r9, str.push
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x5f0]
call fcn.140008b10
or dword [rsp + 0x44], 0x200000
lea r8, [rsp + 0x4b8]
lea rdx, [rsp + 0x5f0]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
lea rcx, [rsp + 0x5f0]
call fcn.140009b10
nop
lea rcx, [rsp + 0x4b8]
call fcn.140009b10
nop
lea rcx, [rsp + 0x610]
call fcn.140009b10
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x1400690f2
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x14006797a
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b1020]
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x438]
call fcn.140008b10
or dword [rsp + 0x44], 0x8000
mov r8d, 2
lea rdx, [0x1400bd4d8]
lea rcx, [rsp + 0x438]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x458], xmm0
xor ecx, ecx
mov qword [rsp + 0x468], rcx
mov qword [rsp + 0x470], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x458], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x468], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], cl
or dword [rsp + 0x44], 0x100000
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x1400690ec
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x140067a42
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b1020]
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x630]
call fcn.140008b10
or dword [rsp + 0x44], 0x80000
lea r8, [rsp + 0x458]
lea rdx, [rsp + 0x630]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
lea rcx, [rsp + 0x630]
call fcn.140009b10
nop
lea rcx, [rsp + 0x458]
call fcn.140009b10
nop
lea rcx, [rsp + 0x438]
call fcn.140009b10
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x1400690e6
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x140067aea
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b0fdc]
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x578]
call fcn.140008b10
or dword [rsp + 0x44], 0x40000
mov r8d, 2
lea rdx, [0x1400bd4d8]
lea rcx, [rsp + 0x578]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x358], xmm0
xor ecx, ecx
mov qword [rsp + 0x368], rcx
mov qword [rsp + 0x370], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x358], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x368], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], cl
or dword [rsp + 0x44], 0x20000
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x1400690e0
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x140067bb2
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b0fdc]
mov r8, rcx
movzx edx, r12b
lea rcx, [rsp + 0x258]
call fcn.140008b10
or dword [rsp + 0x44], 0x10000
lea r8, [rsp + 0x358]
lea rdx, [rsp + 0x258]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
mov r8, qword [rsp + 0x270]
cmp r8, 0xf
jbe 0x140067c26
mov rdx, qword [rsp + 0x258]
lea rcx, [rsp + 0x258]
call fcn.140024c50
mov qword [rsp + 0x268], 0
mov qword [rsp + 0x270], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x258], 0
mov r8, qword [rsp + 0x370]
cmp r8, 0xf
jbe 0x140067c69
mov rdx, qword [rsp + 0x358]
lea rcx, [rsp + 0x358]
call fcn.140024c50
mov qword [rsp + 0x368], 0
mov qword [rsp + 0x370], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x358], 0
mov r8, qword [rsp + 0x590]
cmp r8, 0xf
jbe 0x140067cac
mov rdx, qword [rsp + 0x578]
lea rcx, [rsp + 0x578]
call fcn.140024c50
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x1400690da
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x140067cd9
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b1024]
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x6d0]
call fcn.140008b10
or dword [rsp + 0x44], 0x200
mov r8d, 2
lea rdx, [0x1400bd4d8]
lea rcx, [rsp + 0x6d0]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x378], xmm0
xor ecx, ecx
mov qword [rsp + 0x388], rcx
mov qword [rsp + 0x390], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x378], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x388], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], cl
or dword [rsp + 0x44], 0x4000
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x1400690d4
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x140067da1
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b1024]
mov r8, rcx
movzx edx, r15b
lea rcx, [rsp + 0x2d8]
call fcn.140008b10
or dword [rsp + 0x44], 0x2000
lea r8, [rsp + 0x378]
lea rdx, [rsp + 0x2d8]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
mov rdx, qword [rsp + 0x2f0]
cmp rdx, 0xf
jbe 0x140067e35
inc rdx
mov rcx, qword [rsp + 0x2d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140067e30
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069056
call fcn.140080efc
mov qword [rsp + 0x2e8], 0
mov qword [rsp + 0x2f0], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x2d8], 0
mov r8, qword [rsp + 0x390]
cmp r8, 0xf
jbe 0x140067e78
mov rdx, qword [rsp + 0x378]
lea rcx, [rsp + 0x378]
call fcn.140024c50
mov qword [rsp + 0x388], 0
mov qword [rsp + 0x390], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x378], 0
mov r8, qword [rsp + 0x6e8]
cmp r8, 0xf
jbe 0x140067ebb
mov rdx, qword [rsp + 0x6d0]
lea rcx, [rsp + 0x6d0]
call fcn.140024c50
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x1400690ce
mov r9, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x140067ee8
mov r9, qword [rcx]
mov qword [rsp + 0x30], 1
lea rax, [0x1400b0f40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r8, rcx
movzx edx, r14b
lea rcx, [rsp + 0x6d0]
call fcn.140008b10
or dword [rsp + 0x44], 0x1000
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 3
jb 0x1400690c8
mov r9, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x140067f4b
mov r9, qword [rcx]
mov qword [rsp + 0x30], 3
lea rax, [0x1400bd4e4]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r8, rcx
movzx edx, r13b
lea rcx, [rsp + 0x258]
call fcn.140008b10
or dword [rsp + 0x44], 0x800
lea r8, [rsp + 0x6d0]
lea rdx, [rsp + 0x258]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
mov r8, qword [rsp + 0x270]
cmp r8, 0xf
jbe 0x140067fbf
mov rdx, qword [rsp + 0x258]
lea rcx, [rsp + 0x258]
call fcn.140024c50
mov qword [rsp + 0x268], 0
mov qword [rsp + 0x270], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x258], 0
mov r8, qword [rsp + 0x6e8]
cmp r8, 0xf
jbe 0x140068002
mov rdx, qword [rsp + 0x6d0]
lea rcx, [rsp + 0x6d0]
call fcn.140024c50
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 2
jb 0x1400690c2
mov r9, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x14006802f
mov r9, qword [rcx]
mov qword [rsp + 0x30], 2
lea rax, [0x1400bd4e8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x2d8]
call fcn.140008b10
mov eax, dword [rsp + 0x44]
bts eax, 0xa
or eax, 1
mov dword [rsp + 0x44], eax
mov dword [rsp + 0x58], eax
lea r9, [rsp + 0x2d8]
cmp qword [rsp + 0x2f0], 0xf
cmova r9, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x50]
mov rcx, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x14006809d
mov rcx, qword [rdx]
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rdx + 0x10]
call fcn.1400075e0
cmp rax, 0xffffffffffffffff
jne 0x14006816c
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 2
jb 0x14006905c
mov r9, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x1400680ed
mov r9, qword [rcx]
mov qword [rsp + 0x30], 2
lea rax, [0x1400bd4d8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x238]
call fcn.140008b10
or dword [rsp + 0x44], 2
lea r9, [rsp + 0x238]
cmp qword [rsp + 0x250], 0xf
cmova r9, qword [rsp + 0x238]
mov rdx, qword [rsp + 0x50]
mov rcx, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x14006814d
mov rcx, qword [rdx]
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, qword [rdx + 0x10]
call fcn.1400075e0
cmp rax, 0xffffffffffffffff
je 0x14006817c
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x20], 4
mov byte [rsp + 0x40], 1
jle 0x140068181
mov byte [rsp + 0x40], 0
mov eax, dword [rsp + 0x44]
test al, 2
je 0x1400681a1
and eax, 0xfffffffd
mov dword [rsp + 0x44], eax
lea rcx, [rsp + 0x238]
call fcn.140009b10
mov eax, dword [rsp + 0x44]
test al, 1
je 0x1400681b9
and eax, 0xfffffffe
mov dword [rsp + 0x44], eax
lea rcx, [rsp + 0x2d8]
call fcn.140009b10
cmp byte [rsp + 0x40], 0
je 0x140068411
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0x20]
cmp ecx, 1
jne 0x1400681d6
movsx eax, byte [rbx]
jmp 0x1400681e2
cmp ecx, 2
jne 0x1400681e0
movzx eax, word [rbx]
jmp 0x1400681e2
mov eax, dword [rbx]
mov dword [rsp + 0x58], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x6d0], xmm0
movups xmmword [rsp + 0x6e0], xmm0
mov r8d, eax
lea rdx, [0x1400b0fd8]
lea rcx, [rsp + 0x6d0]
call fcn.140007eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x238], xmm0
xor eax, eax
mov qword [rsp + 0x248], rax
mov qword [rsp + 0x250], rax
lea rax, [rsp + 0x6d0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140068240
lea rdx, [rsp + 0x6d0]
lea rcx, [rsp + 0x238]
call fcn.1400042a0
nop
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 2
jb 0x140069068
mov r9, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x14006828d
mov r9, qword [rcx]
mov qword [rsp + 0x30], 2
lea rax, [0x1400bd4e8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x438]
call fcn.140008b10
nop
lea r8, [rsp + 0x238]
lea rdx, [rsp + 0x438]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
lea rcx, [rsp + 0x438]
call fcn.140009b10
nop
lea rcx, [rsp + 0x238]
call fcn.140009b10
xorps xmm0, xmm0
movups xmmword [rsp + 0x6d0], xmm0
movups xmmword [rsp + 0x6e0], xmm0
mov r8d, dword [rsp + 0x58]
lea rdx, [0x1400b0fd8]
lea rcx, [rsp + 0x6d0]
call fcn.140007eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x238], xmm0
xor eax, eax
mov qword [rsp + 0x248], rax
mov qword [rsp + 0x250], rax
lea rax, [rsp + 0x6d0]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140068350
lea rdx, [rsp + 0x6d0]
lea rcx, [rsp + 0x238]
call fcn.1400042a0
or dword [rsp + 0x44], 0x80000000
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 2
jb 0x140069062
mov r9, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x1400683a4
mov r9, qword [rcx]
mov qword [rsp + 0x30], 2
lea rax, [0x1400bd4d8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r8, rcx
movzx edx, byte [rsp + 0x40]
lea rcx, [rsp + 0x438]
call fcn.140008b10
or dword [rsp + 0x44], 0x40000000
lea r8, [rsp + 0x238]
lea rdx, [rsp + 0x438]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
lea rcx, [rsp + 0x438]
call fcn.140009b10
nop
lea rcx, [rsp + 0x238]
call fcn.140009b10
xorps xmm0, xmm0
movups xmmword [rsp + 0x650], xmm0
mov qword [rsp + 0x660], 1
mov qword [rsp + 0x668], 0xf
mov word [rsp + 0x650], 0x20
movups xmmword [rsp + 0x670], xmm0
mov qword [rsp + 0x680], 1
mov qword [rsp + 0x688], 0xf
mov word [rsp + 0x670], 0x29
movups xmmword [rsp + 0x690], xmm0
mov qword [rsp + 0x6a0], 1
mov qword [rsp + 0x6a8], 0xf
mov word [rsp + 0x690], 0xd
movups xmmword [rsp + 0x6b0], xmm0
mov qword [rsp + 0x6c0], 1
mov qword [rsp + 0x6c8], 0xf
mov word [rsp + 0x6b0], 0xa
lea r8, [rsp + 0x650]
mov qword [rsp + 0xa0], r8
nop dword [rax]
xorps xmm0, xmm0
movups xmmword [rsp + 0x298], xmm0
xor edx, edx
mov qword [rsp + 0x2a8], rdx
mov qword [rsp + 0x2b0], rdx
mov rax, qword [r8 + 0x10]
mov qword [rsp + 0x90], rax
mov rcx, r8
mov qword [rsp + 0x68], rcx
cmp qword [r8 + 0x18], 0xf
jbe 0x140068510
mov rcx, qword [r8]
mov qword [rsp + 0x68], rcx
movabs r8, 0x7fffffffffffffff
cmp rax, r8
ja 0x1400690bc
cmp rax, 0xf
ja 0x140068559
mov qword [rsp + 0x2a8], rax
mov eax, reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x2b0], rax
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0x298], xmm0
movq qword [rsp + 0x58], xmm0
jmp 0x140068625
or rax, 0xf
cmp rax, r8
jbe 0x140068577
mov qword [rsp + 0x60], r8
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x1400685a3
cmp rax, 0x16
mov ecx, SafeArrayUnaccessData
cmovb rax, rcx
mov qword [rsp + 0x60], rax
lea rcx, [rax + 1]
cmp rcx, 0x1000
jb 0x1400685cc
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14006906e
mov rcx, rax
call fcn.140080ec0
test rax, rax
je 0x1400690aa
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rsp + 0x58], rcx
mov qword [rcx - 8], rax
mov rax, qword [rsp + 0x60]
jmp 0x1400685ed
test rcx, rcx
je 0x1400685e5
call fcn.140080ec0
mov rcx, rax
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x60]
jmp 0x1400685ed
mov rcx, rdx
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x298], rcx
mov rdx, qword [rsp + 0x90]
mov qword [rsp + 0x2a8], rdx
mov qword [rsp + 0x2b0], rax
lea r8, [rdx + 1]
mov rdx, qword [rsp + 0x68]
call fcn.1400a8810
movabs r8, 0x7fffffffffffffff
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
mov rax, r8
sub rax, rdx
cmp rax, 1
jb 0x1400690b6
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x14006864b
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b0cec]
mov r8, rcx
movzx edx, sil
lea rcx, [rsp + 0x5d0]
call fcn.140008b10
or dword [rsp + 0x44], 8
lea rdx, [rsp + 0x298]
cmp qword [rsp + 0x60], 0xf
cmova rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x5d0]
call fcn.140028de0
movups xmm1, xmmword [rax]
movups xmmword [rsp + 0x338], xmm1
movups xmm2, xmmword [rax + 0x10]
movups xmmword [rsp + 0x348], xmm2
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], 0
or dword [rsp + 0x44], 4
lea r9, [rsp + 0x338]
movdqa xmm0, xmm2
psrldq xmm0, 8
movq rcx, xmm0
mov qword [rsp + 0xa8], rcx
cmp rcx, 0xf
seta byte [rsp + 0x40]
movq rax, xmm1
mov qword [rsp + 0x90], rax
cmova r9, rax
mov rdx, qword [rsp + 0x50]
mov rcx, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x140068720
mov rcx, qword [rdx]
movq qword [rsp + 0x20], xmm2
xor r8d, r8d
mov rdx, qword [rdx + 0x10]
call fcn.1400075e0
mov qword [rsp + 0x68], rax
cmp byte [rsp + 0x40], 0
je 0x14006877d
mov rdx, qword [rsp + 0xa8]
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068777
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069074
call fcn.140080efc
nop
mov rdx, qword [rsp + 0x5e8]
cmp rdx, 0xf
jbe 0x1400687c0
inc rdx
mov rcx, qword [rsp + 0x5d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400687bb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006907a
call fcn.140080efc
cmp qword [rsp + 0x68], 0xffffffffffffffff
je 0x140068c0a
mov r9, qword [rsp + 0x2c8]
mov qword [rsp + 0x68], r9
movabs r11, 0x7fffffffffffffff
mov rax, r11
sub rax, r9
cmp rax, 1
jb 0x1400690a4
lea r10, [rsp + 0x2b8]
cmp qword [rsp + 0x2d0], 0xf
cmova r10, qword [rsp + 0x2b8]
mov qword [rsp + 0xa8], r10
xorps xmm0, xmm0
movups xmmword [rsp + 0x3d8], xmm0
xor edx, edx
mov qword [rsp + 0x3e8], rdx
mov qword [rsp + 0x3f0], rdx
lea r8, [r9 + 1]
mov qword [rsp + 0x90], r8
mov ecx, reloc.OLEAUT32.dll_SafeArrayDestroy
lea rax, [rsp + 0x3d8]
mov qword [rsp + 0x60], rax
cmp r8, rcx
jbe 0x1400688fd
mov rcx, r8
or rcx, 0xf
cmp rcx, r11
jbe 0x14006887a
mov qword [rsp + 0x58], r11
movabs rcx, 0x8000000000000000
add rcx, 0x27
jmp 0x1400688a5
cmp rcx, 0x16
mov eax, SafeArrayUnaccessData
cmovb rcx, rax
mov qword [rsp + 0x58], rcx
lea rax, [rcx + 1]
cmp rax, 0x1000
jb 0x1400688de
lea rcx, [rax + 0x27]
cmp rcx, rax
jbe 0x140069080
call fcn.140080ec0
mov rcx, rax
test rax, rax
je 0x140069098
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov rcx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x68]
mov r10, qword [rsp + 0xa8]
jmp 0x1400688f0
test rax, rax
je 0x1400688ed
mov rcx, rax
call fcn.140080ec0
jmp 0x1400688c2
mov rax, rdx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x3d8], rax
mov qword [rsp + 0x3e8], r8
mov qword [rsp + 0x3f0], rcx
mov byte [rax], 0x20
lea rcx, [rax + 1]
mov r8, r9
mov rdx, r10
call fcn.1400a8810
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov byte [rax + rcx + 1], 0
or dword [rsp + 0x44], 0x80
lea rdx, [rsp + 0x298]
cmp qword [rsp + 0x2b0], 0xf
cmova rdx, qword [rsp + 0x298]
mov r8, qword [rsp + 0x2a8]
lea rcx, [rsp + 0x3d8]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x3b8], xmm0
xor ecx, ecx
mov qword [rsp + 0x3c8], rcx
mov qword [rsp + 0x3d0], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x3b8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x3c8], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], cl
or dword [rsp + 0x44], 0x40
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, 1
jb 0x14006909e
mov rax, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x1400689d9
mov rax, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 1
lea r9, [0x1400b0cec]
mov r8, rcx
movzx edx, dil
lea rcx, [rsp + 0x238]
call fcn.140008b10
or dword [rsp + 0x44], 0x10
lea rdx, [rsp + 0x298]
cmp qword [rsp + 0x2b0], 0xf
cmova rdx, qword [rsp + 0x298]
mov r8, qword [rsp + 0x2a8]
lea rcx, [rsp + 0x238]
call fcn.140028de0
xorps xmm0, xmm0
movups xmmword [rsp + 0x398], xmm0
xor ecx, ecx
mov qword [rsp + 0x3a8], rcx
mov qword [rsp + 0x3b0], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x398], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x3a8], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rax], cl
or dword [rsp + 0x44], 0x20
lea r8, [rsp + 0x3b8]
lea rdx, [rsp + 0x398]
mov rcx, qword [rsp + 0x50]
call fcn.140049db0
nop
mov rdx, qword [rsp + 0x3b0]
cmp rdx, 0xf
jbe 0x140068ae0
inc rdx
mov rcx, qword [rsp + 0x398]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068adb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069086
call fcn.140080efc
mov qword [rsp + 0x3a8], 0
mov qword [rsp + 0x3b0], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x398], 0
mov rdx, qword [rsp + 0x250]
cmp rdx, 0xf
jbe 0x140068b43
inc rdx
mov rcx, qword [rsp + 0x238]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068b3e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006908c
call fcn.140080efc
mov qword [rsp + 0x248], 0
mov qword [rsp + 0x250], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x238], 0
mov rdx, qword [rsp + 0x3d0]
cmp rdx, 0xf
jbe 0x140068ba6
inc rdx
mov rcx, qword [rsp + 0x3b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068ba1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069092
call fcn.140080efc
mov qword [rsp + 0x3c8], 0
mov qword [rsp + 0x3d0], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x3b8], 0
mov rdx, qword [rsp + 0x3f0]
cmp rdx, 0xf
jbe 0x140068c0a
inc rdx
mov rcx, qword [rsp + 0x3d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068c04
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069098
call fcn.140080efc
nop
mov rdx, qword [rsp + 0x2b0]
cmp rdx, 0xf
jbe 0x140068c4d
inc rdx
mov rcx, qword [rsp + 0x298]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068c48
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400690aa
call fcn.140080efc
mov r8, qword [rsp + 0xa0]
add r8, 0x20
mov qword [rsp + 0xa0], r8
lea rax, [rsp + 0x6d0]
cmp r8, rax
jne 0x1400684d0
lea r9, [fcn.140009b10]
mov edx, 0x20
lea r8d, [rdx - 0x1c]
lea rcx, [rsp + 0x650]
call fcn.140080df0
nop
mov rdx, qword [rsp + 0x2d0]
cmp rdx, 0xf
jbe 0x140068cd3
inc rdx
mov rcx, qword [rsp + 0x2b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068cce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400690b0
call fcn.140080efc
mov qword [rsp + 0x2c8], 0
mov qword [rsp + 0x2d0], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x2b8], 0
test rbx, rbx
je 0x140068d00
mov rcx, rbx
call fcn.140080efc
mov rcx, qword [rsp + 0x48]
add rcx, 0x30
mov qword [rsp + 0x48], rcx
cmp rcx, qword [rsp + 0x98]
jne 0x140067310
xor r14d, r14d
mov rbx, qword [rsp + 0x70]
mov rax, qword [rsp + 0xb0]
cmp rax, 0xf
jbe 0x140068e79
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068e73
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069050
jmp 0x140068e73
test rbx, rbx
je 0x140068d7b
mov rcx, rbx
call fcn.140080efc
nop
mov rax, qword [rsp + 0xb0]
cmp rax, 0xf
jbe 0x140068dbd
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068db7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006911c
call fcn.140080efc
nop
mov rdx, qword [rsp + 0x230]
cmp rdx, 0xf
jbe 0x140068e00
inc rdx
mov rcx, qword [rsp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068dfb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069122
call fcn.140080efc
mov qword [rsp + 0x228], 0
mov qword [rsp + 0x230], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x218], 0
mov rax, qword [rsp + 0x80]
cmp rax, 0xf
jbe 0x1400668fe
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068e63
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069128
call fcn.140080efc
nop
mov rcx, qword [rsp + 0x70]
jmp 0x14006901a
call fcn.140080efc
nop
mov rdx, qword [rsp + 0x230]
cmp rdx, 0xf
jbe 0x140068ebc
inc rdx
mov rcx, qword [rsp + 0x218]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068eb7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006912e
call fcn.140080efc
mov qword [rsp + 0x228], r14
mov qword [rsp + 0x230], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x218], 0
mov rax, qword [rsp + 0x80]
cmp rax, 0xf
jbe 0x140068f1d
lea rdx, [rax + 1]
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068f17
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140069134
call fcn.140080efc
nop
mov rcx, rbx
call fcn.14006ace0
mov al, 1
jmp 0x140069021
lea rcx, [rsp + 0x140]
call fcn.140009fe0
nop
lea rcx, [rsp + 0x108]
call fcn.1400286c0
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x140068f71
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x140068f71
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
nop
lea rcx, [rsp + 0x4d8]
call fcn.140009b10
nop
lea rcx, [rsp + 0x2f8]
call fcn.140009b10
nop
mov r8, qword [rsp + 0x290]
cmp r8, 0xf
jbe 0x140068fb1
mov rdx, qword [rsp + 0x278]
lea rcx, [rsp + 0x278]
call fcn.140024c50
nop
mov r8, qword [rsp + 0x230]
cmp r8, 0xf
jbe 0x140068fd4
mov rdx, qword [rsp + 0x218]
lea rcx, [rsp + 0x218]
call fcn.140024c50
mov qword [rsp + 0x228], r14
mov qword [rsp + 0x230], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x218], 0
mov rax, qword [rsp + 0x80]
cmp rax, 0xf
jbe 0x140069017
mov r8, rax
mov rdx, qword [rsp + 0x88]
lea rcx, [rsp + 0x318]
call fcn.140024c50
nop
mov rcx, rdi
call fcn.14006ace0
xor al, al
mov rcx, qword [rsp + 0x6f0]
xor rcx, rsp
call fcn.140081370
add rsp, 0x700
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028660
nop
call fcn.140087eec
nop
call fcn.140087eec
int3
call fcn.140028660
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140028d10
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140087eec
nop
call fcn.140028d10
int3