Function at 0x1030e43
Capabilities:
Set registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x140
mov eax, dword [0x106b508]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor ebx, ebx
push 0x100412c
mov dword [ebp - 0x10c], ecx
mov esi, 0x100
push 0x5e
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x120], ebx
mov dword [ebp - 0x118], ebx
mov dword [ebp - 0x11c], ebx
mov dword [ebp - 0x114], ebx
mov dword [ebp - 0x108], ebx
mov dword [ebp - 0x124], esi
mov dword [ebp - 0x110], ebx
call sub.vdsutil.dll_public:_void___thiscall_CVdsCallTracer::constructor_unsigned_long_int__char_const__
push esi
lea eax, [ebp - 0x104]
push ebx
push eax
call sub.msvcrt.dll_memset
xor eax, eax
lea edi, [ebp - 0x140]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add esp, 0xc
stosd dword es:[edi], eax
push ebx
push ebx
stosd dword es:[edi], eax
call dword [sym.imp.ole32.dll_CoInitializeEx]
mov esi, eax
cmp esi, ebx
jge 0x1030edb
push esi
push 0x1004100
jmp 0x10310e1
mov ecx, dword [ebp - 0x10c]
call fcn.0102e533
test eax, eax
jne 0x1030efa
mov esi, 0x80004005
push esi
push 0x10040d4
jmp 0x10310e1
mov ecx, dword [ebp - 0x10c]
call fcn.0102dee6
cmp eax, 1
je 0x1030f2b
call dword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_GetLastError]
cmp eax, ebx
jle 0x1030f1e
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
push esi
push 0x10040a8
jmp 0x10310e1
push ebx
push dword [ebp + 8]
push 0x106b610
call dword [sym.imp.ATL.DLL_AtlModuleRegisterServer]
mov esi, eax
cmp esi, ebx
jge 0x1030f4b
push esi
push 0x100407c
jmp 0x10310e1
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x140]
push eax
push 1
call sub.vdsutil.dll_unsigned_long_int___stdcall_InitializeSecurityDescriptor_unsigned_long_int__void___struct__ACL____void____void____void___
mov dword [ebp - 0x108], eax
cmp eax, ebx
je 0x1030f9a
mov esi, eax
jle 0x1030f8f
and esi, 0xffff
or esi, 0x80070000
push esi
push 0x1004050
jmp 0x10310e1
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x140]
push eax
call dword [sym.imp.API_MS_Win_Security_Base_L1_1_0.dll_MakeSelfRelativeSD]
test eax, eax
jne 0x1030fda
call dword [sym.imp.API_MS_Win_Core_ErrorHandling_L1_1_0.dll_GetLastError]
cmp eax, ebx
jle 0x1030fcd
and eax, 0xffff
or eax, 0x80070000
mov esi, eax
push esi
push 0x1004024
jmp 0x10310e1
lea eax, [ebp - 0x104]
push eax
call dword [sym.imp.API_MS_Win_Security_Base_L1_1_0.dll_GetSecurityDescriptorLength]
mov dword [ebp - 0x10c], eax
lea eax, [ebp - 0x110]
push eax
push 0x2000000
push ebx
push 0x1001a58
push 0x80000000
call dword [sym.imp.API_MS_Win_Core_LocalRegistry_L1_1_0.dll_RegOpenKeyExW]
mov dword [ebp - 0x108], eax
cmp eax, ebx
je 0x103102f
mov esi, eax
jle 0x1031024
and esi, 0xffff
or esi, 0x80070000
push esi
push 0x1003ff8
jmp 0x10310e1
push dword [ebp - 0x10c]
mov edi, dword [sym.imp.API_MS_Win_Core_LocalRegistry_L1_1_0.dll_RegSetValueExW]
lea eax, [ebp - 0x104]
push eax
push 3
push ebx
push 0x1003fd4
push dword [ebp - 0x110]
call edi
mov dword [ebp - 0x108], eax
cmp eax, ebx
je 0x1031074
mov esi, eax
jle 0x103106c
and esi, 0xffff
or esi, 0x80070000
push esi
push 0x1003fa8
jmp 0x10310e1
push dword [ebp - 0x10c]
lea eax, [ebp - 0x104]
push eax
push 3
push ebx
push 0x1003f84
push dword [ebp - 0x110]
call edi
mov dword [ebp - 0x108], eax
cmp eax, ebx
je 0x10310b3
mov esi, eax
jle 0x10310ab
and esi, 0xffff
or esi, 0x80070000
push esi
push 0x1003f58
jmp 0x10310e1
push dword [ebp - 0x110]
call dword [sym.imp.API_MS_Win_Core_LocalRegistry_L1_1_0.dll_RegCloseKey]
mov dword [ebp - 0x108], eax
cmp eax, ebx
je 0x10310ec
mov esi, eax
cmp esi, ebx
jle 0x10310db
and esi, 0xffff
or esi, 0x80070000
push esi
push 0x1003f2c
push ebx
push 0x5e
call sub.vdsutil.dll_void___cdecl_VdsTraceEx_unsigned_long_int__unsigned_long_int__char__
add esp, 0x10
push dword [ebp - 0x120]
mov edi, dword [sym.imp.API_MS_Win_Core_Heap_L1_1_0.dll_GetProcessHeap]
push ebx
call edi
push eax
call sub.vdsutil.dll_int___stdcall_VdsHeapFree_void___unsigned_long_int__void__
push dword [ebp - 0x118]
mov dword [ebp - 0x120], ebx
push ebx
call edi
push eax
call sub.vdsutil.dll_int___stdcall_VdsHeapFree_void___unsigned_long_int__void__
push dword [ebp - 0x11c]
mov dword [ebp - 0x118], ebx
push ebx
call edi
push eax
call sub.vdsutil.dll_int___stdcall_VdsHeapFree_void___unsigned_long_int__void__
push dword [ebp - 0x114]
mov dword [ebp - 0x11c], ebx
push ebx
call edi
push eax
call sub.vdsutil.dll_int___stdcall_VdsHeapFree_void___unsigned_long_int__void__
cmp esi, ebx
mov dword [ebp - 0x114], ebx
jge 0x103115a
push 0x2010009
push dword [ebp - 0x108]
call fcn.0102ce3f
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp - 0x12c]
call sub.vdsutil.dll_public:_void___thiscall_CVdsCallTracer::destructor_void_
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.010634db
leave
ret 4