Function at 0x1400993a0
Capabilities:
Check http status code

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x70
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x90], rbx
mov rbp, rcx
xor esi, esi
test edx, edx
setne sil
mov edi, 1
mov dword [rsp + 0x20], edi
mov r9d, edi
mov r8d, esi
lea rdx, [0x14018b7b8]
call fcn.14008d5c0
test eax, eax
je 0x14009590e
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xa0], 0
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
mov r8d, edi
xor edx, edx
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400957b6
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140095861
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140095861
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x20], rdx
lea r9, [0x14018b7b8]
mov r8d, edi
mov rdx, qword [rbp + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x1400957f5
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140095861
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140095861
cmp word [rsp + 0x38], 0x13
je 0x14009581e
lea rcx, [rsp + 0x38]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140095861
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140095861
mov ebx, dword [rsp + 0x40]
lea rcx, [rsp + 0x38]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140095841
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp ebx, esi
jne 0x140095861
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x14009590c
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009590c
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
mov r8d, edi
xor edx, edx
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400958a2
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x14009589e
mov rax, qword [rcx]
call qword [rax + 0x10]
xor edi, edi
jmp 0x14009590c
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov word [rsp + 0x50], 0x13
mov dword [rsp + 0x58], esi
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rcx]
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x20], rdx
lea r9, [0x14018b7b8]
mov r8d, edi
mov rdx, qword [rbp + 0x10]
call qword [rax + 0x58]
mov ebx, eax
lea rcx, [rsp + 0x50]
call qword [sym.imp.ole32.dll_PropVariantClear]
xor edi, edi
test ebx, ebx
setns dil
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x14009590c
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov eax, edi
mov rbx, qword [rsp + 0x90]
add rsp, 0x70
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x40
mov rax, qword [0x1401ea158]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rax, qword [0x14018b7d0]
mov rbx, rcx
lea rcx, [rsp + 0x20]
mov qword [rcx], rax
mov rax, qword [0x14018b7d8]
mov edi, edx
mov qword [rcx + 8], rax
mov eax, dword [reloc.DSOUND.dll_DirectSoundCreate]
mov r9d, 1
mov dword [rcx + 0x10], eax
mov eax, dword [rbx + 0x3c]
mov r8d, edi
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
mov rcx, rbx
imul edx, edx, 0x3e8
add dword [rsp + 0x30], edx
lea rdx, [rsp + 0x20]
call fcn.140054e50
test eax, eax
je 0x140095b29
lea rdx, [0x14018b7d0]
mov r9d, 1
mov r8d, edi
mov rcx, rbx
call fcn.140054e50
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.140144dc0
mov rbx, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
push rbp
push rsi
push rdi
sub rsp, 0x70
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x90], rbx
mov esi, edx
mov rbp, rcx
mov edi, 1
mov dword [rsp + 0x20], edi
mov r9d, edi
mov r8d, edx
lea rdx, [0x14018b7e8]
call fcn.14008d5c0
test eax, eax
je 0x140095e98
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xa0], 0
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
mov r8d, edi
xor edx, edx
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140095d40
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140095deb
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140095deb
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x20], rdx
lea r9, [0x14018b7e8]
mov r8d, edi
mov rdx, qword [rbp + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x140095d7f
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140095deb
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140095deb
cmp word [rsp + 0x38], 0x13
je 0x140095da8
lea rcx, [rsp + 0x38]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140095deb
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140095deb
mov ebx, dword [rsp + 0x40]
lea rcx, [rsp + 0x38]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140095dcb
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp ebx, esi
jne 0x140095deb
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x140095e96
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140095e96
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
mov r8d, edi
xor edx, edx
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140095e2c
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x140095e28
mov rax, qword [rcx]
call qword [rax + 0x10]
xor edi, edi
jmp 0x140095e96
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov word [rsp + 0x50], 0x13
mov dword [rsp + 0x58], esi
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rcx]
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x20], rdx
lea r9, [0x14018b7e8]
mov r8d, edi
mov rdx, qword [rbp + 0x10]
call qword [rax + 0x58]
mov ebx, eax
lea rcx, [rsp + 0x50]
call qword [sym.imp.ole32.dll_PropVariantClear]
xor edi, edi
test ebx, ebx
setns dil
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x140095e96
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov eax, edi
mov rbx, qword [rsp + 0x90]
add rsp, 0x70
pop rdi
pop rsi
pop rbp
ret
mov rax, rsp
push rdi
push r12
push r13
sub rsp, 0xa0
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x1401ea158]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov ebp, r8d
mov edi, edx
mov rbx, rcx
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x14009a91e
cmp dword [rax + 0x1d0], 8
jne 0x1400993fb
xor eax, eax
jmp 0x14009a91e
call fcn.14008d9e0
mov rcx, rbx
call fcn.140096250
mov dword [rbx + 0x3c], eax
xor r12d, r12d
mov dword [rsp + 0x38], r12d
lea r13, [0x140000000]
test edi, edi
je 0x14009a5c7
mov rax, qword [rbx + 0x20]
bt dword [rax + 0x314], 0xf
jb 0x14009a5c7
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b908]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b910]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b918]
mov dword [rcx + 0x10], eax
lea r9d, [r12 + 1]
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, r12d
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], r12d
je 0x1400994c7
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140099517
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099575
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099575
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x140099551
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099575
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099575
cmp word [rsp + 0x40], 0x13
je 0x14009957a
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099575
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, r12d
jmp 0x14009959a
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009959a
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x1400995b4
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b920]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b928]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b930]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
test eax, eax
je 0x1400995fd
mov esi, dword [rsp + 0x38]
cmp esi, 0xa
jbe 0x140099605
mov esi, r12d
mov dword [rsp + 0x38], r12d
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x14009964f
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400996a6
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009972b
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009972b
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x1400996e0
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009972b
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009972b
cmp word [rsp + 0x40], 0x13
je 0x140099706
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009972b
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009972b
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099726
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0xa
jbe 0x14009972e
mov edi, r12d
cmp esi, edi
je 0x140099748
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b800]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b808]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b810]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, r12d
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x1400997dc
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x14009982c
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009988a
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009988a
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x140099866
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009988a
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009988a
cmp word [rsp + 0x40], 0x13
je 0x14009988f
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009988a
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, r12d
jmp 0x1400998af
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400998af
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x1400998c9
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b818]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b820]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b828]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
test eax, eax
je 0x140099916
mov ecx, dword [rsp + 0x38]
test ecx, ecx
je 0x14009991d
cmp ecx, 1
je 0x14009991d
mov ecx, r12d
mov dword [rsp + 0x38], ecx
mov rax, qword [rbx + 0x20]
cmp dword [rax + 0x1d0], 3
je 0x140099935
cmp dword [rbx + 0x38], 3
je 0x140099935
mov r8d, r12d
jmp 0x14009993b
mov r8d, 1
cmp ecx, r8d
je 0x140099953
mov r9d, 1
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b830]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b838]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b840]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
test eax, eax
je 0x14009999c
mov esi, dword [rsp + 0x38]
cmp esi, 0xa
jbe 0x1400999a4
mov esi, r12d
mov dword [rsp + 0x38], r12d
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x1400999ee
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140099a45
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099aca
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099aca
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x140099a7f
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099aca
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099aca
cmp word [rsp + 0x40], 0x13
je 0x140099aa5
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099aca
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099aca
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099ac5
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0xa
jbe 0x140099acd
mov edi, r12d
cmp esi, edi
je 0x140099ae7
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b848]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b850]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b858]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
test eax, eax
je 0x140099b35
mov esi, dword [rsp + 0x38]
cmp esi, 0x1e
ja 0x140099b35
cmp esi, 5
jae 0x140099b3e
mov esi, reloc.OLEAUT32.dll_SafeArrayDestroy
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x140099b88
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140099bdf
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099c69
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099c69
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x140099c19
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099c69
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099c69
cmp word [rsp + 0x40], 0x13
je 0x140099c3f
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099c69
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099c69
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099c5f
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0x1e
ja 0x140099c69
cmp edi, 5
jae 0x140099c6e
mov edi, reloc.OLEAUT32.dll_SafeArrayDestroy
cmp esi, edi
je 0x140099c88
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b860]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b868]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b870]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, r12d
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x140099d1c
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140099d6c
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099dca
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099dca
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x140099da6
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099dca
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099dca
cmp word [rsp + 0x40], 0x13
je 0x140099dcf
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099dca
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, r12d
jmp 0x140099def
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099def
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x140099e09
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b878]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b880]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b888]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, r12d
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x140099e9d
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140099eed
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099f4b
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099f4b
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x140099f27
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099f4b
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x140099f4b
cmp word [rsp + 0x40], 0x13
je 0x140099f50
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099f4b
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, r12d
jmp 0x140099f70
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140099f70
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x140099f8a
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b8a8]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b8b0]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b8b8]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, r12d
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x14009a01e
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x14009a06e
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a0cc
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a0cc
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x14009a0a8
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a0cc
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a0cc
cmp word [rsp + 0x40], 0x13
je 0x14009a0d1
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a0cc
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, r12d
jmp 0x14009a0f1
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a0f1
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x14009a10b
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b8c0]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b8c8]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b8d0]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
test eax, eax
je 0x14009a154
mov esi, dword [rsp + 0x38]
cmp esi, 0xa
jbe 0x14009a15c
mov esi, r12d
mov dword [rsp + 0x38], r12d
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x14009a1a6
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x14009a1fd
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a282
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a282
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x14009a237
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a282
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a282
cmp word [rsp + 0x40], 0x13
je 0x14009a25d
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a282
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a282
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a27d
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0xa
jbe 0x14009a285
mov edi, r12d
cmp esi, edi
je 0x14009a29f
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b8d8]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b8e0]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b8e8]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
test eax, eax
je 0x14009a2f0
mov esi, dword [rsp + 0x38]
cmp esi, 0x190
ja 0x14009a2f0
cmp esi, 0x32
jae 0x14009a2f9
mov esi, 0x64
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x14009a343
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x14009a39a
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a427
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a427
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x14009a3d4
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a427
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a427
cmp word [rsp + 0x40], 0x13
je 0x14009a3fa
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a427
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a427
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a41a
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0x190
ja 0x14009a427
cmp edi, 0x32
jae 0x14009a42c
mov edi, 0x64
cmp esi, edi
je 0x14009a446
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b8f0]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b8f8]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b900]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, r12d
mov dword [rsp + 0x38], esi
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x14009a4da
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x14009a52a
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a588
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a588
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x14009a564
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a588
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a588
cmp word [rsp + 0x40], 0x13
je 0x14009a58d
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a588
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, r12d
jmp 0x14009a5ad
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a5ad
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x14009a5c7
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
test ebp, ebp
je 0x14009a919
mov rax, qword [rbx + 0x20]
test byte [rax + 0x316], 1
jne 0x14009a919
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b788]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b790]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b798]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, r12d
mov dword [rsp + 0x38], esi
mov rax, qword [rbx + 0x20]
cmp dword [rax + 0x1d0], 1
jne 0x14009a761
cmp dword [rbx + 0x38], 1
jne 0x14009a761
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rsp + 0x70]
add ecx, 0x3e8
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x14009a68c
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x14009a6dc
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a73a
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a73a
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x14009a716
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a73a
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a73a
cmp word [rsp + 0x40], 0x13
je 0x14009a73f
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a73a
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, r12d
jmp 0x14009a764
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a764
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a764
mov edi, r12d
cmp esi, edi
je 0x14009a77e
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
lea rcx, [rsp + 0x60]
mov rax, qword [r13 + 0x18b7a0]
mov qword [rcx], rax
mov rax, qword [r13 + 0x18b7a8]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0x18b7b0]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140053f70
test eax, eax
je 0x14009a7cc
mov esi, dword [rsp + 0x38]
cmp esi, 0xa
ja 0x14009a7cc
cmp esi, 4
jae 0x14009a7cf
mov esi, r12d
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
mov ecx, dword [rbx + 0x38]
imul ecx, ecx, 0x3e8
add ecx, dword [rsp + 0x70]
mov dword [rsp + 0x88], ecx
cmp dword [rbx + 0x40], 0
je 0x14009a819
mov eax, dword [rbx + 0x3c]
imul eax, eax, 0x2710
add ecx, eax
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], r12
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140189a60]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x140189a50]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x14009a870
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a8fa
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a8fa
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x78]
mov r8d, 1
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x50]
test eax, eax
jns 0x14009a8aa
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a8fa
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a8fa
cmp word [rsp + 0x40], 0x13
je 0x14009a8d0
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a8fa
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x14009a8fa
mov edi, dword [rsp + 0x48]
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14009a8f0
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0xa
ja 0x14009a8fa
cmp edi, 4
jae 0x14009a8ff
mov edi, 7
cmp esi, edi
je 0x14009a919
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400540d0
mov eax, 1
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140144dc0
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
cmp edx, 0x21190230
mov esi, r9d
mov edi, r8d
mov rbx, rcx
ja 0x14009d16d
je 0x14009d152
cmp edx, 0x21190113
ja 0x14009d085
je 0x14009d06d
sub edx, 0x21190003
je 0x14009d025
sub edx, 1
je 0x14009cff5
sub edx, 0x10c
je 0x14009cfda
sub edx, 1
je 0x14009cfbe
cmp edx, 1
jne 0x14009d27e
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.1400a01e0
lea edx, [r8 + 1]
add rcx, 0xffffffffffffffb0
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.14009fcf0
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140092ae0
add rcx, 0xffffffffffffffb0
mov edx, r8d
call fcn.140096700
mov r11, qword [rbx]
mov r9d, esi
mov r8d, edi
mov edx, 0x21190003
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp qword [r11 + 0x28]
mov edx, r8d
add rcx, 0xffffffffffffffb0
call fcn.1400964a0
test eax, eax
je 0x14009d059
lea rcx, [rbx - 0x50]
call fcn.140090300
test eax, eax
je 0x14009d059
mov esi, 1
mov eax, esi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
xor esi, esi
mov eax, esi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
add rcx, 0xffffffffffffffb0
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x1400a0410
sub edx, 0x21190210
je 0x14009d137
sub edx, 1
je 0x14009d0da
sub edx, 0xf
je 0x14009d0bf
cmp edx, 1
jne 0x14009d27e
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.1400931f0
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140092e60
xor esi, esi
cmp r8d, 1
sete sil
cmp dword [rcx - 0xc], 0
mov edx, esi
je 0x14009d11c
add rcx, 0xffffffffffffffb0
call fcn.140096020
mov esi, 1
lea rcx, [rbx - 0x50]
mov r8d, esi
mov edx, esi
mov edi, eax
call fcn.14009aaf0
mov eax, edi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
add rcx, 0xffffffffffffffb0
call fcn.140093900
mov edi, eax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140093570
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140094010
cmp edx, 0x21190310
ja 0x14009d264
je 0x14009d220
sub edx, 0x21190231
je 0x14009d205
sub edx, 1
je 0x14009d1ea
sub edx, 1
je 0x14009d1cf
cmp edx, 3
jne 0x14009d27e
add rbx, 0xffffffffffffffb0
xor r8d, r8d
mov esi, 1
cmp dword [rbx + 0x44], r8d
mov rcx, rbx
mov edx, esi
je 0x14009d1c0
call fcn.140097220
xor r8d, r8d
mov edx, esi
jmp 0x14009d308
call fcn.1400986d0
xor r8d, r8d
mov edx, esi
jmp 0x14009d308
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140093c80
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140094720
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.1400943a0
cmp r8d, 1
jne 0x14009d24a
lea rdx, [rsp + 0x38]
xor esi, esi
add rcx, 0xffffffffffffffb0
mov dword [rsp + 0x38], esi
call fcn.140094d20
test eax, eax
jne 0x14009d24a
lea edx, [rsi + 7]
lea rcx, [rbx - 0x50]
call fcn.140094e50
lea rcx, [rbx - 0x50]
mov edx, edi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.140094ab0
sub edx, 0x21190312
je 0x14009d2e1
sub edx, 0xf0
je 0x14009d2c6
sub edx, 1
je 0x14009d2ab
cmp edx, 1
je 0x14009d290
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x140095c90
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x140095aa0
add rcx, 0xffffffffffffffb0
mov edx, r8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x140095700
add rbx, 0xffffffffffffffb0
xor edx, edx
mov esi, 1
cmp dword [rbx + 0x44], edx
mov rcx, rbx
mov r8d, esi
je 0x14009d2fe
call fcn.140097220
jmp 0x14009d303
call fcn.1400986d0
xor edx, edx
mov r8d, esi
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp 0x1400993a0
push rbx
sub rsp, 0x20
mov rbx, rcx
call fcn.14009fbd0
mov r11d, eax
sub r11d, 1
je 0x1400a0461
sub r11d, 1
je 0x1400a044f
cmp r11d, 1
jne 0x1400a0444
lea edx, [r11 + 9]
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp fcn.1400a01e0
mov eax, 1
add rsp, 0x20
pop rbx
ret
mov edx, 7
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp fcn.1400a01e0
xor edx, edx
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp fcn.1400a01e0