joyce8/EMBER2024-capa huggingface dataset:
Function at 0x466738
Capabilities:
Allocate or change rwx memory

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov edi, 0x497f54
cmp dword [edi], 0
jne 0x4667b4
push 0x40
push 0x1000
push 0x1000
push 0
call sub.kernel32.dll_VirtualAlloc_1
mov esi, eax
mov eax, dword [0x497f50]
mov dword [esi], eax
lea edx, [esi + 4]
mov eax, 0x490af0
mov ecx, 2
call fcn.004030fc
mov edx, 0x466710
lea eax, [esi + 5]
call fcn.00466730
mov dword [esi + 6], eax
lea ebx, [esi + 0xa]
mov byte [ebx], 0xe8
lea edx, [esi + 4]
mov eax, ebx
call fcn.00466730
mov dword [ebx + 1], eax
mov eax, dword [edi]
mov dword [ebx + 5], eax
mov dword [edi], ebx
add ebx, 0xd
mov eax, ebx
sub eax, esi
cmp eax, 0xffc
jl 0x466789
mov dword [0x497f50], esi
mov eax, dword [edi]
mov ebx, dword [edi]
mov edx, dword [ebx + 5]
mov dword [edi], edx
mov edx, dword [ebp + 8]
mov dword [ebx + 5], edx
mov edx, dword [ebp + 0xc]
mov dword [ebx + 9], edx
pop edi
pop esi
pop ebx
pop ebp
ret 8

Function at 0x466930
Capabilities:
Capture microphone audio

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
push ebx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x466a46
push 0x20
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x94]
push eax
call sub.winmm.dll_waveInUnprepareHeader
test eax, eax
jne 0x466a51
mov eax, dword [ebp - 8]
mov ebx, dword [eax + 8]
mov eax, dword [ebp - 4]
cmp word [eax + 0xa2], 0
je 0x4669d4
mov eax, ebx
call fcn.00402f00
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x4669cd
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov eax, dword [eax]
mov ecx, ebx
call fcn.004030fc
push ebx
mov ebx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0xa4]
call dword [ebx + 0xa0]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4669d4
mov eax, dword [ebp - 0xc]
call fcn.00402f1c
ret
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 8]
mov dword [edx + 4], eax
mov eax, dword [ebp - 8]
xor edx, edx
mov dword [eax + 8], edx
mov eax, dword [ebp - 8]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 8]
xor edx, edx
mov dword [eax + 0x10], edx
mov eax, dword [ebp - 8]
xor edx, edx
mov dword [eax + 0x14], edx
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 8]
mov eax, dword [eax]
xor ecx, ecx
call fcn.00408558
push 0x20
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x94]
push eax
call sub.winmm.dll_waveInPrepareHeader
test eax, eax
jne 0x466a51
push 0x20
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x94]
push eax
call sub.winmm.dll_waveInAddBuffer
test eax, eax
jne 0x466a51
jmp 0x466a51
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.00466c04
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x466a58
Capabilities:
Capture microphone audio

Disassembly:
push ebx
push esi
push edi
add esp, 0xffffff7c
mov esi, edx
lea edi, [esp]
mov ecx, 0x20
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov ebx, eax
cmp byte [ebx + 4], 0
jne 0x466ad1
push 0x10004
push 0
mov eax, dword [ebx + 0x98]
push eax
lea eax, [esp + 0xc]
push eax
push 0
lea eax, [ebx + 0x94]
push eax
call sub.winmm.dll_waveInOpen
test eax, eax
jne 0x466ad1
movzx esi, byte [ebx + 0x91]
test esi, esi
jle 0x466ab0
mov eax, ebx
call fcn.00466b9c
dec esi
jne 0x466aa6
mov eax, dword [ebx + 0x94]
push eax
call sub.winmm.dll_waveInStart
test eax, eax
jne 0x466ad1
mov esi, esp
lea edi, [ebx + 0x10]
mov ecx, 0x20
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov byte [ebx + 4], 1
add esp, 0x84
pop edi
pop esi
pop ebx
ret

Function at 0x466b9c
Capabilities:
Capture microphone audio

Disassembly:
push ebx
push esi
push edi
mov ebx, eax
mov eax, 0x20
call fcn.00402f00
mov edi, eax
mov edx, edi
mov eax, dword [ebx + 8]
call fcn.00466114
mov esi, edi
mov eax, dword [ebx + 0xc]
call fcn.00402f00
mov dword [esi], eax
mov eax, dword [ebx + 0xc]
mov dword [esi + 4], eax
xor eax, eax
mov dword [esi + 8], eax
xor eax, eax
mov dword [esi + 0x10], eax
xor eax, eax
mov dword [esi + 0x14], eax
push 0x20
push edi
mov eax, dword [ebx + 0x94]
push eax
call sub.winmm.dll_waveInPrepareHeader
test eax, eax
jne 0x466bfc
push 0x20
push edi
mov eax, dword [ebx + 0x94]
push eax
call sub.winmm.dll_waveInAddBuffer
test eax, eax
mov eax, edi
pop edi
pop esi
pop ebx
ret
Function at 0x466ca8
Capabilities:
Create a process with modified i/o handles and window
Create process on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffc7c
push ebx
push esi
push edi
mov esi, ecx
mov ebx, edx
mov edi, eax
mov eax, ebx
call fcn.0040a25c
test al, al
jne 0x466cce
mov byte [ebp - 1], 0
jmp 0x466e9e
lea eax, [ebp - 0x119]
mov edx, edi
call fcn.0040a918
lea eax, [ebp - 0x21e]
mov edx, ebx
call fcn.0040a918
lea eax, [ebp - 0x323]
mov edx, esi
call fcn.0040a918
xor eax, eax
push ebp
push 0x466e97
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x384]
xor ecx, ecx
mov edx, 0xc
call fcn.00403af4
mov dword [ebp - 0x384], 0xc
xor eax, eax
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x37c], 0xffffffff
push 0
push pe_nt_image_headers32
push 4
lea eax, [ebp - 0x384]
push eax
push 3
push 0xc0000000
lea eax, [ebp - 0x21e]
push eax
call sub.kernel32.dll_CreateFileA_1
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xffffffff
jne 0x466d6b
mov byte [ebp - 1], 0
call fcn.00404f70
jmp 0x466e9e
push 0
push pe_nt_image_headers32
push 2
lea eax, [ebp - 0x384]
push eax
push 3
push 0xc0000000
lea eax, [ebp - 0x323]
push eax
call sub.kernel32.dll_CreateFileA_1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffff
jne 0x466da5
mov byte [ebp - 1], 0
call fcn.00404f70
jmp 0x466e9e
lea eax, [ebp - 0x368]
xor ecx, ecx
mov edx, 0x44
call fcn.00403af4
mov dword [ebp - 0x368], 0x44
mov dword [ebp - 0x33c], 0x101
mov word [ebp - 0x338], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x32c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x330], eax
lea eax, [ebp - 0x378]
push eax
lea eax, [ebp - 0x368]
push eax
push 0
push 0
push 0x110
push 0xffffffffffffffff
push 0
push 0
lea eax, [ebp - 0x119]
push eax
push 0
call sub.kernel32.dll_CreateProcessA
cmp eax, 1
sbb eax, eax
inc eax
mov byte [ebp - 1], al
cmp byte [ebp - 1], 0
je 0x466e42
push 0xffffffffffffffff
mov eax, dword [ebp - 0x378]
push eax
call sub.kernel32.dll_WaitForSingleObject
mov eax, dword [ebp - 0x378]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x374]
mov dword [ebp - 0xc], eax
jmp 0x466e4d
mov byte [ebp - 1], 0
call fcn.00404f70
jmp 0x466e9e
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x466e9e
cmp dword [ebp - 0x14], 0
je 0x466e69
mov eax, dword [ebp - 0x14]
push eax
call sub.kernel32.dll_CloseHandle_1
cmp dword [ebp - 0x10], 0
je 0x466e78
mov eax, dword [ebp - 0x10]
push eax
call sub.kernel32.dll_CloseHandle_1
cmp dword [ebp - 0xc], 0
je 0x466e87
mov eax, dword [ebp - 0xc]
push eax
call sub.kernel32.dll_CloseHandle_1
cmp dword [ebp - 8], 0
je 0x466e96
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_CloseHandle_1
ret
movzx eax, byte [ebp - 1]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x4677d8
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
xor edx, edx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004059cc
xor eax, eax
push ebp
push 0x467845
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0
lea eax, [ebp - 8]
mov ecx, dword [ebp - 4]
mov edx, 0x467858
call fcn.00405864
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x46785c
push 0x467864
push 0
call sub.shell32.dll_ShellExecuteA
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46784c
lea eax, [ebp - 8]
mov edx, 2
call fcn.00405554
ret
Function at 0x467cc0
Capabilities:
Get disk information

Disassembly:
push ebp
mov ebp, esp
mov ecx, 5
push 0
push 0
dec ecx
jne 0x467cc8
push ecx
push ebx
push esi
push edi
mov edi, eax
xor eax, eax
push ebp
push 0x467e01
push dword fs:[eax]
mov dword fs:[eax], esp
mov bl, 0x41
lea eax, [ebp - 0xc]
mov edx, ebx
call fcn.00405718
lea eax, [ebp - 0xc]
mov edx, 0x467e18
call fcn.00405818
mov eax, dword [ebp - 0xc]
call fcn.004059dc
push eax
call sub.kernel32.dll_GetDriveTypeA
mov esi, eax
cmp esi, 1
jle 0x467dca
lea eax, [ebp - 0x18]
call fcn.00488388
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x14]
call fcn.0040a5c4
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x10]
call fcn.00409b6c
mov eax, dword [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
mov edx, ebx
mov byte [eax + 1], dl
mov byte [eax], 1
lea edx, [ebp - 0x24]
lea eax, [ebp - 0x28]
call fcn.004039a0
mov edx, 0x467e1c
lea eax, [ebp - 0x28]
mov cl, 2
call fcn.00403970
lea edx, [ebp - 0x28]
lea eax, [ebp - 0x20]
call fcn.00405794
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x1c]
call fcn.00409b6c
mov edx, dword [ebp - 0x1c]
pop eax
call fcn.00405974
jne 0x467d8c
lea eax, [ebp - 8]
mov edx, 0x467e28
call fcn.004055c8
jmp 0x467d9b
lea eax, [ebp - 8]
mov edx, dword [esi*4 + 0x490b14]
call fcn.004055c8
push dword [ebp - 4]
lea eax, [ebp - 0x2c]
mov edx, ebx
call fcn.00405718
push dword [ebp - 0x2c]
push 0x467e18
push 0x467e3c
push dword [ebp - 8]
push 0x467e48
lea eax, [ebp - 4]
mov edx, 6
call fcn.004058e0
inc ebx
cmp bl, 0x5b
jne 0x467ce5
mov eax, edi
mov edx, dword [ebp - 4]
call fcn.00405584
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x467e08
lea eax, [ebp - 0x2c]
call fcn.00405530
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.00405554
ret

Function at 0x467e4c
Capabilities:
Get hostname

Disassembly:
push ebx
add esp, 0xffffffe8
mov ebx, eax
mov dword [esp], 0x10
push esp
lea eax, [esp + 8]
push eax
call sub.kernel32.dll_GetComputerNameA
mov eax, ebx
lea edx, [esp + 4]
mov ecx, 0x11
call fcn.004057a0
add esp, 0x18
pop ebx
ret

Function at 0x467ebc
Capabilities:
Hide graphical window

Disassembly:
push 0
push 0x467ef0
call sub.user32.dll_FindWindowA
push 0
push 0x467f00
push 0
push eax
call sub.user32.dll_FindWindowExA
push 0
push 0x467f10
push 0
push eax
call sub.user32.dll_FindWindowExA
push 0
push eax
call sub.user32.dll_ShowWindow
ret

Function at 0x467f20
Capabilities:
Hide graphical window

Disassembly:
push 0
push 0x467f54
call sub.user32.dll_FindWindowA
push 0
push 0x467f64
push 0
push eax
call sub.user32.dll_FindWindowExA
push 0
push 0x467f74
push 0
push eax
call sub.user32.dll_FindWindowExA
push 5
push eax
call sub.user32.dll_ShowWindow
ret

Function at 0x467f84
Capabilities:
Hide graphical window

Disassembly:
push 0
push 0x467fa8
call sub.user32.dll_FindWindowA
push 0
push 0x467fb8
push 0
push eax
call sub.user32.dll_FindWindowExA
push 0
push eax
call sub.user32.dll_ShowWindow
ret

Function at 0x467fc8
Capabilities:
Hide graphical window

Disassembly:
push 0
push 0x467fec
call sub.user32.dll_FindWindowA
push 0
push 0x467ffc
push 0
push eax
call sub.user32.dll_FindWindowExA
push 5
push eax
call sub.user32.dll_ShowWindow
ret
Function at 0x46800c
Capabilities:
Hide graphical window

Disassembly:
push 0
push 0x468030
call sub.user32.dll_FindWindowA
push 0
push 0x468040
push 0
push eax
call sub.user32.dll_FindWindowExA
push 0
push eax
call sub.user32.dll_ShowWindow
ret

Function at 0x468050
Capabilities:
Hide graphical window

Disassembly:
push 0
push 0x468074
call sub.user32.dll_FindWindowA
push 0
push 0x468084
push 0
push eax
call sub.user32.dll_FindWindowExA
push 5
push eax
call sub.user32.dll_ShowWindow
ret

Function at 0x468094
Capabilities:
Hide graphical window

Disassembly:
push 0
push 0x4680b0
push 0
push 0
call sub.user32.dll_FindWindowExA
push 0
push eax
call sub.user32.dll_ShowWindow
ret

Function at 0x4680b8
Capabilities:
Hide graphical window

Disassembly:
push 0
push 0x4680d4
push 0
push 0
call sub.user32.dll_FindWindowExA
push 5
push eax
call sub.user32.dll_ShowWindow
ret

Function at 0x4680dc
Capabilities:
Stop service

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd8
push ebx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004059cc
mov eax, dword [ebp - 8]
call fcn.004059cc
xor eax, eax
push ebp
push 0x468197
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xf003f
push 0
mov eax, dword [ebp - 4]
call fcn.004059dc
push eax
call sub.advapi32.dll_OpenSCManagerA
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x46817c
xor eax, eax
push ebp
push 0x468175
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xf01ff
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
mov eax, dword [ebp - 0xc]
push eax
call sub.advapi32.dll_OpenServiceA
mov ebx, eax
lea eax, [ebp - 0x28]
push eax
push 1
push ebx
call sub.advapi32.dll_ControlService
push ebx
call sub.advapi32.dll_CloseServiceHandle
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46817c
mov eax, dword [ebp - 0xc]
push eax
call sub.advapi32.dll_CloseServiceHandle
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46819e
lea eax, [ebp - 8]
mov edx, 2
call fcn.00405554
ret
Function at 0x4681a4
Capabilities:
Start service

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
push ebx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004059cc
mov eax, dword [ebp - 8]
call fcn.004059cc
xor eax, eax
push ebp
push 0x468264
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xf003f
push 0
mov eax, dword [ebp - 4]
call fcn.004059dc
push eax
call sub.advapi32.dll_OpenSCManagerA
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x468249
xor eax, eax
push ebp
push 0x468242
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xf01ff
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
mov eax, dword [ebp - 0xc]
push eax
call sub.advapi32.dll_OpenServiceA
mov ebx, eax
xor eax, eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
push 0
push ebx
call sub.advapi32.dll_StartServiceA
push ebx
call sub.advapi32.dll_CloseServiceHandle
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x468249
mov eax, dword [ebp - 0xc]
push eax
call sub.advapi32.dll_CloseServiceHandle
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46826b
lea eax, [ebp - 8]
mov edx, 2
call fcn.00405554
ret

Function at 0x468548
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004059cc
mov eax, dword [ebp - 8]
call fcn.004059cc
mov eax, dword [ebp - 0xc]
call fcn.004059cc
xor eax, eax
push ebp
push 0x4686a4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
call fcn.00409ecc
cmp eax, 5
ja case.default.0x46858e
jmp dword [eax*4 + 0x468595]
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000000
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000001
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000002
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000003
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000005
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000006
call sub.advapi32.dll_RegOpenKeyExA_1
mov eax, dword [ebp - 0xc]
call fcn.004059dc
push eax
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegDeleteValueA
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegCloseKey_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4686ab
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00405554
ret
Function at 0x4685ad
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004059cc
mov eax, dword [ebp - 8]
call fcn.004059cc
mov eax, dword [ebp - 0xc]
call fcn.004059cc
xor eax, eax
push ebp
push 0x4686a4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
call fcn.00409ecc
cmp eax, 5
ja case.default.0x46858e
jmp dword [eax*4 + 0x468595]
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000000
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000001
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000002
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000003
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000005
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000006
call sub.advapi32.dll_RegOpenKeyExA_1
mov eax, dword [ebp - 0xc]
call fcn.004059dc
push eax
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegDeleteValueA
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegCloseKey_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4686ab
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00405554
ret
Function at 0x4685d0
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004059cc
mov eax, dword [ebp - 8]
call fcn.004059cc
mov eax, dword [ebp - 0xc]
call fcn.004059cc
xor eax, eax
push ebp
push 0x4686a4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
call fcn.00409ecc
cmp eax, 5
ja case.default.0x46858e
jmp dword [eax*4 + 0x468595]
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000000
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000001
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000002
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000003
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000005
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000006
call sub.advapi32.dll_RegOpenKeyExA_1
mov eax, dword [ebp - 0xc]
call fcn.004059dc
push eax
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegDeleteValueA
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegCloseKey_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4686ab
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00405554
ret
Function at 0x4685f0
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004059cc
mov eax, dword [ebp - 8]
call fcn.004059cc
mov eax, dword [ebp - 0xc]
call fcn.004059cc
xor eax, eax
push ebp
push 0x4686a4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
call fcn.00409ecc
cmp eax, 5
ja case.default.0x46858e
jmp dword [eax*4 + 0x468595]
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000000
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000001
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000002
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000003
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000005
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000006
call sub.advapi32.dll_RegOpenKeyExA_1
mov eax, dword [ebp - 0xc]
call fcn.004059dc
push eax
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegDeleteValueA
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegCloseKey_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4686ab
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00405554
ret
Function at 0x468610
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004059cc
mov eax, dword [ebp - 8]
call fcn.004059cc
mov eax, dword [ebp - 0xc]
call fcn.004059cc
xor eax, eax
push ebp
push 0x4686a4
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
call fcn.00409ecc
cmp eax, 5
ja case.default.0x46858e
jmp dword [eax*4 + 0x468595]
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000000
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000001
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000002
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000003
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000005
call sub.advapi32.dll_RegOpenKeyExA_1
jmp case.default.0x46858e
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
mov eax, dword [ebp - 8]
call fcn.004059dc
push eax
push 0x80000006
call sub.advapi32.dll_RegOpenKeyExA_1
mov eax, dword [ebp - 0xc]
call fcn.004059dc
push eax
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegDeleteValueA
mov eax, dword [ebp - 0x10]
push eax
call sub.advapi32.dll_RegCloseKey_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4686ab
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00405554
ret