Function at 0x10010c8d8
Capabilities:
Check if file exists
Delete registry value

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x500
mov qword [rsp + 0x88], 0xfffffffffffffffe
mov qword [rax + 0x20], rbx
mov rax, qword [0x100176150]
xor rax, rsp
mov qword [rsp + 0x4f0], rax
mov r14d, r9d
mov r15, r8
mov r13, rdx
mov rdi, rcx
mov qword [rsp + 0x60], rcx
xor ebx, ebx
mov ebp, ebx
lea r12d, [rbx + 1]
lea rcx, [0x100040bb8]
call fcn.10011cf34
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0x2d0], rbx
xor edx, edx
mov r8d, 0x220
lea rcx, [rsp + 0xb0]
call sub.msvcrt.dll_memset
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x48], rbx
mov dword [rsp + 0x68], ebx
mov qword [rsp + 0x70], rbx
mov dword [rsp + 0x78], ebx
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x40], rbx
mov word [rsp + 0x2e0], bx
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0x2e2]
call sub.msvcrt.dll_memset
cmp rdi, rbx
jne 0x10010ca0d
mov r12d, ebx
lea ebp, [rbx + 0x57]
lea rbx, [0x100177368]
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d339
test byte [rcx + 0x1c], 8
je 0x10010d334
lea edx, [rbp - 0x46]
lea rax, [0x100040be0]
mov qword [rsp + 0x20], rax
mov r9d, ebp
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
lea rcx, [0x100044750]
call fcn.10011cf34
mov qword [rsp + 0x38], rbx
lea r8, [rsp + 0x38]
xor edx, edx
lea rcx, [0x100044650]
call fcn.1001225ac
mov rsi, qword [rsp + 0x38]
lea rbx, [0x100177368]
xor edi, edi
cmp eax, edi
jne 0x10010caa7
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x10010cafc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010cafc
test byte [rax + 0x1c], 8
je 0x10010cafc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, reloc.ATL.DLL_AtlInternalQueryInterface
lea rax, [0x10003fc40]
mov qword [rsp + 0x20], rax
lea r8, [0x100002e10]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
jmp 0x10010cafc
lea rdx, [0x100044778]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov edi, eax
test eax, eax
je 0x10010cafa
cmp eax, 2
je 0x10010cafa
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010cafc
test byte [rcx + 0x1c], 8
je 0x10010cafc
mov edx, 0x21
lea rax, [0x100044798]
mov qword [rsp + 0x20], rax
mov r9d, edi
lea r8, [0x100002e10]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
jmp 0x10010cafc
xor edi, edi
test rsi, rsi
je 0x10010cb0a
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rcx, [0x100044750]
call fcn.10011cf74
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [0x100040bf0]
call fcn.10011d01c
xor ecx, ecx
cmp eax, ecx
jne 0x10010cb8e
mov r12d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d32f
test byte [rcx + 0x1c], 8
je 0x10010d32a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, AtlModuleRevokeClassObjects
lea rcx, [0x100040138]
mov qword [rsp + 0x20], rcx
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
lea rcx, [rsp + 0x40]
call fcn.100120350
xor edx, edx
cmp eax, edx
jne 0x10010cbfc
mov r12d, edx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010cbf4
test byte [rax + 0x1c], 8
je 0x10010cbf4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, AtlModuleRevokeClassObjects
lea rcx, [0x100040138]
mov qword [rsp + 0x20], rcx
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
xor eax, eax
or rcx, 0xffffffffffffffff
mov r8, qword [rsp + 0x40]
mov rdi, r8
repne scasw ax, word [rdi]
not rcx
lea esi, [rax + 1]
sub rcx, rsi
cmp rcx, 2
ja 0x10010cc67
mov r12d, edx
lea r9d, [rax + 0xb]
mov ebp, r9d
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d325
test byte [rcx + 0x1c], 8
je 0x10010d320
lea edx, [rax + 0x14]
lea rax, [0x100040c30]
mov qword [rsp + 0x20], rax
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
cmp word [r8 + rcx*2 - 2], 0x5c
jne 0x10010cc76
mov word [r8 + rcx*2 - 2], dx
mov eax, 0x3f
mov word [r8 + 2], ax
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010ccad
test byte [rcx + 0x1c], 2
je 0x10010ccad
lea edx, [rax - 0x2a]
mov r9, r8
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106e10
mov r8, qword [rsp + 0x40]
mov rdx, r8
mov rcx, r13
call fcn.10011d7a0
xor ecx, ecx
cmp eax, ecx
jne 0x10010cd1c
mov r12d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d31b
test byte [rax + 0x1c], 8
je 0x10010d316
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, AtlModuleUpdateRegistryFromResourceD
lea rax, [0x100040c50]
mov qword [rsp + 0x20], rax
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
lea rcx, [rsp + 0x50]
call fcn.100120514
xor edx, edx
cmp eax, edx
jne 0x10010cd97
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
call fcn.100117c3c
cmp eax, 2
je 0x10010ceb4
xor eax, eax
mov r12d, eax
mov ebp, 0x80042416
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010cd8f
test byte [rcx + 0x1c], 8
je 0x10010cd8f
lea edx, [rax + 0x17]
mov dword [rsp + 0x28], edi
lea rax, [0x100040c98]
mov qword [rsp + 0x20], rax
mov r9d, 0x80042416
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.10010d870
mov rcx, r12
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
xor eax, eax
or rcx, 0xffffffffffffffff
mov r8, qword [rsp + 0x50]
mov rdi, r8
repne scasw ax, word [rdi]
not rcx
sub rcx, rsi
cmp rcx, 2
ja 0x10010cdff
mov r12d, edx
lea r9d, [rax + 0xb]
mov ebp, r9d
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d311
test byte [rcx + 0x1c], 8
je 0x10010d30c
lea edx, [rax + 0x18]
lea rax, [0x100040c30]
mov qword [rsp + 0x20], rax
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
cmp word [r8 + rcx*2 - 2], 0x5c
jne 0x10010ce0e
mov word [r8 + rcx*2 - 2], dx
mov eax, 0x3f
mov word [r8 + 2], ax
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010ce45
test byte [rcx + 0x1c], 2
je 0x10010ce45
lea edx, [rax - 0x26]
mov r9, r8
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106e10
mov r8, qword [rsp + 0x50]
mov rdx, r8
mov rcx, r13
call fcn.10011d7a0
xor ecx, ecx
cmp eax, ecx
jne 0x10010ceb4
mov r12d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d307
test byte [rax + 0x1c], 8
je 0x10010d302
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, AtlComPtrAssign
lea rax, [0x100040cc0]
mov qword [rsp + 0x20], rax
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
mov edx, 0x104
lea rcx, [rsp + 0x2e0]
call fcn.10011f0fc
mov edi, eax
xor edx, edx
cmp eax, edx
je 0x10010d00f
cmp word [rsp + 0x2e0], dx
je 0x10010d00f
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x2e0]
repne scasw ax, word [rdi]
not rcx
sub rcx, rsi
cmp ecx, 2
ja 0x10010cf47
mov r12d, edx
lea r9d, [rdx + 0xb]
mov ebp, r9d
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d2fd
test byte [rcx + 0x1c], 8
je 0x10010d2f8
lea edx, [rax + 0x1b]
lea rax, [0x100040c30]
mov qword [rsp + 0x20], rax
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
lea eax, [rcx - 1]
cmp word [rsp + rax*2 + 0x2e0], 0x5c
jne 0x10010cf5d
mov word [rsp + rax*2 + 0x2e0], dx
mov eax, 0x3f
mov word [rsp + 0x2e2], ax
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010cf97
test byte [rcx + 0x1c], 2
je 0x10010cf97
lea edx, [rax - 0x23]
lea r9, [rsp + 0x2e0]
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106e10
lea rdx, [rsp + 0x2e0]
mov rcx, r13
call fcn.10011d7a0
xor ecx, ecx
cmp eax, ecx
jne 0x10010d0a6
mov r12d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d2f3
test byte [rax + 0x1c], 8
je 0x10010d2ee
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, AtlInternalQueryInterface
lea rax, [0x100040d10]
mov qword [rsp + 0x20], rax
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d048
test byte [rax + 0x1c], 2
je 0x10010d048
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, reloc.ATL.DLL_AtlComPtrAssign
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106e90
xor edx, edx
cmp edi, edx
jne 0x10010d0a6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, AtlModuleInit
cmp eax, r9d
jne 0x10010d0a6
xor eax, eax
mov r12d, eax
mov ebp, r9d
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d2e9
test byte [rcx + 0x1c], 8
je 0x10010d2e4
lea edx, [rax + 0x1f]
lea rax, [0x100040d58]
mov qword [rsp + 0x20], rax
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
mov dword [rsp + 0x20], r14d
mov r9, r15
mov r8, r13
mov edx, esi
lea rcx, [rsp + 0x90]
call fcn.10011c828
xor ecx, ecx
cmp eax, ecx
jne 0x10010d124
mov r12d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d2df
test byte [rax + 0x1c], 8
je 0x10010d2da
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, reloc.ATL.DLL_AtlInternalQueryInterface
lea rcx, [0x100040138]
mov qword [rsp + 0x20], rcx
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
lea rcx, [rsp + 0x48]
call fcn.10012f4e4
xor ecx, ecx
cmp eax, ecx
jne 0x10010d192
mov r12d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d18a
test byte [rax + 0x1c], 8
je 0x10010d18a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, 0x21
lea rcx, [0x100040138]
mov qword [rsp + 0x20], rcx
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov dword [rsp + 0x20], r14d
mov r9, r15
mov r8, qword [r13]
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x68]
call fcn.10010d9b4
xor ecx, ecx
cmp eax, ecx
jne 0x10010d214
mov r12d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d20c
test byte [rax + 0x1c], 8
je 0x10010d20c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, 0x22
lea rax, [0x100040d70]
mov qword [rsp + 0x20], rax
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x90]
call fcn.10010c398
xor ecx, ecx
cmp eax, ecx
jne 0x10010d298
mov r12d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d28e
test byte [rax + 0x1c], 8
je 0x10010d28e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, 0x23
lea rcx, [0x100040138]
mov qword [rsp + 0x20], rcx
lea r8, [0x1000040d0]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
mov rcx, qword [rsp + 0x58]
jmp 0x10010d33c
mov rcx, qword [rsp + 0x58]
jmp 0x10010d33c
call fcn.10011efc4
xor edi, edi
cmp eax, edi
jne 0x10010d2c8
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d2c8
test byte [rcx + 0x1c], 4
je 0x10010d2c8
lea edx, [rdi + 0x24]
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106cf8
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x60]
mov qword [rcx], rax
mov rcx, rdi
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
mov rcx, rax
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
jmp 0x10010d33c
mov rcx, r12
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
xor eax, eax
mov esi, eax
lea rcx, [0x1000447b0]
call fcn.10011cf34
xor eax, eax
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x38]
lea r13d, [rax + 1]
mov edx, r13d
lea rcx, [0x100044650]
call fcn.1001225ac
mov rdi, qword [rsp + 0x38]
xor ecx, ecx
cmp eax, ecx
jne 0x10010d3ea
mov r13d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d462
test byte [rcx + 0x1c], 8
je 0x10010d462
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, 0x22
lea rax, [0x10003fc40]
mov qword [rsp + 0x20], rax
lea r8, [0x100002e10]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
jmp 0x10010d462
mov dword [rsp + 0x30], ebp
mov eax, 4
mov dword [rsp + 0x20], eax
mov r9d, eax
lea r8, [rsp + 0x30]
lea rdx, [0x100044778]
mov rcx, rdi
call fcn.100122b28
xor ecx, ecx
cmp eax, ecx
jne 0x10010d462
mov r13d, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov rax, qword [0x100177368]
cmp rax, rbx
je 0x10010d462
test byte [rax + 0x1c], 8
je 0x10010d462
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
mov edx, 0x23
lea rax, [0x10003fc40]
mov qword [rsp + 0x20], rax
lea r8, [0x100002e10]
mov rcx, qword [0x100177368]
mov rcx, qword [rcx + 0x10]
call fcn.100106f14
xor eax, eax
cmp rdi, rax
je 0x10010d472
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rcx, [0x1000447b0]
call fcn.10011cf74
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor esi, esi
cmp r13d, esi
jne 0x10010d4b5
mov rcx, qword [0x100177368]
cmp rcx, rbx
je 0x10010d4b5
test byte [rcx + 0x1c], 8
je 0x10010d4b5
lea edx, [rsi + 0x25]
mov r9d, ebp
lea r8, [0x1000040d0]
mov rcx, qword [rcx + 0x10]
call fcn.100106e90
lea rcx, [0x100040bb8]
call fcn.10011cf74
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
nop
mov ebx, 0x88
mov rcx, qword [rsp + 0x70]
cmp rcx, rsi
je 0x10010d4f7
lea rdi, [rcx - 8]
lea r9, [0x10010e7c0]
mov r8d, dword [rdi]
mov rdx, rbx
call fcn.100130e6c
mov rcx, rdi
call fcn.1001308d8
mov rcx, qword [rsp + 0x80]
cmp rcx, rsi
je 0x10010d523
lea rdi, [rcx - 8]
lea r9, [0x10010e7c0]
mov r8d, dword [rdi]
mov rdx, rbx
call fcn.100130e6c
mov rcx, rdi
call fcn.1001308d8
nop
cmp qword [rsp + 0x48], rsi
je 0x10010d535
lea rcx, [rsp + 0x48]
call fcn.10010a2f4
nop
lea rcx, [rsp + 0xa0]
call fcn.1001166f0
lea rcx, [rsp + 0xa8]
call fcn.1001166f0
mov rcx, qword [rsp + 0xb0]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0xb0], rsi
mov rcx, qword [rsp + 0xb8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0xb8], rsi
mov rcx, qword [rsp + 0xc0]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0xc0], rsi
mov rcx, qword [rsp + 0xc8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0xc8], rsi
mov rcx, qword [rsp + 0xd8]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0xd8], rsi
mov rcx, qword [rsp + 0x2d0]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x2d0], rsi
mov rcx, qword [rsp + 0x90]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x90], rsi
mov rcx, qword [rsp + 0x98]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov eax, r12d
mov rcx, qword [rsp + 0x4f0]
xor rcx, rsp
call fcn.100130df0
mov rbx, qword [rsp + 0x558]
add rsp, 0x500
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret