Function at 0x4380c0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1ec
mov eax, dword [0x489e88]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x48b948]
mov dword [ebp - 0x190], eax
mov ecx, dword [str.0x00000000_n]
mov dword [ebp - 0x24], ecx
mov edx, dword [0x489c68]
mov dword [ebp - 0x20], edx
mov eax, dword [0x489c6c]
mov dword [ebp - 0x1c], eax
mov ecx, dword [0x489c70]
mov dword [ebp - 0x18], ecx
mov edx, dword [0x489c74]
mov dword [ebp - 0x14], edx
mov eax, dword [0x489c78]
mov dword [ebp - 0x10], eax
push str._WARNING___PE_SIGNATURE_VERIFICATION_FAILED_____n_Filename:
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push str._n_Error:
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov dword [ebp - 0x188], 0
jmp 0x43814d
mov edx, dword [ebp - 0x188]
add edx, 1
mov dword [ebp - 0x188], edx
cmp dword [ebp - 0x188], 8
jge 0x4381bb
mov ecx, 7
sub ecx, dword [ebp - 0x188]
shl ecx, 2
mov eax, dword [ebp + 0xc]
shr eax, cl
and eax, 0xf
mov ecx, dword [ebp - 0x188]
mov word [ebp + ecx*2 - 0x20], ax
mov edx, dword [ebp - 0x188]
movzx eax, word [ebp + edx*2 - 0x20]
cmp eax, 0xa
jge 0x438193
mov dword [ebp - 0x1b4], 0x30
jmp 0x43819d
mov dword [ebp - 0x1b4], 0x37
mov ecx, dword [ebp - 0x188]
movzx edx, word [ebp + ecx*2 - 0x20]
add edx, dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x188]
mov word [ebp + eax*2 - 0x20], dx
jmp 0x43813e
lea ecx, [ebp - 0x24]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
cmp dword [ebp - 0x190], 0
jne 0x4386a8
cmp dword [0x489c5c], 0
je 0x4386a8
mov edx, 0x100
mov word [ebp - 0xc], dx
mov eax, 0x200
mov word [ebp - 0xa], ax
xor ecx, ecx
mov word [ebp - 8], cx
mov dword [ebp - 0x184], 0x41fcc608
mov edx, 0x8496
mov word [ebp - 0x180], dx
mov eax, 0x4def
mov word [ebp - 0x17e], ax
mov byte [ebp - 0x17c], 0xb4
mov byte [ebp - 0x17b], 0x3e
mov byte [ebp - 0x17a], 0x7d
mov byte [ebp - 0x179], 0x9b
mov byte [ebp - 0x178], 0xd6
mov byte [ebp - 0x177], 0x75
mov byte [ebp - 0x176], 0xa6
mov byte [ebp - 0x175], 0xff
mov dword [0x489c5c], 0
cmp dword [0x48b93c], 0
jne 0x43828d
push 0
push str.Advapi32.dll
call fcn.00438040
add esp, 8
mov dword [0x48b93c], eax
cmp dword [0x48b93c], 0
jne 0x43828d
mov dword [ebp - 0x1b8], 0
jmp 0x438297
mov dword [ebp - 0x1b8], 1
cmp dword [ebp - 0x1b8], 0
je 0x43837f
cmp dword [0x48b940], 0
jne 0x4382d9
push str.RegOpenKeyExW
mov ecx, dword [0x48b93c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x48b940], eax
cmp dword [0x48b940], 0
jne 0x4382d9
mov dword [ebp - 0x1bc], 0
jmp 0x4382e3
mov dword [ebp - 0x1bc], 1
cmp dword [ebp - 0x1bc], 0
je 0x43837f
cmp dword [0x48b944], 0
jne 0x438325
push str.RegEnumValueW
mov edx, dword [0x48b93c]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x48b944], eax
cmp dword [0x48b944], 0
jne 0x438325
mov dword [ebp - 0x1c0], 0
jmp 0x43832f
mov dword [ebp - 0x1c0], 1
cmp dword [ebp - 0x1c0], 0
je 0x43837f
cmp dword [0x48b950], 0
jne 0x43836c
push str.RegCloseKey
mov eax, dword [0x48b93c]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x48b950], eax
cmp dword [0x48b950], 0
jne 0x43836c
mov dword [ebp - 0x1c4], 0
jmp 0x438376
mov dword [ebp - 0x1c4], 1
cmp dword [ebp - 0x1c4], 0
jne 0x438386
xor eax, eax
jmp 0x438706
cmp dword [0x48b964], 0
jne 0x4383c3
push 0
push str.Ole32.dll
call fcn.00438040
add esp, 8
mov dword [0x48b964], eax
cmp dword [0x48b964], 0
je 0x4383c3
push str.StringFromGUID2
mov ecx, dword [0x48b964]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x48b968], eax
cmp dword [0x48b968], 0
jne 0x4383d3
xor eax, eax
jmp 0x438706
push 0x4e
push 0
lea edx, [ebp - 0x74]
push edx
call fcn.0043e920
add esp, 0xc
push 0x27
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x184]
push ecx
call dword [0x48b968]
cmp eax, 0x27
je 0x438402
xor eax, eax
jmp 0x438706
mov dword [ebp - 0x188], 0
jmp 0x43841d
mov edx, dword [ebp - 0x188]
add edx, 1
mov dword [ebp - 0x188], edx
cmp dword [ebp - 0x190], 0
jne 0x4386a8
mov eax, dword [ebp - 0x188]
movzx ecx, word [ebp + eax*2 - 0xc]
test ecx, ecx
je 0x4386a8
mov dword [ebp - 0x1ac], 0
lea edx, [ebp - 0x1ac]
push edx
mov eax, dword [ebp - 0x188]
movzx ecx, word [ebp + eax*2 - 0xc]
or ecx, 0x20019
push ecx
push 0
push str.SOFTWARENVIDIA_CorporationGlobal
push reloc.OLEAUT32.dll_SysReAllocString
call dword [0x48b940]
mov dword [ebp - 0x19c], eax
cmp dword [ebp - 0x19c], 0
jne 0x4386a3
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1c8], 0x80
mov dword [ebp - 0x1d8], 4
push 0x100
push 0
lea edx, [ebp - 0x174]
push edx
call fcn.0043e920
add esp, 0xc
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1dc], eax
lea ecx, [ebp - 0x1d8]
push ecx
lea edx, [ebp - 0x1ec]
push edx
push 0
push 0
lea eax, [ebp - 0x1c8]
push eax
lea ecx, [ebp - 0x174]
push ecx
mov edx, dword [ebp - 0x1dc]
push edx
mov eax, dword [ebp - 0x1ac]
push eax
call dword [0x48b944]
mov dword [ebp - 0x19c], eax
mov ecx, dword [ebp - 0x1a8]
add ecx, 1
mov dword [ebp - 0x1a8], ecx
cmp dword [ebp - 0x19c], 0
jne 0x438650
lea edx, [ebp - 0x74]
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0x18c]
add eax, 2
mov dword [ebp - 0x1e0], eax
mov ecx, dword [ebp - 0x18c]
mov dx, word [ecx]
mov word [ebp - 0x19e], dx
add dword [ebp - 0x18c], 2
cmp word [ebp - 0x19e], 0
jne 0x43853d
mov eax, dword [ebp - 0x18c]
sub eax, dword [ebp - 0x1e0]
sar eax, 1
mov dword [ebp - 0x1e4], eax
mov ecx, dword [ebp - 0x1e4]
cmp ecx, dword [ebp - 0x1c8]
jne 0x438650
lea edx, [ebp - 0x174]
mov dword [ebp - 0x198], edx
lea eax, [ebp - 0x74]
mov dword [ebp - 0x194], eax
mov ecx, dword [ebp - 0x194]
mov dx, word [ecx]
mov word [ebp - 0x1a0], dx
mov eax, dword [ebp - 0x198]
cmp dx, word [eax]
jne 0x4385ff
cmp word [ebp - 0x1a0], 0
je 0x4385f3
mov ecx, dword [ebp - 0x194]
mov dx, word [ecx + 2]
mov word [ebp - 0x1a2], dx
mov eax, dword [ebp - 0x198]
cmp dx, word [eax + 2]
jne 0x4385ff
add dword [ebp - 0x194], 4
add dword [ebp - 0x198], 4
cmp word [ebp - 0x1a2], 0
jne 0x438599
mov dword [ebp - 0x1cc], 0
jmp 0x43860a
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0x1cc], ecx
mov edx, dword [ebp - 0x1cc]
mov dword [ebp - 0x1e8], edx
cmp dword [ebp - 0x1e8], 0
jne 0x438650
cmp dword [ebp - 0x1ec], 0
je 0x438634
mov dword [ebp - 0x1d0], 1
jmp 0x43863e
mov dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0x1b0]
or eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x1b0], eax
cmp dword [ebp - 0x19c], 0x103
jne 0x438499
mov ecx, dword [ebp - 0x1ac]
push ecx
call dword [0x48b950]
cmp dword [ebp - 0x1b0], 0
je 0x438682
mov dword [ebp - 0x1d4], 1
jmp 0x43868c
mov dword [ebp - 0x1d4], 0
mov edx, dword [ebp - 0x1d4]
mov dword [0x48b948], edx
mov eax, dword [0x48b948]
mov dword [ebp - 0x190], eax
jmp 0x43840e
cmp dword [ebp - 0x190], 0
jne 0x4386c5
cmp dword [0x489c60], 0
je 0x4386c5
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x4386c5
int3
cmp dword [ebp - 0x190], 0
jne 0x4386d7
cmp dword [0x48b948], 0
je 0x4386fa
push str._Signature_override_detected..._n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov dword [ebp + 0xc], 0
mov ecx, dword [ebp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, 1
jmp 0x438706
mov edx, dword [ebp + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0043b9f3
mov esp, ebp
pop ebp
ret