Function at 0x1000aa80
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x334
mov eax, dword [0x1006de68]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x320], 0
mov byte [ebp - 0x319], 0
mov dword [ebp - 0x32c], 0
mov dword [ebp - 0x324], 0
cmp dword [ebp + 0xc], 0
jne 0x1000aad4
movzx eax, byte [ebp - 0x319]
jmp 0x1000aea2
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x218]
push ecx
call sub.MSVCR120.dll_strcpy
add esp, 8
push str.db21
lea edx, [ebp - 0x218]
push edx
call sub.MSVCR120.dll_strcat
add esp, 8
push str.code
lea eax, [ebp - 0x218]
push eax
call sub.MSVCR120.dll_strcat
add esp, 8
push str._
lea ecx, [ebp - 0x218]
push ecx
call sub.MSVCR120.dll_strcat
add esp, 8
mov edx, dword [ebp + 0x1c]
push edx
lea eax, [ebp - 0x218]
push eax
call sub.MSVCR120.dll_strcat
add esp, 8
push str.SOFTWAREAspentechInfoplus.21
lea ecx, [ebp - 0x114]
push ecx
call sub.MSVCR120.dll_strcpy
add esp, 8
push 0x1005dd70
lea edx, [ebp - 0x114]
push edx
call sub.MSVCR120.dll_strcat
add esp, 8
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x114]
push ecx
call sub.MSVCR120.dll_strcat
add esp, 8
push 0x1005dd74
lea edx, [ebp - 0x114]
push edx
call sub.MSVCR120.dll_strcat
add esp, 8
mov eax, dword [ebp + 0x18]
push eax
lea ecx, [ebp - 0x114]
push ecx
call sub.MSVCR120.dll_strcat
add esp, 8
push 0x1005dd78
lea edx, [ebp - 0x114]
push edx
call sub.MSVCR120.dll_strcat
add esp, 8
push 0x1005dd7c
lea eax, [ebp - 0x114]
push eax
call sub.MSVCR120.dll_strcat
add esp, 8
call sym.CIMIO_NO_WRITE.dll_CIMIO_IsWow64
mov dword [ebp - 0x32c], eax
cmp dword [ebp - 0x32c], 1
jne 0x1000abe4
cmp dword [ebp + 8], 0
je 0x1000abe4
mov dword [ebp - 0x324], 0x100
cmp dword [ebp - 0x32c], 1
jne 0x1000abfd
cmp dword [ebp + 8], 0
jne 0x1000abfd
mov dword [ebp - 0x324], 0x200
lea ecx, [ebp - 0x328]
push ecx
mov edx, dword [ebp - 0x324]
or edx, 0x20006
push edx
push 0
lea eax, [ebp - 0x114]
push eax
push reloc.WSOCK32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x1000ac33
jmp 0x1000ae9b
lea ecx, [ebp - 0x114]
push ecx
lea edx, [ebp - 0x318]
push edx
call sub.MSVCR120.dll_strcpy
add esp, 8
push 0x1005dd8c
lea eax, [ebp - 0x318]
push eax
call sub.MSVCR120.dll_strcat
add esp, 8
mov ecx, dword [ebp + 0x14]
push ecx
lea edx, [ebp - 0x318]
push edx
call sub.MSVCR120.dll_strcat
add esp, 8
lea eax, [ebp - 0x320]
push eax
mov ecx, dword [ebp - 0x324]
or ecx, 0x20006
push ecx
push 0
lea edx, [ebp - 0x318]
push edx
push reloc.WSOCK32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x1000aca6
jmp 0x1000ae9b
lea eax, [ebp - 0x334]
push eax
lea ecx, [ebp - 0x320]
push ecx
push 0
mov edx, dword [ebp - 0x324]
or edx, 2
push edx
push 0
push 0x1005dbd1
push 0
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp - 0x328]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
je 0x1000ace8
jmp 0x1000ae9b
mov dword [ebp - 0x330], 0
mov edx, dword [ebp + 0x20]
push edx
push 0x1005dd90
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.MSVCR120.dll_sprintf]
add esp, 0xc
push 1
push 0x1005dbd2
push 2
push 0
push str.CWD
mov ecx, dword [ebp - 0x320]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 1
push 0x1005dbd3
push 2
push 0
push str.ERR
mov edx, dword [ebp - 0x320]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
lea eax, [ebp - 0x218]
push eax
call sub.MSVCR120.dll_strlen
add esp, 4
add eax, 1
push eax
lea ecx, [ebp - 0x218]
push ecx
push 2
push 0
push str.EXE
mov edx, dword [ebp - 0x320]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 1
push 0x1005dbd9
push 2
push 0
push str.INP
mov eax, dword [ebp - 0x320]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 1
push 0x1005dbda
push 2
push 0
push str.OUT
mov ecx, dword [ebp - 0x320]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 1
push 0x1005dbdb
push 2
push 0
push str.PAR
mov edx, dword [ebp - 0x320]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 0x1005ddc4
call sub.MSVCR120.dll_strlen
add esp, 4
add eax, 1
push eax
push 0x1005ddcc
push 1
push 0
push str.external
mov eax, dword [ebp - 0x320]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
lea ecx, [ebp - 0x14]
push ecx
call sub.MSVCR120.dll_strlen
add esp, 4
add eax, 1
push eax
lea edx, [ebp - 0x14]
push edx
push 1
push 0
push str.order
mov eax, dword [ebp - 0x320]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea ecx, [ebp - 0x330]
push ecx
push 4
push 0
push str.SkipDuringStartup
mov edx, dword [ebp - 0x320]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 1
push 0x1005dbde
push 1
push 0
push str.SubSystem
mov eax, dword [ebp - 0x320]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea ecx, [ebp - 0x330]
push ecx
push 4
push 0
push str.WaitForInitTime
mov edx, dword [ebp - 0x320]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov eax, dword [ebp - 0x320]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0x328]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov byte [ebp - 0x319], 1
movzx eax, byte [ebp - 0x319]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10059cde
mov esp, ebp
pop ebp
ret