Function at 0x1400233d0
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x7b0
mov rdi, rsp
mov ecx, 0x1ec
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x7c0]
mov qword [rsp + 0x6c0], 0xfffffffffffffffe
mov rax, qword [0x1401bb8b8]
xor rax, rsp
mov qword [rsp + 0x7a8], rax
cmp qword [rsp + 0x7e8], 0
je 0x14002345b
cmp qword [rsp + 0x7e0], 0
jl 0x14002345b
mov rcx, qword [rsp + 0x7e8]
call fcn.14007e520
cmp qword [rsp + 0x7e0], rax
jg 0x14002345b
mov qword [rsp + 0x6c8], 1
jmp 0x140023467
mov qword [rsp + 0x6c8], 0
mov r9d, 0x922
lea r8, [0x1401480d0]
lea rdx, str.szParamTypes___NULL__npFirstExtendParamTypeIndex___0__npFirstExtendParamTypeIndex____INT_P__tcslen__szParamTypes_
mov rcx, qword [rsp + 0x6c8]
call fcn.14000f120
cmp qword [rsp + 0x7d8], 0
je 0x1400234a1
mov rcx, qword [rsp + 0x7d8]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov dword [rsp + 0x50], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x98], 0
mov qword [rsp + 0xa0], 0
lea rcx, [rsp + 0xb8]
call fcn.14003b920
nop
lea rcx, [rsp + 0x108]
call fcn.14003b920
nop
mov byte [rsp + 0x6b9], 0
mov byte [rsp + 0x6b8], 0
mov rcx, qword [rsp + 0x7d0]
call fcn.14000f390
test rax, rax
je 0x140023521
mov dword [rsp + 0x50], 0xfffffff9
jmp 0x140024e71
mov rax, qword [rsp + 0x7c0]
cmp qword [rax + 0x18], 0
jne 0x14002353d
mov dword [rsp + 0x50], 0xffffffff
jmp 0x140024e71
mov rax, qword [rsp + 0x7c0]
mov rax, qword [rax + 0x18]
mov rcx, qword [rsp + 0x7c0]
mov rcx, qword [rcx + 0x18]
mov rax, qword [rax]
lea r8, [rsp + 0x68]
lea rdx, [0x14017c278]
call qword [rax]
test eax, eax
jge 0x140023577
mov dword [rsp + 0x50], 0xfffffffe
jmp 0x140024e71
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov dword [rsp + 0x144], eax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
lea r9, [rsp + 0x88]
mov r8d, dword [rsp + 0x144]
xor edx, edx
mov rcx, qword [rsp + 0x68]
call qword [rax + 0x20]
test eax, eax
jl 0x1400235cc
mov rax, qword [rsp + 0x88]
mov rax, qword [rax]
lea rdx, [rsp + 0x158]
mov rcx, qword [rsp + 0x88]
call qword [rax + 0x20]
test eax, eax
jge 0x1400235d9
mov dword [rsp + 0x50], 0xfffffffd
jmp 0x140024e71
mov eax, dword [rsp + 0x7c8]
mov dword [rsp + 0x6d0], eax
cmp dword [rsp + 0x6d0], 0
je 0x14002360e
cmp dword [rsp + 0x6d0], 1
je 0x140023674
cmp dword [rsp + 0x6d0], 2
je 0x1400236f0
jmp 0x14002374a
mov eax, 2
imul rax, rax, 0
mov ecx, 2
mov word [rsp + rax + 0x178], cx
mov eax, 2
imul rax, rax, 1
mov ecx, 1
mov word [rsp + rax + 0x178], cx
mov eax, 2
imul rax, rax, 2
mov qword [rsp + 0x590], rax
cmp qword [rsp + 0x590], 8
jae 0x140023658
jmp 0x14002365d
call fcn.14005df90
xor eax, eax
mov rcx, qword [rsp + 0x590]
mov word [rsp + rcx + 0x178], ax
jmp 0x14002379a
mov eax, 2
imul rax, rax, 0
mov ecx, 4
mov word [rsp + rax + 0x178], cx
mov eax, 2
imul rax, rax, 1
mov ecx, 8
mov word [rsp + rax + 0x178], cx
mov eax, 2
imul rax, rax, 2
mov ecx, 1
mov word [rsp + rax + 0x178], cx
mov eax, 2
imul rax, rax, 3
mov qword [rsp + 0x598], rax
cmp qword [rsp + 0x598], 8
jae 0x1400236d4
jmp 0x1400236d9
call fcn.14005df90
xor eax, eax
mov rcx, qword [rsp + 0x598]
mov word [rsp + rcx + 0x178], ax
jmp 0x14002379a
mov eax, 2
imul rax, rax, 0
mov ecx, 1
mov word [rsp + rax + 0x178], cx
mov eax, 2
imul rax, rax, 1
mov ecx, 2
mov word [rsp + rax + 0x178], cx
mov eax, 2
imul rax, rax, 2
mov ecx, 4
mov word [rsp + rax + 0x178], cx
mov eax, 2
imul rax, rax, 3
mov ecx, 8
mov word [rsp + rax + 0x178], cx
jmp 0x14002379a
mov r9d, 0x961
lea r8, [0x1401481a0]
lea rdx, [0x1401481f0]
xor ecx, ecx
call fcn.14000f120
mov eax, 2
imul rax, rax, 0
mov qword [rsp + 0x5a0], rax
cmp qword [rsp + 0x5a0], 8
jae 0x140023783
jmp 0x140023788
call fcn.14005df90
xor eax, eax
mov rcx, qword [rsp + 0x5a0]
mov word [rsp + rcx + 0x178], ax
mov rax, qword [rsp + 0x88]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x88]
call qword [rax + SafeArrayGetElemsize]
mov qword [rsp + 0x88], 0
mov r8, qword [rsp + 0x7d0]
mov edx, dword [rsp + 0x144]
mov ecx, 1
call qword [sym.imp.OLEAUT32.dll_LHashValOfNameSysA]
mov dword [rsp + 0x1c4], eax
mov qword [rsp + 0x1c8], 0
jmp 0x1400237fe
mov rax, qword [rsp + 0x1c8]
inc rax
mov qword [rsp + 0x1c8], rax
cmp qword [rsp + 0x1c8], 4
jae 0x1400238b6
mov rax, qword [rsp + 0x1c8]
movzx eax, word [rsp + rax*2 + 0x178]
test eax, eax
jne 0x140023826
jmp 0x1400238b6
mov byte [rsp + 0x6b8], 1
mov byte [rsp + 0x6b9], 1
mov rax, qword [rsp + 0x158]
mov rax, qword [rax]
lea rcx, [rsp + 0x1b8]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x194]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x88]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x1c8]
movzx r9d, word [rsp + rcx*2 + 0x178]
mov r8d, dword [rsp + 0x1c4]
mov rdx, qword [rsp + 0x7d0]
mov rcx, qword [rsp + 0x158]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
test eax, eax
jl 0x1400238a5
cmp qword [rsp + 0x88], 0
je 0x1400238a5
jmp 0x1400238b6
mov qword [rsp + 0x88], 0
jmp 0x1400237eb
mov rax, qword [rsp + 0x158]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x158]
call qword [rax + SafeArrayGetElemsize]
cmp qword [rsp + 0x88], 0
jne 0x1400238e4
mov dword [rsp + 0x50], 0xfffffff9
jmp 0x140024e71
cmp byte [rsp + 0x6b9], 0
jne 0x1400238fa
lea rcx, str.kind
call fcn.14005e930
cmp dword [rsp + 0x194], 1
jne 0x14002397d
cmp byte [rsp + 0x6b8], 0
jne 0x14002391a
lea rcx, str.bindptr
call fcn.14005e930
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
movzx eax, word [rax + 0x1c]
mov word [rsp + 0x1e8], ax
mov rax, qword [rsp + 0x98]
movsx rax, word [rax + 0x24]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x98]
mov eax, dword [rax]
mov dword [rsp + 0x1d0], eax
jmp 0x140023b38
cmp byte [rsp + 0x6b9], 0
jne 0x140023993
lea rcx, str.kind
call fcn.14005e930
cmp dword [rsp + 0x194], 2
je 0x1400239c1
cmp byte [rsp + 0x6b9], 0
jne 0x1400239b3
lea rcx, str.kind
call fcn.14005e930
cmp dword [rsp + 0x194], 4
jne 0x140023ac9
cmp byte [rsp + 0x6b8], 0
jne 0x1400239d7
lea rcx, str.bindptr
call fcn.14005e930
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0xa0], rax
cmp dword [rsp + 0x7c8], 1
jne 0x140023a91
mov qword [rsp + 0x1d8], 1
mov rax, qword [rsp + 0xa0]
add rax, 0x18
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x1e0]
mov rdx, rax
mov rcx, qword [rsp + 0x88]
call fcn.1400251a0
movzx eax, ax
btr eax, 0xe
mov word [rsp + 0x1ec], ax
movzx eax, word [rsp + 0x1ec]
and eax, 0x2000
test eax, eax
jne 0x140023a74
movzx eax, word [rsp + 0x1ec]
cmp eax, 0xd
je 0x140023a74
movzx eax, word [rsp + 0x1ec]
cmp eax, 9
je 0x140023a74
mov dword [rsp + 0x6d4], 4
jmp 0x140023a7f
mov dword [rsp + 0x6d4], 8
movzx eax, word [rsp + 0x6d4]
mov word [rsp + 0x1e8], ax
jmp 0x140023ab6
mov eax, 2
mov word [rsp + 0x1e8], ax
mov qword [rsp + 0x1d8], 0
mov qword [rsp + 0x1e0], 0
mov rax, qword [rsp + 0xa0]
mov eax, dword [rax]
mov dword [rsp + 0x1d0], eax
jmp 0x140023b38
cmp byte [rsp + 0x6b9], 0
jne 0x140023adf
lea rcx, str.kind
call fcn.14005e930
cmp dword [rsp + 0x194], 3
jne 0x140023b2b
cmp byte [rsp + 0x6b8], 0
jne 0x140023aff
lea rcx, str.bindptr
call fcn.14005e930
cmp byte [rsp + 0x6b8], 0
jne 0x140023b15
lea rcx, str.bindptr
call fcn.14005e930
mov rax, qword [rsp + 0x1b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x1b8]
call qword [rax + SafeArrayGetElemsize]
mov dword [rsp + 0x50], 0xfffffff9
jmp 0x140024e71
lea rcx, [rsp + 0x1f8]
call fcn.14003b920
nop
lea rax, [rsp + 0x1f8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x248]
mov r8, qword [rsp + 0x7e8]
mov rdx, qword [rsp + 0x7e0]
mov rcx, qword [rsp + 0x7f0]
call fcn.140022910
mov qword [rsp + 0x258], rax
cmp qword [rsp + 0x258], 0xffffffffffffffff
jne 0x140023ba5
mov dword [rsp + 0x50], 0xfffffffb
lea rcx, [rsp + 0x1f8]
call fcn.140001df0
jmp 0x140024e71
mov rax, qword [rsp + 0x1d8]
cmp qword [rsp + 0x258], rax
jle 0x140023ce9
cmp qword [rsp + 0x1d8], 0
je 0x140023be2
cmp qword [rsp + 0x98], 0
je 0x140023be2
mov rax, qword [rsp + 0x98]
movsx eax, word [rax + 0x26]
cmp eax, 0xffffffff
je 0x140023bfc
mov dword [rsp + 0x50], 0xfffffffc
lea rcx, [rsp + 0x1f8]
call fcn.140001df0
jmp 0x140024e71
imul rax, qword [rsp + 0x258], 0x20
mov rdx, rax
lea rcx, [rsp + 0xb8]
call fcn.14003c010
mov qword [rsp + 0x260], rax
imul rax, qword [rsp + 0x1d8], 0x20
mov r8, rax
mov rdx, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x260]
call fcn.140062070
mov rax, qword [rsp + 0x1d8]
dec rax
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x1e0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x1c8], rax
jmp 0x140023c88
mov rax, qword [rsp + 0x1c8]
inc rax
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x258]
cmp qword [rsp + 0x1c8], rax
jge 0x140023cc9
imul rax, qword [rsp + 0x1c8], 0x20
mov rcx, qword [rsp + 0x260]
add rcx, rax
mov rax, rcx
mov r8d, SafeArrayAllocDescriptor
mov rdx, qword [rsp + 0x1e0]
mov rcx, rax
call fcn.140062070
jmp 0x140023c75
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x1d8], rax
imul rax, qword [rsp + 0x258], 0x18
shl rax, 1
mov rdx, rax
lea rcx, [rsp + 0x108]
call fcn.14003c010
mov qword [rsp + 0x268], rax
lea rcx, [rsp + 0x108]
call fcn.140028030
imul rax, qword [rsp + 0x258], 0x18
mov rcx, qword [rsp + 0x268]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x270], rax
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x288], rax
mov eax, dword [rsp + 0x258]
mov dword [rsp + 0x298], eax
movzx eax, word [rsp + 0x1e8]
and eax, 0xc
test eax, eax
je 0x140023d8e
mov dword [rsp + 0x2b4], 0xfffffffd
lea rax, [rsp + 0x2b4]
mov qword [rsp + 0x290], rax
mov dword [rsp + 0x29c], 1
jmp 0x140023da5
mov qword [rsp + 0x290], 0
mov dword [rsp + 0x29c], 0
imul rax, qword [rsp + 0x258], 0x10
mov rcx, qword [rsp + 0x248]
lea rax, [rcx + rax - 0x10]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x1d8]
cmp qword [rsp + 0x258], rax
jg 0x140023de3
mov qword [rsp + 0x6d8], 1
jmp 0x140023def
mov qword [rsp + 0x6d8], 0
mov r9d, 0x9e1
lea r8, [0x140148220]
lea rdx, str.npNumCallParams___npNumComParams
mov rcx, qword [rsp + 0x6d8]
call fcn.14000f120
mov rax, qword [rsp + 0x258]
dec rax
imul rax, rax, 0x20
mov rcx, qword [rsp + 0x1e0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x2e0], rax
mov qword [rsp + 0x1c8], 0
jmp 0x140023ed6
mov rax, qword [rsp + 0x1c8]
inc rax
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x2c8]
sub rax, 0x10
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x1e0]
sub rax, 0x20
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x2d8]
add rax, 0x18
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x2e0]
add rax, 0x18
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0x258]
cmp qword [rsp + 0x1c8], rax
jge 0x14002478d
mov rax, qword [rsp + 0x2c8]
mov eax, dword [rax]
mov dword [rsp + 0x2f0], eax
cmp dword [rsp + 0x2f0], 0
jne 0x140023f2b
mov eax, 0xa
mov rcx, qword [rsp + 0x2d8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2d8]
mov dword [rax + 8], 0x80020004
jmp 0x140023e73
mov rax, qword [rsp + 0x1e0]
mov rdx, rax
mov rcx, qword [rsp + 0x88]
call fcn.1400251a0
mov word [rsp + 0x2f4], ax
movzx eax, word [rsp + 0x2f4]
and eax, 0x4000
test eax, eax
je 0x140023f6a
mov qword [rsp + 0x6e0], 1
jmp 0x140023f76
mov qword [rsp + 0x6e0], 0
mov rax, qword [rsp + 0x6e0]
mov qword [rsp + 0x2f8], rax
movzx eax, word [rsp + 0x2f4]
and eax, 0x2000
test eax, eax
je 0x140023fa5
mov qword [rsp + 0x6e8], 1
jmp 0x140023fb1
mov qword [rsp + 0x6e8], 0
mov rax, qword [rsp + 0x6e8]
mov qword [rsp + 0x300], rax
movzx eax, word [rsp + 0x2f4]
and eax, 0xfff
mov word [rsp + 0x2f4], ax
cmp qword [rsp + 0x2f8], 0
je 0x140023ff3
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x6f0], rax
jmp 0x140024003
mov rax, qword [rsp + 0x2d8]
mov qword [rsp + 0x6f0], rax
mov rax, qword [rsp + 0x6f0]
mov qword [rsp + 0x2e8], rax
mov eax, dword [rsp + 0x2f0]
mov dword [rsp + 0x6f8], eax
mov eax, dword [rsp + 0x6f8]
dec eax
mov dword [rsp + 0x6f8], eax
cmp dword [rsp + 0x6f8], 0x14
ja case.default.0x140024058
movsxd rax, dword [rsp + 0x6f8]
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0x25008]
add rax, rcx
jmp rax
mov eax, SafeArrayGetLBound
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2c8]
movzx ecx, byte [rcx + 8]
mov byte [rax + 8], cl
jmp 0x140024581
mov eax, 2
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2c8]
movzx ecx, word [rcx + 8]
mov word [rax + 8], cx
jmp 0x140024581
mov eax, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2c8]
movzx ecx, word [rcx + 8]
mov word [rax + 8], cx
jmp 0x140024581
mov eax, 3
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2c8]
mov ecx, dword [rcx + 8]
mov dword [rax + 8], ecx
jmp 0x140024581
mov eax, reloc.OLEAUT32.dll_SafeArrayLock
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2c8]
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
jmp 0x140024581
mov eax, reloc.OLEAUT32.dll_SafeArrayLock
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2c8]
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
jmp 0x140024581
mov eax, 4
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2c8]
movss xmm0, dword [rcx + 8]
movss dword [rax + 8], xmm0
jmp 0x140024581
mov eax, 5
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2c8]
movsd xmm0, qword [rcx + 8]
movsd qword [rax + 8], xmm0
jmp 0x140024581
mov eax, reloc.OLEAUT32.dll_VariantChangeType
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
cmp dword [rax + 8], 0
je 0x1400241f0
mov eax, 0xffffffff
mov word [rsp + 0x6fc], ax
jmp 0x1400241fa
xor eax, eax
mov word [rsp + 0x6fc], ax
mov rax, qword [rsp + 0x2e8]
movzx ecx, word [rsp + 0x6fc]
mov word [rax + 8], cx
jmp 0x140024581
mov eax, SafeArrayGetLBound
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
movzx eax, byte [rax]
mov byte [rcx + 8], al
jmp 0x140024581
mov eax, 2
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
movzx eax, word [rax]
mov word [rcx + 8], ax
jmp 0x140024581
mov eax, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
movzx eax, word [rax]
mov word [rcx + 8], ax
jmp 0x140024581
mov eax, 3
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
mov eax, dword [rax]
mov dword [rcx + 8], eax
jmp 0x140024581
mov eax, reloc.OLEAUT32.dll_SafeArrayLock
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
mov rax, qword [rax]
mov qword [rcx + 8], rax
jmp 0x140024581
mov eax, reloc.OLEAUT32.dll_SafeArrayLock
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
mov rax, qword [rax]
mov qword [rcx + 8], rax
jmp 0x140024581
mov eax, 4
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
movss xmm0, dword [rax]
movss dword [rcx + 8], xmm0
jmp 0x140024581
mov eax, 5
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
movsd xmm0, qword [rax]
movsd qword [rcx + 8], xmm0
jmp 0x140024581
mov eax, reloc.OLEAUT32.dll_VariantChangeType
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
cmp dword [rax], 0
je 0x1400243c4
mov eax, 0xffffffff
mov word [rsp + 0x6fe], ax
jmp 0x1400243ce
xor eax, eax
mov word [rsp + 0x6fe], ax
mov rax, qword [rsp + 0x2e8]
movzx ecx, word [rsp + 0x6fe]
mov word [rax + 8], cx
jmp 0x140024581
mov eax, 8
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rcx, qword [rax + 8]
call fcn.14004a960
mov rcx, rax
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rcx, qword [rsp + 0x2e8]
mov qword [rcx + 8], rax
jmp 0x140024581
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
add rax, 0x18
mov rdx, rax
mov rcx, qword [rsp + 0x2e8]
call qword [sym.imp.OLEAUT32.dll_VariantChangeType]
jmp 0x140024581
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
cmp qword [rax + 0x18], 0
je 0x14002453c
movzx eax, word [rsp + 0x2f4]
cmp eax, 0xd
jne 0x1400244bb
mov eax, SafeArrayGetElemsize
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2c8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
mov rax, qword [rax + 0x18]
mov qword [rcx + 8], rax
mov rax, qword [rsp + 0x2e8]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x2e8]
mov rcx, qword [rcx + 8]
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140024581
movzx eax, word [rsp + 0x2f4]
cmp eax, 9
jne 0x14002453c
mov eax, 9
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
add rax, 8
mov rcx, qword [rsp + 0x2c8]
mov rcx, qword [rcx + 8]
mov rcx, qword [rcx + 0x18]
mov rdx, qword [rsp + 0x2c8]
mov rdx, qword [rdx + 8]
mov rdx, qword [rdx + 0x18]
mov qword [rsp + 0x700], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0x708], rcx
mov r8, rax
lea rdx, [0x14017c278]
mov rax, qword [rsp + 0x700]
mov rcx, rax
mov rax, qword [rsp + 0x708]
call qword [rax]
test eax, eax
jl 0x14002453c
jmp 0x140024581
mov eax, SafeArrayGetElemsize
mov rcx, qword [rsp + 0x2e8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
mov qword [rax + 8], 0
jmp 0x140024581
mov r9d, 0xa82
lea r8, [0x140148270]
lea rdx, [0x1401482c0]
xor ecx, ecx
call fcn.14000f120
mov dword [rsp + 0x50], 0xfffffffb
cmp dword [rsp + 0x50], 0
je 0x14002458d
jmp 0x14002478d
mov rax, qword [rsp + 0x2e8]
movzx eax, word [rax]
test eax, eax
jne 0x1400245c0
mov eax, 0xa
mov rcx, qword [rsp + 0x2d8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2d8]
mov dword [rax + 8], 0x80020004
jmp 0x140024788
cmp qword [rsp + 0x2f8], 0
je 0x14002473b
mov rax, qword [rsp + 0x2e0]
cmp qword [rsp + 0x2e8], rax
jne 0x1400245ef
mov qword [rsp + 0x710], 1
jmp 0x1400245fb
mov qword [rsp + 0x710], 0
mov r9d, 0xa91
lea r8, [0x1401482e0]
lea rdx, str.pvParam__pParamVarRefData
mov rcx, qword [rsp + 0x710]
call fcn.14000f120
mov rax, qword [rsp + 0x2e8]
movzx eax, word [rax]
cmp eax, 0xa
je 0x140024710
cmp qword [rsp + 0x300], 0
je 0x140024694
mov rax, qword [rsp + 0x2e8]
movzx eax, word [rax]
and eax, 0x6000
cmp eax, 0x2000
jne 0x140024692
mov rax, qword [rsp + 0x2e8]
movzx eax, word [rax]
and eax, 0xfff
bts eax, 0xd
bts eax, 0xe
mov rcx, qword [rsp + 0x2d8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2e8]
add rax, 8
mov rcx, qword [rsp + 0x2d8]
mov qword [rcx + 8], rax
jmp 0x140023e73
jmp 0x140024710
movzx eax, word [rsp + 0x2f4]
cmp eax, 0xc
jne 0x1400246cc
mov eax, 0x400c
mov rcx, qword [rsp + 0x2d8]
mov word [rcx], ax
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x2e8]
mov qword [rax + 8], rcx
jmp 0x140023e73
movzx r9d, word [rsp + 0x2f4]
xor r8d, r8d
mov rdx, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2e8]
call qword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
test eax, eax
jl 0x140024710
mov rdx, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2d8]
call fcn.1400253f0
test eax, eax
je 0x140024710
jmp 0x140023e73
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rdx, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2d8]
call fcn.140062070
mov rcx, qword [rsp + 0x2e8]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
jmp 0x140024788
mov rax, qword [rsp + 0x2d8]
cmp qword [rsp + 0x2e8], rax
jne 0x14002475b
mov qword [rsp + 0x718], 1
jmp 0x140024767
mov qword [rsp + 0x718], 0
mov r9d, 0xaae
lea r8, [0x140148350]
lea rdx, str.pvParam__pParamVar
mov rcx, qword [rsp + 0x718]
call fcn.14000f120
jmp 0x140023e73
cmp dword [rsp + 0x50], 0
jne 0x140024df0
cmp qword [rsp + 0x68], 0
je 0x1400247ae
mov qword [rsp + 0x720], 1
jmp 0x1400247ba
mov qword [rsp + 0x720], 0
mov r9d, 0xab3
lea r8, [0x1401483a0]
lea rdx, [0x1401483f0]
mov rcx, qword [rsp + 0x720]
call fcn.14000f120
mov r8d, 0x40
xor edx, edx
lea rcx, [rsp + 0x320]
call fcn.140060770
lea rax, [rsp + 0x320]
mov qword [rsp + 0x308], rax
mov dword [rsp + 0x374], 0xffffffff
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
lea rcx, [rsp + 0x374]
mov qword [rsp + 0x40], rcx
mov rcx, qword [rsp + 0x308]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rsp + 0x7d8]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x288]
mov qword [rsp + 0x28], rcx
movzx ecx, word [rsp + 0x1e8]
mov word [rsp + 0x20], cx
mov r9d, dword [rsp + 0x144]
lea r8, [0x14017b418]
mov edx, dword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x68]
call qword [rax + 0x30]
mov dword [rsp + 0x384], eax
cmp dword [rsp + 0x384], 0
jl 0x140024981
imul rax, qword [rsp + 0x258], 0x10
mov rcx, qword [rsp + 0x248]
lea rax, [rcx + rax - 0x10]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1c8], 0
jmp 0x140024922
mov rax, qword [rsp + 0x1c8]
inc rax
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x2c8]
sub rax, 0x10
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x1e0]
sub rax, 0x20
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x2d8]
add rax, 0x18
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x258]
cmp qword [rsp + 0x1c8], rax
jge 0x14002497c
mov rax, qword [rsp + 0x2d8]
movzx eax, word [rax]
and eax, 0x4000
test eax, eax
je 0x140024977
mov rax, qword [rsp + 0x2c8]
cmp dword [rax], 0xa
jl 0x140024977
mov rax, qword [rsp + 0x2c8]
cmp dword [rax], 0x15
jg 0x140024977
mov rdx, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x2c8]
call fcn.1400256d0
jmp 0x1400248d3
jmp 0x140024df0
cmp dword [rsp + 0x384], 0x8002000e
jne 0x14002499e
mov dword [rsp + 0x728], 0xfffffffc
jmp 0x140024af8
cmp dword [rsp + 0x384], 0x80020008
jne 0x1400249bb
mov dword [rsp + 0x72c], 0xfffffffb
jmp 0x140024aea
cmp dword [rsp + 0x384], 0x80020009
jne 0x1400249d8
mov dword [rsp + 0x730], 0xfffffffa
jmp 0x140024adc
cmp dword [rsp + 0x384], 0x80020003
jne 0x1400249f5
mov dword [rsp + 0x734], 0xfffffff9
jmp 0x140024ace
cmp dword [rsp + 0x384], 0x80020007
jne 0x140024a12
mov dword [rsp + 0x738], 0xfffffff8
jmp 0x140024ac0
cmp dword [rsp + 0x384], 0x8002000a
jne 0x140024a2f
mov dword [rsp + 0x73c], 0xfffffff7
jmp 0x140024ab2
cmp dword [rsp + 0x384], 0x80020004
jne 0x140024a49
mov dword [rsp + 0x740], 0xfffffff6
jmp 0x140024aa4
cmp dword [rsp + 0x384], 0x80020005
jne 0x140024a63
mov dword [rsp + 0x744], 0xfffffff5
jmp 0x140024a96
cmp dword [rsp + 0x384], 0x8002000f
jne 0x140024a7d
mov dword [rsp + 0x748], 0xfffffff4
jmp 0x140024a88
mov dword [rsp + 0x748], 0xfffffff2
mov eax, dword [rsp + 0x748]
mov dword [rsp + 0x744], eax
mov eax, dword [rsp + 0x744]
mov dword [rsp + 0x740], eax
mov eax, dword [rsp + 0x740]
mov dword [rsp + 0x73c], eax
mov eax, dword [rsp + 0x73c]
mov dword [rsp + 0x738], eax
mov eax, dword [rsp + 0x738]
mov dword [rsp + 0x734], eax
mov eax, dword [rsp + 0x734]
mov dword [rsp + 0x730], eax
mov eax, dword [rsp + 0x730]
mov dword [rsp + 0x72c], eax
mov eax, dword [rsp + 0x72c]
mov dword [rsp + 0x728], eax
mov eax, dword [rsp + 0x728]
mov dword [rsp + 0x50], eax
lea rax, [rsp + 0x320]
cmp qword [rsp + 0x308], rax
jne 0x140024b23
mov qword [rsp + 0x750], 1
jmp 0x140024b2f
mov qword [rsp + 0x750], 0
mov r9d, 0xadf
lea r8, [0x140148410]
lea rdx, str.pinfExcept__infExcept
mov rcx, qword [rsp + 0x750]
call fcn.14000f120
cmp dword [rsp + 0x384], 0x80020009
jne 0x140024df0
cmp qword [rsp + 0x350], 0
je 0x140024b7b
lea rcx, [rsp + 0x320]
call qword [rsp + 0x350]
lea rcx, [rsp + 0x3a0]
call fcn.140001d70
nop
mov rcx, qword [rsp + 0x328]
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x140024bb0
mov rdx, qword [rsp + 0x328]
lea rcx, [rsp + 0x3a0]
call fcn.14004c6e0
mov rcx, qword [rsp + 0x328]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
lea rcx, [rsp + 0x420]
call fcn.140001d70
nop
mov rcx, qword [rsp + 0x330]
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x140024bf3
mov rdx, qword [rsp + 0x330]
lea rcx, [rsp + 0x420]
call fcn.14004c6e0
mov rcx, qword [rsp + 0x330]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
lea rcx, [rsp + 0x4a0]
call fcn.140001d70
nop
mov rcx, qword [rsp + 0x338]
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x140024c36
mov rdx, qword [rsp + 0x338]
lea rcx, [rsp + 0x4a0]
call fcn.14004c6e0
mov rcx, qword [rsp + 0x338]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
lea rcx, [rsp + 0x520]
call fcn.140001d70
nop
lea rcx, [rsp + 0x4a0]
call fcn.14004a960
mov qword [rsp + 0x758], rax
lea rcx, [rsp + 0x420]
call fcn.14004a960
mov qword [rsp + 0x760], rax
lea rcx, [rsp + 0x3a0]
call fcn.14004a960
movzx ecx, word [rsp + 0x320]
mov edx, dword [rsp + 0x358]
mov dword [rsp + 0x38], edx
mov edx, dword [rsp + 0x340]
mov dword [rsp + 0x30], edx
mov rdx, qword [rsp + 0x758]
mov qword [rsp + 0x28], rdx
mov rdx, qword [rsp + 0x760]
mov qword [rsp + 0x20], rdx
mov r9, rax
mov r8d, ecx
lea rdx, str._______Encounted_exception:_r_n__Code:__X_r_n__Source:__s_r_n__Description:__s_r_n__HelpFile:__s_r_n__HelpContext:__X_r_n__scode:__X
lea rcx, [rsp + 0x520]
call fcn.14004eeb0
lea rcx, [rsp + 0x520]
call fcn.14004a960
mov rdx, rax
lea rcx, [rsp + 0x5a8]
call fcn.14000dbe0
mov qword [rsp + 0x768], rax
mov rax, qword [rsp + 0x768]
mov qword [rsp + 0x770], rax
mov r8, qword [rsp + 0x770]
lea rdx, [0x140148574]
lea rcx, [rsp + 0x600]
call fcn.140051020
mov qword [rsp + 0x778], rax
mov rax, qword [rsp + 0x778]
mov qword [rsp + 0x780], rax
lea r8, [0x140148404]
mov rdx, qword [rsp + 0x780]
lea rcx, [rsp + 0x658]
call fcn.140050ed0
mov qword [rsp + 0x788], rax
mov rax, qword [rsp + 0x788]
mov qword [rsp + 0x790], rax
mov rcx, qword [rsp + 0x790]
call fcn.14004a960
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
lea rcx, [rsp + 0x658]
call fcn.140001eb0
nop
lea rcx, [rsp + 0x600]
call fcn.140001eb0
nop
lea rcx, [rsp + 0x5a8]
call fcn.140001eb0
nop
lea rcx, [rsp + 0x520]
call fcn.140001eb0
nop
lea rcx, [rsp + 0x4a0]
call fcn.140001eb0
nop
lea rcx, [rsp + 0x420]
call fcn.140001eb0
nop
lea rcx, [rsp + 0x3a0]
call fcn.140001eb0
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x2d8], rax
mov qword [rsp + 0x1c8], 0
jmp 0x140024e35
mov rax, qword [rsp + 0x1c8]
inc rax
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x2d8]
add rax, 0x18
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x258]
shl rax, 1
cmp qword [rsp + 0x1c8], rax
jge 0x140024e5a
mov rcx, qword [rsp + 0x2d8]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x140024e0e
lea rcx, [rsp + 0x1f8]
call fcn.140001df0
xor eax, eax
test eax, eax
jne 0x1400234f2
cmp qword [rsp + 0x88], 0
je 0x140024eec
cmp qword [rsp + 0x98], 0
je 0x140024ea8
mov rax, qword [rsp + 0x88]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x88]
call qword [rax + LHashValOfNameSysA]
cmp qword [rsp + 0xa0], 0
je 0x140024ed4
mov rax, qword [rsp + 0x88]
mov rax, qword [rax]
mov rdx, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x88]
call qword [rax + 0xa8]
mov rax, qword [rsp + 0x88]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x88]
call qword [rax + SafeArrayGetElemsize]
jmp 0x140024f3d
cmp qword [rsp + 0x98], 0
jne 0x140024f10
cmp qword [rsp + 0xa0], 0
jne 0x140024f10
mov qword [rsp + 0x798], 1
jmp 0x140024f1c
mov qword [rsp + 0x798], 0
mov r9d, 0xb1b
lea r8, [0x140148580]
lea rdx, str.pFuncDesc__0__pVarDesc__0
mov rcx, qword [rsp + 0x798]
call fcn.14000f120
cmp qword [rsp + 0x68], 0
je 0x140024f55
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x68]
call qword [rax + SafeArrayGetElemsize]
cmp dword [rsp + 0x50], 0
je 0x140024f75
cmp qword [rsp + 0x7d8], 0
je 0x140024f75
mov rcx, qword [rsp + 0x7d8]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rax, qword [rsp + 0x7c0]
mov ecx, dword [rsp + 0x50]
mov dword [rax + 0x20], ecx
cmp dword [rsp + 0x50], 0
jne 0x140024f99
mov qword [rsp + 0x7a0], 1
jmp 0x140024fa5
mov qword [rsp + 0x7a0], 0
mov rax, qword [rsp + 0x7a0]
mov qword [rsp + 0x6b0], rax
lea rcx, [rsp + 0x108]
call fcn.140001df0
nop
lea rcx, [rsp + 0xb8]
call fcn.140001df0
mov rax, qword [rsp + 0x6b0]
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.OLEAUT32.dll_SafeArrayGetUBound
call fcn.14005d920
mov rax, rdi
mov rcx, qword [rsp + 0x7a8]
xor rcx, rsp
call fcn.14005db80
add rsp, 0x7b0
pop rdi
ret