Function at 0x416ae6
Capabilities:
Accept command line arguments
Check mutex on windows
Query or enumerate registry key

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb24
mov eax, dword [0x445610]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x47
pop eax
push 0x6c
pop ecx
push 0x6f
pop edx
push 0x62
mov word [ebp - 0xe8], ax
pop eax
push 0x61
mov word [ebp - 0xe2], ax
pop eax
push 0x4e
mov word [ebp - 0xe0], ax
pop eax
push 0x74
mov word [ebp - 0xdc], ax
pop eax
push 0x69
mov word [ebp - 0xd8], ax
pop eax
push 0x66
mov word [ebp - 0xd6], ax
mov word [ebp - 0xd2], ax
mov word [ebp - 0xe6], cx
mov word [ebp - 0xde], cx
pop ecx
push 0x65
pop eax
push 0x72
mov word [ebp - 0xd0], ax
pop eax
push 0x2d
mov word [ebp - 0xce], ax
mov word [ebp - 0xd4], cx
pop ecx
push 0x7b
pop eax
push 0x33
mov word [ebp - 0xca], ax
pop eax
push 0x36
pop ebx
push 0x44
mov word [ebp - 0xc8], ax
pop eax
push 0x41
mov esi, dword [ebp + 0x10]
mov word [ebp - 0xe4], dx
mov word [ebp - 0xda], dx
pop edx
push 0x32
mov word [ebp - 0xc4], ax
pop eax
push 0x45
pop edi
push 0x30
mov word [ebp - 0xbc], ax
pop eax
push 0x43
mov word [ebp - 0xb6], ax
pop eax
push 0x32
mov word [ebp - 0xba], di
pop edi
push 0x35
mov word [ebp - 0xb2], di
pop edi
mov word [ebp - 0xcc], cx
mov word [ebp - 0xc6], bx
mov word [ebp - 0xc2], dx
mov word [ebp - 0xc0], dx
mov word [ebp - 0xbe], dx
mov word [ebp - 0xb8], cx
mov word [ebp - 0xb4], ax
mov word [ebp - 0xb0], di
mov word [ebp - 0xae], cx
push 0x34
pop eax
push 0x42
mov word [ebp - 0xac], ax
pop eax
push 0x31
mov word [ebp - 0xa8], ax
pop eax
push 0x37
mov word [ebp - 0xa4], cx
mov word [ebp - 0x9a], cx
pop ecx
push 0x45
mov word [ebp - 0x9e], di
mov word [ebp - 0x9c], di
pop edi
push 0x43
mov word [ebp - 0xa0], ax
pop eax
push 0x31
mov word [ebp - 0xa2], dx
mov word [ebp - 0x94], dx
mov word [ebp - 0x8e], dx
pop edx
push 0x44
mov word [ebp - 0x8a], dx
pop edx
push 0x7d
mov word [ebp - 0x90], ax
mov word [ebp - 0x8c], ax
mov word [ebp - 0x84], ax
pop eax
mov word [ebp - 0x80], ax
xor eax, eax
mov word [ebp - 0x7e], ax
lea eax, [ebp - 0xe8]
mov word [ebp - 0xaa], bx
mov word [ebp - 0xa6], bx
mov word [ebp - 0x88], bx
xor ebx, ebx
push eax
push ebx
push ebx
mov word [ebp - 0x98], cx
mov word [ebp - 0x96], di
mov word [ebp - 0x92], di
mov word [ebp - 0x86], dx
mov word [ebp - 0x82], cx
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [0x446bb8], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x416cfc
xor eax, eax
jmp 0x416d59
lea eax, [ebp - 0xaf4]
push eax
push esi
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov edi, eax
mov esi, ebx
cmp dword [ebp - 0xaf4], ebx
jle 0x416d4c
push 0x72
pop eax
push 0x65
mov word [ebp - 0xc], ax
pop eax
mov word [ebp - 0xa], ax
push 0x67
pop eax
mov word [ebp - 8], ax
xor eax, eax
mov word [ebp - 6], ax
lea eax, [ebp - 0xc]
push eax
push dword [edi + esi*4]
call fcn.0041fc30
pop ecx
pop ecx
test eax, eax
je 0x416d6c
inc esi
cmp esi, dword [ebp - 0xaf4]
jl 0x416d16
push dword [ebp + 0x14]
mov ecx, 0x446bc0
call fcn.004129d4
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0042109c
mov esp, ebp
pop ebp
ret 0x10
xor eax, eax
lea edi, [ebp - 0xb24]
stosd dword es:[edi], eax
lea ecx, [ebp - 0xb24]
push 0x2001f
push 0x4388f8
push SysReAllocStringLen
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0xb24], ebx
mov dword [ebp - 0xb20], ebx
mov dword [ebp - 0xb1c], ebx
call fcn.0040edfe
test eax, eax
jne 0x417024
mov esi, ebx
mov dword [ebp - 0xaf8], 0x400
lea eax, [ebp - 0xb00]
push eax
push ebx
push ebx
push ebx
lea eax, [ebp - 0xaf8]
push eax
lea eax, [ebp - 0xaf0]
push eax
push esi
push dword [ebp - 0xb24]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
inc esi
test eax, eax
jne 0x417019
lea edi, [ebp - 0xb18]
stosd dword es:[edi], eax
lea ecx, [ebp - 0xb18]
push 0x2001f
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0xaf0]
push eax
push SysReAllocStringLen
mov dword [ebp - 0xb18], ebx
mov dword [ebp - 0xb14], ebx
mov dword [ebp - 0xb10], ebx
call fcn.0040edfe
test eax, eax
jne 0x416fff
push 0x53
lea edi, [ebp - 0xb0c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop eax
push 0x6f
mov word [ebp - 0x7c], ax
pop eax
push 0x66
mov word [ebp - 0x7a], ax
pop eax
push 0x74
mov word [ebp - 0x78], ax
pop eax
push 0x77
mov word [ebp - 0x76], ax
pop eax
push 0x61
mov word [ebp - 0x74], ax
pop eax
push 0x72
mov word [ebp - 0x72], ax
pop eax
push 0x65
pop edi
push 0x5c
mov word [ebp - 0x70], ax
pop eax
push 0x7b
mov word [ebp - 0x6c], ax
mov word [ebp - 0x6a], ax
pop eax
push 0x35
mov word [ebp - 0x68], ax
pop eax
push 0x37
pop edx
push 0x45
mov word [ebp - 0x66], ax
mov word [ebp - 0x6e], di
pop edi
push 0x34
pop eax
push 0x31
mov word [ebp - 0x60], ax
pop eax
push 0x44
mov word [ebp - 0x5e], ax
pop eax
push 0x32
mov word [ebp - 0x5c], ax
pop eax
push 0x36
mov word [ebp - 0x5a], ax
pop eax
push 0x2d
pop ecx
push 0x38
mov word [ebp - 0x64], dx
mov word [ebp - 0x54], dx
mov word [ebp - 0x52], dx
pop edx
push 0x34
mov word [ebp - 0x58], ax
mov word [ebp - 0x4e], ax
pop eax
push 0x37
mov word [ebp - 0x4a], ax
pop eax
push 0x46
mov word [ebp - 0x48], ax
pop eax
mov dword [ebp - 0xb0c], ebx
mov dword [ebp - 0xb08], ebx
mov dword [ebp - 0xb04], ebx
mov word [ebp - 0x62], di
mov word [ebp - 0x56], cx
mov word [ebp - 0x50], dx
mov word [ebp - 0x4c], cx
mov word [ebp - 0x46], ax
push 0x39
mov word [ebp - 0x44], di
mov word [ebp - 0x42], cx
pop ecx
push 0x32
pop edi
push 0x33
mov word [ebp - 0x3c], di
pop edi
push 0x2d
mov word [ebp - 0x3a], di
pop edi
push 0x31
mov word [ebp - 0x38], di
pop edi
push 0x35
mov word [ebp - 0x36], di
pop edi
push 0x33
mov word [ebp - 0x34], di
pop edi
push 0x45
mov word [ebp - 0x2e], di
pop edi
push 0x41
mov word [ebp - 0x2a], dx
pop edx
push 0x42
mov word [ebp - 0x26], dx
pop edx
push 0x7d
mov word [ebp - 0x32], ax
mov word [ebp - 0x30], ax
mov word [ebp - 0x22], ax
pop eax
push ebx
push ebx
push 0x2001f
mov word [ebp - 0x1e], ax
xor eax, eax
push ebx
mov word [ebp - 0x1c], ax
lea eax, [ebp - 0x7c]
push ebx
push eax
push dword [ebp - 0xb18]
mov word [ebp - 0x40], cx
mov word [ebp - 0x3e], cx
mov word [ebp - 0x28], cx
mov word [ebp - 0x20], cx
lea ecx, [ebp - 0xb0c]
mov word [ebp - 0x2c], di
mov word [ebp - 0x24], dx
call fcn.00406cc4
push 0x65
pop edi
test eax, eax
jne 0x416fe9
push 0x104
lea eax, [ebp - 0x2f0]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x416fde
push 0x4e
pop eax
push 0x61
mov word [ebp - 0x18], ax
lea ecx, [ebp - 0xb0c]
pop eax
push 0x6d
mov word [ebp - 0x16], ax
pop eax
mov word [ebp - 0x14], ax
xor eax, eax
mov word [ebp - 0x10], ax
lea eax, [ebp - 0x2f0]
push 1
push eax
lea eax, [ebp - 0x18]
mov word [ebp - 0x12], di
push eax
call fcn.00411fb5
lea ecx, [ebp - 0xb0c]
call fcn.00406974
lea ecx, [ebp - 0xb18]
call fcn.00406974
lea ecx, [ebp - 0xb0c]
call fcn.00406974
lea ecx, [ebp - 0xb18]
mov dword [ebp - 0xaf8], 0x400
call fcn.00406974
jmp 0x416db7
lea ecx, [ebp - 0xb24]
call fcn.00406974
lea ecx, [ebp - 0xb24]
call fcn.00406974
jmp 0x416cf8