Function at 0x10012d00
Capabilities:
Print debug messages

Disassembly:
sub esp, 0x194
mov eax, dword [0x1001f090]
xor eax, esp
mov dword [esp + 0x190], eax
movdqu xmm0, xmmword [str.0x00000000_n]
push ebx
mov ebx, dword [0x1001f698]
push ebp
push esi
mov esi, dword [esp + 0x1a4]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
movdqu xmmword [esp + 0x38], xmm0
push str._WARNING___PE_SIGNATURE_VERIFICATION_FAILED_____n_Filename:
movq xmm0, qword [0x1001a084]
movq qword [esp + 0x4c], xmm0
call edi
push esi
call edi
push str._n_Error:
call edi
mov ebp, dword [esp + 0x1ac]
mov ecx, ebp
shr ecx, 0x1c
and ecx, 0xf
cmp ecx, 0xa
sbb eax, eax
and eax, 0xfffffff9
add eax, 0x37
add cx, ax
mov word [esp + 0x3c], cx
mov ecx, ebp
shr ecx, 0x18
and ecx, 0xf
cmp ecx, 0xa
sbb eax, eax
and eax, 0xfffffff9
add eax, 0x37
add cx, ax
mov word [esp + 0x3e], cx
mov ecx, ebp
shr ecx, 0x14
and ecx, 0xf
cmp ecx, 0xa
sbb eax, eax
and eax, 0xfffffff9
add eax, 0x37
add cx, ax
mov word [esp + 0x40], cx
mov ecx, ebp
shr ecx, 0x10
and ecx, 0xf
cmp ecx, 0xa
sbb eax, eax
and eax, 0xfffffff9
add eax, 0x37
add cx, ax
mov word [esp + 0x42], cx
mov ecx, ebp
shr ecx, 0xc
and ecx, 0xf
cmp ecx, 0xa
sbb eax, eax
and eax, 0xfffffff9
add eax, 0x37
add cx, ax
mov word [esp + 0x44], cx
mov ecx, ebp
shr ecx, 8
and ecx, 0xf
cmp ecx, 0xa
sbb eax, eax
and eax, 0xfffffff9
add eax, 0x37
add cx, ax
mov word [esp + 0x46], cx
mov ecx, ebp
shr ecx, 4
and ecx, 0xf
cmp ecx, 0xa
sbb eax, eax
and eax, 0xfffffff9
add eax, 0x37
add cx, ax
mov word [esp + 0x48], cx
mov ecx, ebp
and ecx, 0xf
cmp ecx, 0xa
sbb eax, eax
and eax, 0xfffffff9
add eax, 0x37
add cx, ax
lea eax, [esp + 0x38]
push eax
mov word [esp + 0x4e], cx
call edi
test ebx, ebx
jne 0x100130de
cmp dword [0x1001f084], ebx
je 0x1001311a
mov esi, dword [0x1001f690]
xor eax, eax
mov dword [esp + 0x30], 0x2000100
mov word [esp + 0x34], ax
mov dword [esp + 0x20], 0x41fcc608
mov dword [esp + 0x24], 0x4def8496
mov dword [esp + 0x28], 0x9b7d3eb4
mov dword [esp + 0x2c], 0xffa675d6
mov dword [0x1001f084], eax
test esi, esi
jne 0x10012ecb
push 0x10019e70
call fcn.10011940
mov edi, eax
add esp, 4
xor eax, eax
cmp eax, 0x10019e70
je 0x10012ea9
test edi, edi
je 0x10012eb6
push 0
push 0
push edi
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov esi, eax
push edi
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [0x1001f690], esi
test esi, esi
je 0x1001312a
cmp dword [0x1001f694], 0
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
jne 0x10012ef5
push str.RegOpenKeyExW
push esi
call edi
mov dword [0x1001f694], eax
test eax, eax
je 0x1001312a
mov esi, dword [0x1001f690]
cmp dword [0x1001f69c], 0
jne 0x10012f19
push str.RegEnumValueW
push esi
call edi
mov dword [0x1001f69c], eax
test eax, eax
je 0x1001312a
mov esi, dword [0x1001f690]
cmp dword [0x1001f6a4], 0
jne 0x10012f37
push str.RegCloseKey
push esi
call edi
mov dword [0x1001f6a4], eax
test eax, eax
je 0x1001312a
cmp dword [0x1001f6b8], 0
jne 0x10012f6a
push 0
push str.Ole32.dll
call fcn.10012ca0
add esp, 8
mov dword [0x1001f6b8], eax
test eax, eax
je 0x10012f6a
push str.StringFromGUID2
push eax
call edi
mov esi, eax
mov dword [0x1001f6bc], esi
jmp 0x10012f70
mov esi, dword [0x1001f6bc]
test esi, esi
je 0x1001312a
push 0x4e
lea eax, [esp + 0x54]
push 0
push eax
call sub.MSVCR120.dll_memset
add esp, 0xc
lea eax, [esp + 0x50]
push 0x27
push eax
lea eax, [esp + 0x28]
push eax
call esi
cmp eax, 0x27
jne 0x1001312a
lea ebp, [esp + 0x30]
jmp 0x10012fb0
movzx eax, word [ebp]
test ax, ax
je 0x1001310f
lea ecx, [esp + 0x10]
mov dword [esp + 0x10], 0
push ecx
or eax, 0x20019
push eax
push 0
push str.SOFTWARENVIDIA_CorporationGlobal
push 0x80000002
call dword [0x1001f694]
test eax, eax
jne 0x100130d3
xor esi, esi
xor edi, edi
mov edi, edi
push 0x100
lea eax, [esp + 0xa4]
mov dword [esp + 0x18], 0x80
push 0
push eax
mov dword [esp + 0x24], 4
call sub.MSVCR120.dll_memset
add esp, 0xc
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x20]
push eax
push 0
push 0
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0xb4]
push eax
push esi
push dword [esp + 0x2c]
call dword [0x1001f69c]
inc esi
test eax, eax
jne 0x100130b1
lea eax, [esp + 0x50]
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10013050
sub eax, edx
sar eax, 1
cmp eax, dword [esp + 0x14]
jne 0x10012ff0
lea ecx, [esp + 0xa0]
lea eax, [esp + 0x50]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x10013096
test dx, dx
je 0x10013092
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x10013096
add eax, 4
add ecx, 4
test dx, dx
jne 0x10013070
xor eax, eax
jmp 0x1001309b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x10012ff0
cmp dword [esp + 0x1c], eax
setne al
or edi, eax
jmp 0x10012ff0
cmp eax, 0x103
jne 0x10012ff0
push dword [esp + 0x10]
call dword [0x1001f6a4]
xor ebx, ebx
test edi, edi
setne bl
mov dword [0x1001f698], ebx
add ebp, 2
test ebx, ebx
je 0x10012fb0
push str._Signature_override_detected..._n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, 1
mov ecx, dword [esp + 0x1a0]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10015b7c
add esp, 0x194
ret
test ebx, ebx
jne 0x100130de
mov ebp, dword [esp + 0x1ac]
cmp dword [0x1001f698], 0
jne 0x100130de
push ebp
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x100130f6