Function at 0x1802d6ed0
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5b8]
sub rsp, 0x680
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
mov rax, qword [0x18065f280]
xor rax, rsp
mov qword [rbp + 0x540], rax
mov r14, rdx
mov qword [rbp + 8], rdx
mov r15, rcx
mov qword [rbp - 0x48], rcx
mov rcx, rdx
call fcn.1802db270
mov r13, rax
mov qword [rbp - 0x58], rax
test rax, rax
je 0x1802d6fa8
mov rcx, r15
call fcn.1802d6680
mov rcx, r15
call fcn.1802d42a0
xor r12d, r12d
mov dword [rsp + 0x34], r12d
mov r9, r13
mov edx, 4
mov r8d, 1
lea rcx, [rsp + 0x34]
call fcn.180132284
cmp byte [rsp + 0x34], 0x4d
je 0x1802d6f7c
cmp byte [rsp + 0x35], 0x53
je 0x1802d6f7c
cmp byte [rsp + 0x36], 0x45
je 0x1802d6f7c
cmp byte [rsp + 0x37], 0x20
jne 0x1802d6fa0
mov dword [rbp - 0x70], r12d
mov r9, r13
mov edx, 4
mov r8d, 1
lea rcx, [rbp - 0x70]
call fcn.180132284
cmp dword [rbp - 0x70], 0xc8
jge 0x1802d6fe3
mov rcx, r13
call fcn.180135404
xor al, al
mov rcx, qword [rbp + 0x540]
xor rcx, rsp
call fcn.18011d9a0
lea r11, [rsp + 0x680]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov byte [rsp + 0x30], 1
mov r9, r13
mov edx, 1
mov r8d, edx
lea rcx, [rsp + 0x30]
call fcn.180132284
mov r8d, 0x400
mov rdx, r13
lea rcx, [rbp + 0x68]
call fcn.1802db190
lea rcx, [r15 + 0x258]
mov rdx, rax
call fcn.18001c370
lea rcx, [rbp + 0x68]
call fcn.18000c780
mov r8d, 0x400
mov rdx, r13
lea rcx, [rbp + 0x68]
call fcn.1802db190
lea rcx, [r15 + 0x278]
mov rdx, rax
call fcn.18001c370
lea rcx, [rbp + 0x68]
call fcn.18000c780
mov r9, r13
mov edx, 0x250
mov r8d, 1
lea rcx, [r15 + 8]
call fcn.180132284
mov r8d, 0x400
mov rdx, r13
lea rcx, [rbp + 0x68]
call fcn.1802db190
lea rcx, [r15 + 0x2a8]
mov rdx, rax
call fcn.18001c370
lea rcx, [rbp + 0x68]
call fcn.18000c780
mov r9, r13
mov edx, 4
mov r8d, 1
lea rcx, [r15 + 0x298]
call fcn.180132284
cmp dword [r15 + 0x298], r12d
je 0x1802d70fd
mov rcx, qword [r15 + 0x2a0]
test rcx, rcx
je 0x1802d70cb
mov edx, 1
call fcn.18011d9c0
mov qword [r15 + 0x2a0], r12
movsxd rcx, dword [r15 + 0x298]
call fcn.18011de94
mov qword [r15 + 0x2a0], rax
movsxd rdx, dword [r15 + 0x298]
mov r9, r13
mov r8d, 1
mov rcx, rax
call fcn.180132284
mov r8d, 0x3200000
mov rdx, r13
lea rcx, [rbp + 0x68]
call fcn.1802db190
lea rcx, [r15 + 0x2c8]
mov rdx, rax
call fcn.18001c370
lea rcx, [rbp + 0x68]
call fcn.18000c780
mov dword [rsp + 0x48], r12d
mov r9, r13
mov edx, 4
mov r8d, 1
lea rcx, [rsp + 0x48]
call fcn.180132284
lea rbx, [r15 + 0x360]
mov rcx, rbx
call fcn.1800dc340
mov eax, dword [rsp + 0x48]
test eax, eax
je 0x1802d71cc
mov edi, r12d
jle 0x1802d71cc
mov r8d, 0x400
mov rdx, r13
lea rcx, [rbp + 0x68]
call fcn.1802db190
nop
mov rdx, qword [rbx + 8]
cmp rdx, qword [rbx + 0x10]
je 0x1802d71af
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], r12
mov qword [rdx + 0x18], r12
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], SafeArrayGetDim
mov byte [rax], 0
add qword [rbx + 8], 0x20
jmp 0x1802d71bb
mov r8, rax
mov rcx, rbx
call fcn.1800dc5d0
nop
lea rcx, [rbp + 0x68]
call fcn.18000c780
inc edi
cmp edi, dword [rsp + 0x48]
jl 0x1802d7160
mov eax, dword [r15 + 0x14]
mov dword [r15 + 0x10], eax
mov eax, dword [r15 + 0x1c]
mov dword [r15 + 0x18], eax
mov eax, dword [r15 + 0xc]
mov dword [r15 + 8], eax
mov eax, dword [r15 + 0x24]
mov dword [r15 + 0x20], eax
mov rcx, r15
call fcn.1802d6030
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov ecx, 0x48
call fcn.18011dae8
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x4c], r12d
mov dword [rsp + 0x44], r12d
mov r9, r13
mov edx, 4
mov r8d, 1
lea rcx, [rsp + 0x44]
call fcn.180132284
mov edi, r12d
mov dword [rsp + 0x54], r12d
cmp dword [rsp + 0x44], r12d
jle 0x1802d7f80
movdqa xmm7, xmmword [0x1805cab50]
movsd xmm8, qword [0x1805ca128]
nop dword [rax]
nop dword [rax + rax]
mov r8d, 0x400
mov rdx, r13
lea rcx, [rbp + 0x68]
call fcn.1802db190
nop
lea rdx, [rbp + 0x68]
mov rcx, r15
call fcn.1802d5db0
mov rbx, rax
mov qword [rbp - 0x68], rax
mov r9, r13
mov edx, 0x244
mov r8d, 1
mov rcx, rax
call fcn.180132284
mov dword [rsp + 0x40], r12d
mov r9, r13
mov edx, 4
mov r8d, 1
lea rcx, [rsp + 0x40]
call fcn.180132284
mov dword [rsp + 0x50], r12d
cmp dword [rsp + 0x40], 0
jle 0x1802d7e92
nop dword [rax]
mov r8d, 0x400
mov rdx, r13
lea rcx, [rbp + 0x48]
call fcn.1802db190
nop
lea rax, [rbp - 0x38]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x20], r12
mov rdi, qword [r14 + 0x10]
mov rsi, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x1802d731c
mov rsi, qword [r14]
movabs r14, 0x7fffffffffffffff
cmp rdi, r14
ja 0x1802d817e
cmp rdi, 0xf
ja 0x1802d734a
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], SafeArrayGetDim
movups xmm0, xmmword [rsi]
movups xmmword [rbp - 0x38], xmm0
jmp 0x1802d738d
mov rbx, rdi
or rbx, 0xf
cmp rbx, r14
jbe 0x1802d735b
mov rbx, r14
jmp 0x1802d7368
cmp rbx, 0x16
mov eax, SafeArrayGetElement
cmovb rbx, rax
lea rcx, [rbx + 1]
call fcn.18000a1b0
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call fcn.18037edb0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], r12
mov qword [rbp], r12
mov rdi, qword [rbp + 0x58]
lea rsi, [rbp + 0x48]
cmp qword [rbp + 0x60], 0xf
cmova rsi, qword [rbp + 0x48]
cmp rdi, r14
ja 0x1802d8178
cmp rdi, 0xf
ja 0x1802d73d2
mov qword [rbp - 8], rdi
mov qword [rbp], SafeArrayGetDim
movups xmm0, xmmword [rsi]
movups xmmword [rbp - 0x18], xmm0
jmp 0x1802d7415
mov rbx, rdi
or rbx, 0xf
cmp rbx, r14
jbe 0x1802d73e3
mov rbx, r14
jmp 0x1802d73f0
cmp rbx, 0x16
mov eax, SafeArrayGetElement
cmovb rbx, rax
lea rcx, [rbx + 1]
call fcn.18000a1b0
mov qword [rbp - 0x18], rax
mov qword [rbp - 8], rdi
mov qword [rbp], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call fcn.18037edb0
nop
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x88]
call fcn.1802da860
nop
cmp byte [rsp + 0x30], 0
je 0x1802d794c
mov qword [rbp - 0x60], r12
lea rdx, [rbp - 0x60]
mov rcx, r13
call fcn.18013549c
mov r15, qword [rbp - 0x60]
mov qword [rsp + 0x70], r15
mov qword [rbp - 0x50], r15
mov rsi, qword [rsp + 0x58]
mov qword [rsp + 0x38], rsi
mov r12, qword [rbp + 0x60]
mov r13, qword [rbp + 0x48]
mov r14, qword [rbp + 0x58]
test r14, r14
je 0x1802d7676
mov rdi, qword [rsi + 8]
mov r15, rsi
mov rbx, rdi
cmp byte [rdi + 0x19], 0
jne 0x1802d74d7
nop dword [rax]
nop word [rax + rax]
lea rcx, [rbx + 0x20]
lea rdx, [rbp + 0x48]
cmp r12, 0xf
cmova rdx, r13
mov rsi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x1802d74ae
mov rcx, qword [rcx]
mov r8, rsi
cmp r14, rsi
cmovb r8, r14
call fcn.18037f7f0
test eax, eax
jne 0x1802d7516
cmp rsi, r14
jb 0x1802d7518
mov r15, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x1802d7490
mov rsi, qword [rsp + 0x38]
cmp byte [r15 + 0x19], 0
jne 0x1802d7520
lea rdx, [r15 + 0x20]
mov rbx, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1802d74f0
mov rdx, qword [rdx]
lea rcx, [rbp + 0x48]
cmp r12, 0xf
cmova rcx, r13
mov r8, r14
cmp rbx, r14
cmovb r8, rbx
call fcn.18037f7f0
test eax, eax
jne 0x1802d751e
cmp r14, rbx
jb 0x1802d7520
jmp 0x1802d7523
jns 0x1802d74c6
mov rbx, qword [rbx + 0x10]
jmp 0x1802d74cc
jns 0x1802d7523
mov r15, rsi
cmp r15, rsi
je 0x1802d7671
mov qword [rsp + 0x70], rdi
xor r15d, r15d
mov dword [rsp + 0x78], r15d
cmp byte [rdi + 0x19], r15b
jne 0x1802d758f
nop
mov qword [rsp + 0x70], rdi
lea rcx, [rdi + 0x20]
lea rdx, [rbp + 0x48]
cmp r12, 0xf
cmova rdx, r13
mov rbx, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x1802d7563
mov rcx, qword [rcx]
mov r8, rbx
cmp r14, rbx
cmovb r8, r14
call fcn.18037f7f0
test eax, eax
jne 0x1802d75d0
cmp rbx, r14
jb 0x1802d75d2
mov dword [rsp + 0x78], 1
mov rsi, rdi
mov rdi, qword [rdi]
cmp byte [rdi + 0x19], r15b
je 0x1802d7540
cmp byte [rsi + 0x19], r15b
jne 0x1802d75df
lea rdx, [rsi + 0x20]
mov rbx, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1802d75a7
mov rdx, qword [rdx]
lea rcx, [rbp + 0x48]
cmp r12, 0xf
cmova rcx, r13
mov r8, r14
cmp rbx, r14
cmovb r8, rbx
call fcn.18037f7f0
test eax, eax
jne 0x1802d75dd
cmp r14, rbx
jb 0x1802d75df
jmp 0x1802d765c
jns 0x1802d757b
mov dword [rsp + 0x78], r15d
mov rdi, qword [rdi + 0x10]
jmp 0x1802d7589
jns 0x1802d765c
movabs rax, 0x38e38e38e38e38e
cmp qword [rsp + 0x60], rax
je 0x1802d8154
lea rax, [rsp + 0x58]
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], r15
mov ecx, 0x48
call fcn.18011dae8
mov rdi, rax
mov qword [rbp + 0x18], rax
lea rdx, [rbp + 0x48]
lea rcx, [rax + 0x20]
call fcn.180019c00
mov qword [rdi + 0x40], r15
mov rax, qword [rsp + 0x38]
mov qword [rdi], rax
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov word [rdi + 0x18], 0
mov qword [rbp + 0x18], r15
movups xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x70], xmm0
mov r8, rdi
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x58]
call fcn.18000a430
mov rsi, rax
mov rax, qword [rsi + 0x40]
mov qword [rbp - 0x60], rax
mov r15, qword [rbp - 0x48]
mov r13, qword [rbp - 0x58]
jmp 0x1802d781c
mov r15, qword [rsp + 0x70]
mov rbx, qword [rsi + 8]
mov qword [rsp + 0x70], rbx
mov dword [rsp + 0x78], 0
cmp byte [rbx + 0x19], 0
jne 0x1802d76df
nop dword [rax]
mov qword [rsp + 0x70], rbx
lea rcx, [rbx + 0x20]
lea rdx, [rbp + 0x48]
cmp r12, 0xf
cmova rdx, r13
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x1802d76b3
mov rcx, qword [rcx]
mov r8, rdi
cmp r14, rdi
cmovb r8, r14
call fcn.18037f7f0
test eax, eax
jne 0x1802d7720
cmp rdi, r14
jb 0x1802d7722
mov dword [rsp + 0x78], 1
mov rsi, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x1802d7690
cmp byte [rsi + 0x19], 0
jne 0x1802d7732
lea rdx, [rsi + 0x20]
mov rbx, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1802d76f7
mov rdx, qword [rdx]
lea rcx, [rbp + 0x48]
cmp r12, 0xf
cmova rcx, r13
mov r8, r14
cmp rbx, r14
cmovb r8, rbx
call fcn.18037f7f0
test eax, eax
jne 0x1802d7730
cmp r14, rbx
jb 0x1802d7732
jmp 0x1802d77af
jns 0x1802d76cb
mov dword [rsp + 0x78], 0
mov rbx, qword [rbx + 0x10]
jmp 0x1802d76d9
jns 0x1802d77af
movabs rax, 0x38e38e38e38e38e
cmp qword [rsp + 0x60], rax
je 0x1802d8160
lea rax, [rsp + 0x58]
mov qword [rbp + 0x20], rax
xor esi, esi
mov qword [rbp + 0x28], rsi
mov ecx, 0x48
call fcn.18011dae8
mov rdi, rax
mov qword [rbp + 0x28], rax
lea rdx, [rbp + 0x48]
lea rcx, [rax + 0x20]
call fcn.180019c00
mov qword [rdi + 0x40], rsi
mov rax, qword [rsp + 0x38]
mov qword [rdi], rax
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rax
mov word [rdi + 0x18], si
mov qword [rbp + 0x28], rsi
movups xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x70], xmm0
mov r8, rdi
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x58]
call fcn.18000a430
mov rsi, rax
mov qword [rsi + 0x40], r15
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0xc8], xmm0
mov qword [rbp + 0xd8], rax
mov r13, qword [rbp - 0x58]
mov r9, r13
mov edx, reloc.OLEAUT32.dll_SafeArrayGetElement
mov r8d, 1
lea rcx, [rbp + 0xc8]
call fcn.180132284
mov ecx, 4
mov r15, qword [rbp - 0x48]
cmp dword [r15 + 0x10], 0
mov eax, 2
cmovne ecx, eax
movsxd rax, dword [rbp + 0xd0]
imul rcx, rax
imul rcx, qword [rbp + 0xd8]
mov rax, qword [rbp - 0x50]
add rax, 0x18
add rcx, rax
mov qword [rbp - 0x50], rcx
xorps xmm0, xmm0
movups xmmword [rbp + 0xa8], xmm0
xor r12d, r12d
mov qword [rbp + 0xb8], r12
mov qword [rbp + 0xc0], SafeArrayGetDim
mov byte [rbp + 0xa8], r12b
mov ecx, 0x5dec0
call fcn.18011dae8
mov rdi, rax
mov qword [rbp + 0x30], rax
mov rbx, qword [rbp - 0x60]
mov qword [rax + 0xc], r12
mov qword [rax + 4], r12
mov qword [rax + 0x280], r15
mov qword [rax + 0x288], r12
xor edx, edx
mov r8d, 0x260
mov rcx, rax
call fcn.18037f450
mov qword [rdi + 0x2a0], r12
mov qword [rdi + 0x2b8], r12
mov qword [rdi + 0x2b0], r12
mov byte [rdi + 0x290], r12b
mov qword [rdi + 0x298], r12
mov rcx, qword [rdi + 0x280]
cmp dword [rcx + 0x18], r12d
setne al
mov byte [rdi + 0x2a9], al
mov eax, dword [rcx + 8]
mov dword [rdi + 0x2ac], eax
cmp dword [rcx + 0x10], r12d
setne al
mov byte [rdi + 0x2aa], al
mov r9, rbx
mov r8, r13
lea rdx, [rbp + 0xa8]
mov rcx, rdi
call fcn.1802fd000
nop
lea rdx, [rbp - 0x50]
mov rcx, r13
call fcn.1801354e8
nop
mov rdx, qword [rbp + 0xc0]
cmp rdx, 0xf
jbe 0x1802d792e
inc rdx
mov rcx, qword [rbp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802d7929
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1802d815a
call fcn.18011d9c0
mov qword [rbp + 0xb8], r12
mov qword [rbp + 0xc0], SafeArrayGetDim
mov byte [rbp + 0xa8], 0
jmp 0x1802d7b28
cmp dword [r15 + 0x18], 0
je 0x1802d7a86
cmp dword [0x180680044], 0x3e8
jle 0x1802d7a86
call qword [sym.imp.WINMM.dll_timeGetTime]
mov eax, eax
xorps xmm6, xmm6
cvtsi2sd xmm6, rax
mov r14d, dword [0x180680044]
add r14d, 0xfffffc18
mov r13d, r12d
mov rdx, qword [r15 + 0x2e8]
mov rax, qword [r15 + 0x2f0]
sub rax, rdx
sar rax, 3
test rax, rax
je 0x1802d7a82
mov r8, r12
mov qword [rsp + 0x38], r12
nop
mov r15, qword [rdx + r8]
mov esi, r12d
mov rdi, r12
mov rcx, qword [r15 + 0x270]
mov rdx, qword [r15 + 0x268]
mov rax, rcx
sub rax, rdx
sar rax, 3
test eax, eax
jle 0x1802d7a51
test rdi, rdi
js 0x1802d79ec
sub rcx, rdx
sar rcx, 3
cmp esi, ecx
jge 0x1802d79ec
mov rbx, qword [rdx + rdi*8]
jmp 0x1802d79ef
mov rbx, r12
movsd xmm0, qword [rbx + 0x298]
subsd xmm0, xmm6
andps xmm0, xmm7
comisd xmm0, xmm8
jbe 0x1802d7a26
mov rcx, qword [rbx + 0x2a0]
mov rax, qword [rcx]
call qword [rax + 0x40]
test al, al
je 0x1802d7a26
mov rcx, qword [rbx + 0x2a0]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
dec r14d
test r14d, r14d
jle 0x1802d7a4c
inc esi
inc rdi
mov rcx, qword [r15 + 0x270]
mov rdx, qword [r15 + 0x268]
mov rax, rcx
sub rax, rdx
sar rax, 3
cmp esi, eax
jl 0x1802d79d6
mov r8, qword [rsp + 0x38]
inc r13d
add r8, 8
mov qword [rsp + 0x38], r8
mov r15, qword [rbp - 0x48]
mov rdx, qword [r15 + 0x2e8]
mov rcx, qword [r15 + 0x2f0]
sub rcx, rdx
sar rcx, 3
movsxd rax, r13d
cmp rax, rcx
jb 0x1802d79b0
mov r13, qword [rbp - 0x58]
mov ecx, 0x5dec0
call fcn.18011dae8
mov rdi, rax
mov qword [rbp + 0x38], rax
mov qword [rax + 0xc], 0
mov qword [rax + 4], 0
mov qword [rax + 0x280], r15
mov qword [rax + 0x288], r12
xor edx, edx
mov r8d, 0x260
mov rcx, rax
call fcn.18037f450
mov qword [rdi + 0x2a0], r12
mov qword [rdi + 0x2b8], r12
mov qword [rdi + 0x2b0], r12
mov byte [rdi + 0x290], 0
mov qword [rdi + 0x298], r12
mov rcx, qword [rdi + 0x280]
cmp dword [rcx + 0x18], 0
setne al
mov byte [rdi + 0x2a9], al
mov eax, dword [rcx + 8]
mov dword [rdi + 0x2ac], eax
cmp dword [rcx + 0x10], 0
setne al
mov byte [rdi + 0x2aa], al
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x88]
mov rcx, rdi
call fcn.1802fd000
nop
mov rcx, qword [r15 + 0x8b0]
test rcx, rcx
je 0x1802d7b7d
mov rax, qword [rcx]
movd xmm2, dword [rsp + 0x44]
cvtdq2ps xmm2, xmm2
movd xmm1, dword [rsp + 0x50]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [rsp + 0x40]
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
divss xmm1, xmm2
movd xmm0, dword [rsp + 0x54]
cvtdq2ps xmm0, xmm0
divss xmm0, xmm2
addss xmm1, xmm0
lea r9, [rbp + 0x48]
lea r8, [rbp + 0x68]
call qword [rax]
test al, al
je 0x1802d7fc8
cmp byte [rdi + 0x290], 0
je 0x1802d7bdb
mov r9, r13
mov edx, 0x260
mov r8d, 1
mov rcx, rdi
call fcn.180132284
mov qword [rbp - 0x40], r12
lea rdx, [rbp - 0x40]
mov rcx, r13
call fcn.18013549c
mov rcx, rdi
call fcn.1802fd530
cmp byte [rsp + 0x30], 0
je 0x1802d7bc7
lea rdx, [rbp - 0x40]
mov rcx, r13
call fcn.1801354e8
mov rdx, rdi
mov rbx, qword [rbp - 0x68]
mov rcx, rbx
call fcn.1802eb6a0
jmp 0x1802d7ddd
mov rsi, qword [rdi + 0x280]
mov r14d, r12d
mov rcx, qword [rsi + 0x300]
mov rax, qword [rsi + 0x308]
sub rax, rcx
sar rax, 3
test eax, eax
jle 0x1802d7c41
mov rbx, r12
mov rcx, qword [rcx + rbx]
mov rax, qword [rcx]
call qword [rax + 0x20]
test al, al
je 0x1802d7c20
mov rax, qword [rsi + 0x300]
mov rcx, qword [rbx + rax]
mov rax, qword [rcx]
call qword [rax + 0x40]
inc r14d
add rbx, 8
mov rcx, qword [rsi + 0x300]
mov rax, qword [rsi + 0x308]
sub rax, rcx
sar rax, 3
cmp r14d, eax
jl 0x1802d7c01
mov rcx, qword [rdi + 0x2a0]
test rcx, rcx
je 0x1802d7c57
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rcx, qword [rdi + 0x2b8]
test rcx, rcx
je 0x1802d7c6d
mov edx, 2
call fcn.18011d9c0
mov rcx, qword [rdi + 0x2b0]
test rcx, rcx
je 0x1802d7c84
mov edx, 4
call fcn.18011d9c0
nop
mov edx, 0x5dec0
mov rcx, rdi
call fcn.18011d9c0
mov qword [rbp + 0xec], 0
mov qword [rbp + 0xe4], 0
mov rbx, qword [r15 + 0x8b0]
test rbx, rbx
je 0x1802d7dbf
mov edi, dword [rsp + 0x4c]
cmp edi, 3
jge 0x1802d7dbf
xor edx, edx
mov r8d, 0x200
lea rcx, [rbp + 0x340]
call fcn.18037f450
mov rax, qword [rbx]
lea r8, [rbp + 0x340]
lea rdx, [rbp + 0x88]
mov rcx, rbx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rax, [rbp + 0x340]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1802d7d00
test r8, r8
je 0x1802d7d9d
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0x88]
call fcn.1800dc420
mov ecx, 0x5dec0
call fcn.18011dae8
mov qword [rbp + 0x40], rax
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp + 0x88]
mov rdx, r15
mov rcx, rax
call fcn.1802fd790
mov rbx, rax
mov r9, r13
mov edx, 0x260
mov r8d, 1
cmp byte [rax + 0x290], 0
je 0x1802d7d81
mov rcx, rax
call fcn.180132284
mov rdx, rbx
mov rbx, qword [rbp - 0x68]
mov rcx, rbx
call fcn.1802eb6a0
jmp 0x1802d7ddd
lea rcx, [rbp + 0xe0]
call fcn.180132284
mov rcx, rbx
call fcn.1800dc250
inc edi
mov dword [rsp + 0x4c], edi
jmp 0x1802d7dd9
mov r9, r13
mov edx, 0x260
mov r8d, 1
lea rcx, [rbp + 0xe0]
call fcn.180132284
inc edi
mov dword [rsp + 0x4c], edi
jmp 0x1802d7dd9
mov r9, r13
mov edx, 0x260
mov r8d, 1
lea rcx, [rbp + 0xe0]
call fcn.180132284
mov rbx, qword [rbp - 0x68]
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0xf
jbe 0x1802d7e1e
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802d7e19
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1802d816c
call fcn.18011d9c0
mov qword [rbp + 0x98], r12
mov qword [rbp + 0xa0], SafeArrayGetDim
mov byte [rbp + 0x88], 0
mov rdx, qword [rbp + 0x60]
cmp rdx, 0xf
jbe 0x1802d7e72
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802d7e6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1802d8172
call fcn.18011d9c0
mov r14d, dword [rsp + 0x50]
inc r14d
mov dword [rsp + 0x50], r14d
cmp r14d, dword [rsp + 0x40]
mov r14, qword [rbp + 8]
jl 0x1802d72e0
mov edi, dword [rsp + 0x54]
mov rcx, rbx
call fcn.1802eba10
cmp dword [rbx + 0x58], 1
jne 0x1802d7f32
mov qword [rsp + 0x38], rbx
mov r9d, r12d
mov r10, qword [r15 + 0x350]
mov r11, qword [r15 + 0x348]
mov rax, r10
sub rax, r11
sar rax, 3
test eax, eax
jle 0x1802d7eef
mov r8, r12
mov rcx, r10
nop
mov r10, rcx
cmp qword [r11 + r8], rbx
je 0x1802d7f32
inc r9d
add r8, 8
mov rax, rcx
sub rax, r11
sar rax, 3
cmp r9d, eax
jl 0x1802d7ed0
lea rcx, [r15 + 0x348]
cmp r10, qword [rcx + 0x10]
je 0x1802d7f06
mov qword [r10], rbx
add qword [rcx + 8], 8
jmp 0x1802d7f18
lea r8, [rsp + 0x38]
mov rdx, r10
call fcn.180022280
mov rbx, qword [rsp + 0x38]
mov dword [rbx + 0x58], 1
mov rcx, qword [r15 + 0x8b0]
test rcx, rcx
je 0x1802d7f32
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
mov rdx, qword [rbp + 0x80]
cmp rdx, 0xf
jbe 0x1802d7f70
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802d7f6b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1802d814e
call fcn.18011d9c0
inc edi
mov dword [rsp + 0x54], edi
cmp edi, dword [rsp + 0x44]
jl 0x1802d7270
cmp byte [rsp + 0x30], 0
jne 0x1802d7f8f
mov rcx, r13
call fcn.180135404
mov rax, qword [r15 + 0x350]
cmp rax, qword [r15 + 0x348]
jne 0x1802d80c4
mov rdx, qword [r15 + 0x2e8]
mov rax, qword [r15 + 0x2f0]
sub rax, rdx
sar rax, 3
test eax, eax
jle 0x1802d80b9
mov rdx, qword [rdx]
jmp 0x1802d80bc
mov rcx, r13
call fcn.180135404
nop
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0xf
jbe 0x1802d8012
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802d800d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1802d816c
call fcn.18011d9c0
mov qword [rbp + 0x98], r12
mov qword [rbp + 0xa0], SafeArrayGetDim
mov byte [rbp + 0x88], 0
mov rdx, qword [rbp + 0x60]
cmp rdx, 0xf
jbe 0x1802d8066
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802d8061
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1802d8172
call fcn.18011d9c0
mov qword [rbp + 0x58], r12
mov qword [rbp + 0x60], SafeArrayGetDim
mov byte [rbp + 0x48], 0
mov rdx, qword [rbp + 0x80]
cmp rdx, 0xf
jbe 0x1802d80b4
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1802d80af
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1802d8166
call fcn.18011d9c0
xor sil, sil
jmp 0x1802d80f2
mov rdx, r12
mov rcx, r15
call fcn.1802d8470
mov rcx, qword [r15 + 0x2e8]
mov rax, qword [r15 + 0x2f0]
sub rax, rcx
sar rax, 3
test eax, eax
jle 0x1802d80e0
mov r12, qword [rcx]
mov qword [r15 + 0x888], r12
mov rcx, r15
call fcn.1802d6ae0
mov sil, 1
mov rcx, qword [rsp + 0x58]
mov rdi, qword [rcx + 8]
cmp byte [rdi + 0x19], 0
jne 0x1802d813b
mov r8, qword [rdi + 0x10]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x58]
call fcn.1800dc550
mov rbx, rdi
mov rdi, qword [rdi]
lea rcx, [rbx + 0x20]
call fcn.18000c780
mov edx, 0x48
mov rcx, rbx
call fcn.18011d9c0
cmp byte [rdi + 0x19], 0
je 0x1802d8101
mov rcx, qword [rsp + 0x58]
mov edx, 0x48
call fcn.18011d9c0
movzx eax, sil
jmp 0x1802d6faa
call fcn.180124488
nop
call fcn.1800035b0
int3
call fcn.180124488
int3
call fcn.1800035b0
nop
call fcn.180124488
nop
call fcn.180124488
nop
call fcn.180124488
nop
call fcn.18000a980
nop
call fcn.18000a980
int3