Function at 0x1400a3e00
Capabilities:
Check http status code

Disassembly:
mov rax, rsp
push rsi
push rdi
push r12
sub rsp, 0xa0
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov rax, qword [0x140210348]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rbx, rcx
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x1400a524a
cmp dword [rax + 0x1d8], 8
je 0x1400a524a
call fcn.1400969b0
mov rcx, rbx
call fcn.14009f340
mov dword [rbx + 0x3c], eax
xor ebp, ebp
mov dword [rsp + 0x38], ebp
mov rax, qword [rbx + 0x20]
lea r12, [0x140000000]
bt dword [rax + 0x31c], 0xf
jb 0x1400a4f4f
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9698]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a96a0]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a96a8]
mov dword [rcx + 0x10], eax
lea r9d, [rbp + 1]
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, ebp
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rbp + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a3f52
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a3fb0
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a3fb0
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 0x1400a3f8c
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a3fb0
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a3fb0
cmp word [rsp + 0x40], 0x13
je 0x1400a3fb4
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a3fb0
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, ebp
jmp 0x1400a3fd4
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 0x1400a3fd4
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x1400a3fee
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a96b0]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a96b8]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a96c0]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
test eax, eax
je 0x1400a403a
mov esi, dword [rsp + 0x38]
cmp esi, 0xa
jbe 0x1400a4040
mov esi, ebp
mov dword [rsp + 0x38], ebp
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a40d2
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4157
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4157
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 0x1400a410c
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4157
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4157
cmp word [rsp + 0x40], 0x13
je 0x1400a4132
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4157
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4157
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 0x1400a4152
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0xa
jbe 0x1400a4159
mov edi, ebp
cmp esi, edi
je 0x1400a4173
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9590]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a9598]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a95a0]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, ebp
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a424a
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a42a8
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a42a8
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 0x1400a4284
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a42a8
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a42a8
cmp word [rsp + 0x40], 0x13
je 0x1400a42ac
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a42a8
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, ebp
jmp 0x1400a42cc
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 0x1400a42cc
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x1400a42e6
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a95a8]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a95b0]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a95b8]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
test eax, eax
je 0x1400a4336
mov ecx, dword [rsp + 0x38]
test ecx, ecx
je 0x1400a433c
cmp ecx, 1
je 0x1400a433c
mov ecx, ebp
mov dword [rsp + 0x38], ecx
mov rax, qword [rbx + 0x20]
cmp dword [rax + 0x1d8], 3
je 0x1400a4354
cmp dword [rbx + 0x38], 3
je 0x1400a4354
mov r8d, ebp
jmp 0x1400a435a
mov r8d, 1
cmp ecx, r8d
je 0x1400a4372
mov r9d, 1
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a95c0]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a95c8]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a95d0]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
test eax, eax
je 0x1400a43be
mov esi, dword [rsp + 0x38]
cmp esi, 0xa
jbe 0x1400a43c4
mov esi, ebp
mov dword [rsp + 0x38], ebp
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a4456
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a44db
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a44db
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 0x1400a4490
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a44db
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a44db
cmp word [rsp + 0x40], 0x13
je 0x1400a44b6
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a44db
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a44db
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 0x1400a44d6
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0xa
jbe 0x1400a44dd
mov edi, ebp
cmp esi, edi
je 0x1400a44f7
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a95d8]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a95e0]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a95e8]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
test eax, eax
je 0x1400a4548
mov esi, dword [rsp + 0x38]
cmp esi, 0x1e
ja 0x1400a4548
cmp esi, 5
jae 0x1400a4551
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a45e3
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a466d
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a466d
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 0x1400a461d
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a466d
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a466d
cmp word [rsp + 0x40], 0x13
je 0x1400a4643
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a466d
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a466d
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 0x1400a4663
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0x1e
ja 0x1400a466d
cmp edi, 5
jae 0x1400a4672
mov edi, reloc.OLEAUT32.dll_SafeArrayDestroy
cmp esi, edi
je 0x1400a468c
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a95f0]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a95f8]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a9600]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, ebp
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a4763
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a47c1
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a47c1
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 0x1400a479d
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a47c1
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a47c1
cmp word [rsp + 0x40], 0x13
je 0x1400a47c5
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a47c1
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, ebp
jmp 0x1400a47e5
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 0x1400a47e5
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x1400a47ff
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9608]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a9610]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a9618]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, ebp
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a48d6
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4934
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4934
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 0x1400a4910
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4934
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4934
cmp word [rsp + 0x40], 0x13
je 0x1400a4938
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4934
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, ebp
jmp 0x1400a4958
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 0x1400a4958
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x1400a4972
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9638]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a9640]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a9648]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, ebp
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a4a49
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4aa7
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4aa7
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 0x1400a4a83
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4aa7
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4aa7
cmp word [rsp + 0x40], 0x13
je 0x1400a4aab
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4aa7
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, ebp
jmp 0x1400a4acb
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 0x1400a4acb
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp esi, edi
je 0x1400a4ae5
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9650]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a9658]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a9660]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
test eax, eax
je 0x1400a4b31
mov esi, dword [rsp + 0x38]
cmp esi, 0xa
jbe 0x1400a4b37
mov esi, ebp
mov dword [rsp + 0x38], ebp
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a4bc9
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4c4e
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4c4e
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 0x1400a4c03
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4c4e
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4c4e
cmp word [rsp + 0x40], 0x13
je 0x1400a4c29
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4c4e
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4c4e
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 0x1400a4c49
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0xa
jbe 0x1400a4c50
mov edi, ebp
cmp esi, edi
je 0x1400a4c6a
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9668]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a9670]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a9678]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
test eax, eax
je 0x1400a4cbe
mov esi, dword [rsp + 0x38]
cmp esi, 0x190
ja 0x1400a4cbe
cmp esi, 0x32
jae 0x1400a4cc7
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a4d59
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4de6
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4de6
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 0x1400a4d93
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4de6
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4de6
cmp word [rsp + 0x40], 0x13
je 0x1400a4db9
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4de6
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4de6
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 0x1400a4dd9
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0x190
ja 0x1400a4de6
cmp edi, 0x32
jae 0x1400a4deb
mov edi, 0x64
cmp esi, edi
je 0x1400a4e05
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9680]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a9688]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a9690]
mov dword [rcx + 0x10], eax
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a4eb7
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4f15
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4f15
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 0x1400a4ef1
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4f15
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a4f15
cmp word [rsp + 0x40], 0x13
je 0x1400a4f19
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a4f15
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, ebp
jmp 0x1400a4f39
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 0x1400a4f39
mov rax, qword [rcx]
call qword [rax + 0x10]
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
mov rax, qword [rbx + 0x20]
test byte [rax + 0x31e], 1
jne 0x1400a524a
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9518]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a9520]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a9528]
mov dword [rcx + 0x10], eax
mov r9d, 1
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400556d0
mov esi, dword [rsp + 0x38]
test eax, eax
cmove esi, ebp
mov rax, qword [rbx + 0x20]
cmp dword [rax + 0x1d8], 1
jne 0x1400a50d0
cmp dword [rbx + 0x38], 1
jne 0x1400a50d0
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 + 0x3c]
imul ecx, ecx, 0x2710
mov eax, dword [rsp + 0x70]
lea ecx, [rcx + rax + 0x3e8]
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a504c
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a50aa
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a50aa
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 0x1400a5086
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a50aa
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a50aa
cmp word [rsp + 0x40], 0x13
je 0x1400a50ae
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a50aa
mov rax, qword [rcx]
call qword [rax + 0x10]
mov edi, ebp
jmp 0x1400a50d2
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 0x1400a50d2
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a50d2
mov edi, ebp
cmp esi, edi
je 0x1400a50ec
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
lea rcx, [rsp + 0x60]
mov rax, qword [r12 + 0x1a9530]
mov qword [rcx], rax
mov rax, qword [r12 + 0x1a9538]
mov qword [rcx + 8], rax
mov eax, dword [r12 + 0x1a9540]
mov dword [rcx + 0x10], eax
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 eax, dword [rbx + 0x3c]
lea ecx, [rax + rax*4]
mov eax, dword [rbx + 0x38]
lea edx, [rax + rcx*2]
imul edx, edx, 0x3e8
add edx, dword [rsp + 0x70]
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x30], rbp
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, [0x1401a77d0]
xor edx, edx
lea r8d, [rdx + 1]
lea rcx, [0x1401a77c0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x1400a51a5
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a522f
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a522f
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 0x1400a51df
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a522f
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a522f
cmp word [rsp + 0x40], 0x13
je 0x1400a5205
lea rcx, [rsp + 0x40]
call qword [sym.imp.ole32.dll_PropVariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400a522f
mov rax, qword [rcx]
call qword [rax + 0x10]
jmp 0x1400a522f
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 0x1400a5225
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp edi, 0xa
ja 0x1400a522f
cmp edi, 4
jae 0x1400a5234
mov edi, 7
mov r9d, 1
mov r8d, edi
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.140055830
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.14015d000
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret