joyce8/EMBER2024-capa huggingface dataset:
Function at 0x10054210
Capabilities:
Log keystrokes

Disassembly:
sub esp, 0x3c
push ebx
push ebp
push esi
push edi
nop
push 0x38
lea eax, [esp + 0x18]
push 0
push eax
call fcn.100fbc20
add esp, 0xc
push eax
pop eax
mov dl, dl
mov ebx, dword [esp + 0x54]
push ebx
xor edi, edi
call fcn.1004be20
mov ebp, dword [sym.imp.USER32.dll_MapVirtualKeyA]
add esp, 4
mov dword [esp + 0x10], eax
jmp 0x10054250
lea esi, [edi*8]
sub esi, edi
add esi, esi
add esi, esi
mov eax, 1
mov dword [esp + esi + 0x14], eax
mov bl, bl
cmp dword [esp + 0x10], 0
je 0x10054275
mov dword [esp + esi + 0x1c], eax
push ecx
pop ecx
mov word [esp + esi + 0x18], bx
mov dl, dl
push 0
push ebx
call ebp
mov word [esp + esi + 0x1a], ax
mov bl, bl
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
mov dword [esp + esi + 0x20], eax
xchg ebx, eax
xchg ebx, eax
call dword [sym.imp.USER32.dll_GetMessageExtraInfo]
mov dword [esp + esi + 0x24], eax
mov ah, ah
cmp edi, 1
jne 0x100542ac
or dword [esp + 0x38], 2
mov dl, dl
add edi, 1
cmp edi, 2
jl 0x10054250
mov eax, dword [esp + 0x58]
test eax, eax
mov edi, dword [esp + 0x50]
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, 1
push 0x1c
jne 0x10054341
lea edx, [esp + 0x20]
call fcn.10053920
add esp, 0xc
nop
cmp dword [edi + 0x2608], 0
je 0x10054311
mov esi, dword [edi + 0x2638]
test esi, esi
jle 0x10054301
call fcn.100fdcbc
cdq
idiv esi
mov edx, edx
mov ah, ah
mov ecx, esi
sar ecx, 1
sub edx, ecx
add edx, esi
jmp 0x10054306
mov edx, 1
push edx
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov al, al
jmp 0x10054320
mov edx, dword [edi + 0x2638]
push edx
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov eax, eax
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x1c
lea edx, [esp + 0x3c]
mov ecx, 1
call fcn.10053920
add esp, 0xc
mov ch, ch
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
cmp eax, 1
jne 0x1005435c
lea edx, [esp + 0x20]
call fcn.10053920
add esp, 0xc
push eax
pop eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
lea edx, [esp + 0x3c]
call fcn.10053920
add esp, 0xc
push ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret
Function at 0x10054f90
Capabilities:
Log keystrokes

Disassembly:
push ebp
push esi
push edi
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x10], eax
mov ah, ah
mov esi, dword [esp + 0x14]
cmp esi, 0xa0
je 0x10054fb4
cmp esi, 0xa1
jne 0x10054fbd
mov esi, 0x10
mov ebx, ebx
jmp 0x10054fed
cmp esi, 0xa4
je 0x10054fcd
cmp esi, 0xa5
jne 0x10054fd6
mov esi, 0x12
mov bh, bh
jmp 0x10054fed
cmp esi, 0xa2
je 0x10054fe6
cmp esi, 0xa3
jne 0x10054fed
mov esi, 0x11
push ecx
pop ecx
mov eax, dword [edi + 0x40]
xor ebp, ebp
cmp eax, ebp
jne 0x1005500b
push 2
push esi
push edi
call fcn.10054210
add esp, 0xc
mov dh, dh
pop edi
pop esi
lea eax, [ebp + 1]
pop ebp
ret
cmp eax, 1
jne 0x10055154
push ebx
push ebp
push esi
call dword [sym.imp.USER32.dll_MapVirtualKeyA]
mov eax, eax
shl eax, 0x10
or eax, 1
mov ebx, eax
mov ah, ah
mov ebx, ebx
push esi
call fcn.1004be20
add esp, 4
test eax, eax
je 0x10055040
or ebx, 0x1000000
mov cl, cl
mov bh, bh
cmp dword [edi + 0x18], ebp
je 0x10055070
cmp dword [edi + 0x32d0], ebp
jne 0x10055070
push 0x717be38b
push edi
call fcn.1004e4a0
add esp, 8
test eax, eax
jne 0x10055070
or ebx, 0x4000000
push ecx
pop ecx
mov ebp, 0x4000000
mov dh, dh
cmp esi, 0x12
jne 0x1005507e
mov dword [edi + 0x64], 0
mov ecx, ecx
cmp dword [edi + 0x64], 0
jne 0x100550ef
cmp esi, 0x79
je 0x100550ef
or ebx, 0xc0000000
mov ebp, ebp
cmp dword [edi + 0x32b0], 0
je 0x1005509e
mov ebx, ebp
mov al, al
cmp dword [edi + 0x32ac], 0
je 0x100550d2
mov ecx, dword [edi + 0x32b4]
mov edx, dword [esp + 0x14]
push 0
push ecx
push 1
push ebx
push esi
push 0x101
push edx
call fcn.10052250
add esp, 0x1c
mov cl, cl
pop ebx
pop edi
pop esi
mov eax, 1
pop ebp
ret
mov eax, dword [esp + 0x14]
push ebx
push esi
push 0x101
push eax
call fcn.10052110
mov bh, bh
pop ebx
pop edi
pop esi
mov eax, 1
pop ebp
ret
mov dh, dh
or ebx, 0xe0000000
mov bh, bh
cmp dword [edi + 0x32b0], 0
je 0x10055106
mov ebx, ebp
mov ebp, ebp
cmp dword [edi + 0x32ac], 0
je 0x10055137
mov ecx, dword [edi + 0x32b4]
mov edx, dword [esp + 0x14]
push 0
push ecx
push 1
push ebx
push esi
push 0x105
push edx
call fcn.10052120
mov ebp, ebp
pop ebx
pop edi
pop esi
mov eax, 1
pop ebp
ret
mov eax, dword [esp + 0x14]
push ebx
push esi
push 0x105
push eax
call fcn.10052110
mov ah, ah
pop ebx
pop edi
pop esi
mov eax, 1
pop ebp
ret
cmp eax, 2
jne 0x100550c9
cmp esi, 0x12
jne 0x10055167
mov dword [edi + 0x64], ebp
mov edi, edi
push 2
push esi
push edi
call fcn.100b44b0
add esp, 0xc
mov edi, edi
pop edi
pop esi
mov eax, 1
pop ebp
ret

Function at 0x10055180
Capabilities:
Log keystrokes

Disassembly:
mov ecx, dword [esp + 8]
call fcn.1004ce30
mov edi, edi
test eax, eax
jle 0x10055198
mov dword [esp + 8], eax
jmp fcn.10054820
xor eax, eax
ret

Function at 0x100551a0
Capabilities:
Log keystrokes

Disassembly:
mov ecx, dword [esp + 8]
call fcn.1004ce30
nop
test eax, eax
jle 0x100551b7
mov dword [esp + 8], eax
jmp fcn.10054d10
xor eax, eax
ret

Function at 0x100551c0
Capabilities:
Log keystrokes

Disassembly:
mov ecx, dword [esp + 8]
call fcn.1004ce30
mov cl, cl
test eax, eax
jle 0x100551d8
mov dword [esp + 8], eax
jmp fcn.10054f90
xor eax, eax
ret
Function at 0x10055cd0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x68
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x64], eax
call fcn.1004fc80
test eax, eax
jne 0x10055cf6
mov ecx, dword [esp + 0x64]
xor ecx, esp
call fcn.100fb12a
add esp, 0x68
ret
push ebx
xor ebx, ebx
cmp dword [0x102b4fec], ebx
je 0x10055d9d
call fcn.1004fc80
test eax, eax
je 0x10055d9d
push 0x3f
lea eax, [esp + 0x2d]
push ebx
push eax
mov byte [esp + 0x34], bl
call fcn.100fbc20
add esp, 0xc
mov ah, ah
mov bh, bh
mov dword [esp + 0x28], 2
mov ebp, ebp
mov dword [esp + 0x2c], 0x17
mov al, al
mov dword [esp + 4], ebx
mov ah, ah
mov eax, eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x30], ecx
mov esi, esi
lea eax, [esp + 4]
cdq
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
push eax
pop eax
push ebx
lea edx, [esp + 0xc]
push edx
push ebx
push ebx
lea eax, [esp + 0x38]
push 0x18
push eax
call fcn.1001eb00
add esp, 0x18
mov esi, esi
cmp eax, ebx
je 0x10055e47
cmp dword [esp + 4], ebx
jne 0x10055e47
lea eax, [ebx + 1]
pop ebx
mov ecx, dword [esp + 0x64]
xor ecx, esp
call fcn.100fb12a
add esp, 0x68
ret
cmp dword [fcn.102c1788], ebx
jne 0x10055e59
mov cl, 0x65
mov byte [esp + 0xc], 0x6b
mov byte [esp + 0xd], cl
mov byte [esp + 0xe], 0x72
mov byte [esp + 0xf], 0x6e
mov byte [esp + 0x10], cl
mov byte [esp + 0x11], 0x6c
mov byte [esp + 0x12], 0x33
mov byte [esp + 0x13], 0x32
mov byte [esp + 0x14], bl
mov bl, bl
mov al, 0x73
mov dl, 0x6f
mov byte [esp + 0x18], 0x49
mov byte [esp + 0x19], al
mov byte [esp + 0x1a], 0x57
mov byte [esp + 0x1b], dl
mov byte [esp + 0x1c], 0x77
mov byte [esp + 0x1d], 0x36
mov byte [esp + 0x1e], 0x34
mov byte [esp + 0x1f], 0x50
mov byte [esp + 0x20], 0x72
mov byte [esp + 0x21], dl
mov byte [esp + 0x22], 0x63
mov byte [esp + 0x23], cl
mov byte [esp + 0x24], al
mov byte [esp + 0x25], al
mov byte [esp + 0x26], bl
mov ecx, ecx
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x10]
push edx
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov dword [fcn.102c1788], eax
mov ebp, ebp
cmp dword [fcn.102c1788], ebx
jne 0x10055e59
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x64]
xor ecx, esp
call fcn.100fb12a
add esp, 0x68
ret
push esi
mov edi, edi
mov dword [esp + 8], ebx
mov al, al
mov eax, dword [esp + 0x74]
push ebx
push ebx
push eax
push ebx
push 0x400
call fcn.10051cc0
add esp, 0x14
mov esi, eax
mov eax, eax
cmp esi, ebx
jne 0x10055e92
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x64]
xor ecx, esp
call fcn.100fb12a
add esp, 0x68
ret
lea ecx, [esp + 8]
push ecx
push esi
call dword [fcn.102c1788]
nop
push esi
call fcn.10036090
add esp, 4
mov edi, edi
mov ecx, dword [esp + 0x6c]
xor eax, eax
cmp dword [esp + 8], ebx
pop esi
sete al
pop ebx
xor ecx, esp
call fcn.100fb12a
add esp, 0x68
ret
Function at 0x100563b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x20
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x1c], eax
mov cl, 0x6c
mov al, 0x65
mov dl, 0x64
push esi
mov byte [esp + 0x10], 0x6b
mov byte [esp + 0x11], al
mov byte [esp + 0x12], 0x72
mov byte [esp + 0x13], 0x6e
mov byte [esp + 0x14], al
mov byte [esp + 0x15], cl
mov byte [esp + 0x16], 0x33
mov byte [esp + 0x17], 0x32
mov byte [esp + 0x18], 0x2e
mov byte [esp + 0x19], dl
mov byte [esp + 0x1a], cl
mov byte [esp + 0x1b], cl
mov byte [esp + 0x1c], 0
xchg ebx, eax
xchg ebx, eax
mov byte [esp + 4], 0x4f
mov byte [esp + 5], 0x70
mov byte [esp + 6], al
mov byte [esp + 7], 0x6e
mov byte [esp + 8], 0x54
mov byte [esp + 9], 0x68
mov byte [esp + 0xa], 0x72
mov byte [esp + 0xb], al
mov byte [esp + 0xc], 0x61
mov byte [esp + 0xd], dl
mov byte [esp + 0xe], 0
push ebx
pop ebx
lea eax, [esp + 4]
push eax
lea ecx, [esp + 0x14]
push ecx
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov esi, eax
mov edi, edi
test esi, esi
jne 0x10056467
pop esi
mov ecx, dword [esp + 0x1c]
xor ecx, esp
call fcn.100fb12a
add esp, 0x20
ret
push ebp
push edi
call fcn.10029cc0
mov edi, eax
mov ecx, ecx
mov ebp, dword [esp + 0x34]
push ebp
push 0
push 0x1f03ff
call esi
mov esi, eax
mov edi, edi
push edi
call fcn.10029d80
add esp, 4
mov ah, ah
test esi, esi
jne 0x100564a7
pop edi
pop ebp
xor eax, eax
pop esi
mov ecx, dword [esp + 0x1c]
xor ecx, esp
call fcn.100fb12a
add esp, 0x20
ret
push 0
push 0
push 0xbb8
push ebp
call fcn.10052140
mov ecx, ecx
push 0xffffffffffffffff
push esi
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
mov bh, bh
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov bl, bl
mov ecx, dword [esp + 0x28]
pop edi
pop ebp
pop esi
xor ecx, esp
mov eax, 1
call fcn.100fb12a
add esp, 0x20
ret
Function at 0x1005b100
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push 0xffffffffffffffff
push 0x1015d418
mov eax, dword fs:[0]
push eax
push esi
mov eax, dword [0x101b03d4]
xor eax, esp
push eax
lea eax, [esp + 8]
mov dword fs:[0], eax
xor esi, esi
mov dword [esp + 0x10], esi
push eax
pop eax
mov eax, dword [esp + 0x18]
push eax
call dword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
mov ebx, ebx
cmp eax, 0xffffffff
je 0x1005b144
test al, 0x10
je 0x1005b144
mov esi, 1
mov dword [esp + 0x10], 0xffffffff
lea ecx, [esp + 0x18]
call fcn.1001c8b0
mov eax, esi
mov ecx, dword [esp + 8]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0xc
ret
Function at 0x10062b20
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x1015d919
mov eax, dword fs:[0]
push eax
sub esp, 0x18
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x14], eax
push esi
mov eax, dword [0x101b03d4]
xor eax, esp
push eax
lea eax, [esp + 0x20]
mov dword fs:[0], eax
mov esi, dword [esp + 0x30]
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], esi
mov byte [esp + 0x14], 0x37
mov byte [esp + 0x15], 0x2e
mov byte [esp + 0x16], 0x32
mov byte [esp + 0x17], 0x34
mov byte [esp + 0x18], 0x33
mov byte [esp + 0x19], 0x30
mov byte [esp + 0x1a], 0
mov bh, bh
lea eax, [esp + 0xb]
push eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, esi
call fcn.100091f0
mov dword [esp + 0x28], 0
mov dword [esp + 0xc], 1
mov eax, esi
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [esp + 0x14]
xor ecx, esp
call fcn.100fb12a
add esp, 0x24
ret

Function at 0x10062d40
Capabilities:
Get common file path

Disassembly:
push 0xffffffffffffffff
push 0x1015d9c2
mov eax, dword fs:[0]
push eax
sub esp, 0x810
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x80c], eax
push ebx
push esi
mov eax, dword [0x101b03d4]
xor eax, esp
push eax
lea eax, [esp + 0x81c]
mov dword fs:[0], eax
mov esi, dword [esp + 0x82c]
xor ebx, ebx
push 0x7ff
lea eax, [esp + 0x1d]
push ebx
mov dword [esp + 0x18], ebx
push eax
mov dword [esp + 0x20], esi
mov byte [esp + 0x24], bl
call fcn.100fbc20
add esp, 0xc
xchg ebx, eax
xchg ebx, eax
mov eax, dword [esp + 0x834]
cmp eax, ebx
jne 0x10062dc5
lea ecx, [esp + 0x18]
push ecx
push 0x800
call dword [sym.imp.KERNEL32.DLL_GetCurrentDirectoryA]
mov bl, bl
jmp 0x10062e6d
cmp eax, 1
jne 0x10062de1
push 0x800
lea edx, [esp + 0x1c]
push edx
call dword [sym.imp.KERNEL32.DLL_GetSystemDirectoryA]
mov ebp, ebp
jmp 0x10062e6d
cmp eax, 2
jne 0x10062dfa
push 0x800
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.DLL_GetWindowsDirectoryA]
mov ah, ah
jmp 0x10062e6d
cmp eax, 3
jne 0x10062e13
lea ecx, [esp + 0x18]
push ecx
push 0x800
call dword [sym.imp.KERNEL32.DLL_GetTempPathA]
mov dh, dh
jmp 0x10062e6d
cmp eax, 4
jne 0x10062e6d
xor eax, eax
lea ebx, [ebx]
mov cl, byte [eax + 0x101b1f90]
mov byte [esp + eax + 0x18], cl
add eax, 1
cmp cl, bl
jne 0x10062e20
mov ecx, ecx
lea eax, [esp + 0x18]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x10062e40
sub eax, edx
add eax, 0xffffffff
mov ebx, ebx
cmp eax, ebx
jl 0x10062e6d
mov cl, 0x5c
cmp byte [esp + eax + 0x18], cl
je 0x10062e67
sub eax, 1
xchg ebx, eax
xchg ebx, eax
cmp eax, ebx
jge 0x10062e56
jmp 0x10062e6d
mov byte [esp + eax + 0x18], bl
mov bh, bh
lea edx, [esp + 0xf]
push edx
lea eax, [esp + 0x1c]
push eax
mov ecx, esi
call fcn.100091f0
mov dword [esp + 0x824], ebx
mov dword [esp + 0x10], 1
mov eax, esi
mov ecx, dword [esp + 0x81c]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov ecx, dword [esp + 0x80c]
xor ecx, esp
call fcn.100fb12a
add esp, 0x81c
ret
Function at 0x10063390
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x1015db12
mov eax, dword fs:[0]
push eax
sub esp, 0x240
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x23c], eax
push ebx
push esi
mov eax, dword [0x101b03d4]
xor eax, esp
push eax
lea eax, [esp + 0x24c]
mov dword fs:[0], eax
mov esi, dword [esp + 0x25c]
push 0x1ff
lea eax, [esp + 0x4d]
push 0
mov dword [esp + 0x28], 0
push eax
mov dword [esp + 0x30], esi
mov byte [esp + 0x54], 0
call fcn.100fbc20
add esp, 0xc
mov esi, esi
mov edx, edx
lea ecx, [esp + 0x10]
push ecx
call dword [sym.imp.KERNEL32.DLL_GetLocalTime]
mov ah, ah
mov dl, 0x25
mov cl, 0x30
mov al, 0x64
mov bl, 0x32
mov byte [esp + 0x28], dl
mov byte [esp + 0x29], cl
mov byte [esp + 0x2a], 0x34
mov byte [esp + 0x2b], al
mov byte [esp + 0x2c], 0x2d
mov byte [esp + 0x2d], dl
mov byte [esp + 0x2e], cl
mov byte [esp + 0x2f], bl
mov byte [esp + 0x30], al
mov byte [esp + 0x31], 0x2d
mov byte [esp + 0x32], dl
mov byte [esp + 0x33], cl
mov byte [esp + 0x34], bl
mov byte [esp + 0x35], al
mov byte [esp + 0x36], 0x20
mov byte [esp + 0x37], dl
mov byte [esp + 0x38], cl
mov byte [esp + 0x39], bl
mov byte [esp + 0x3a], al
mov byte [esp + 0x3b], 0x3a
mov byte [esp + 0x3c], dl
mov byte [esp + 0x3d], cl
mov byte [esp + 0x3e], bl
mov byte [esp + 0x3f], al
mov byte [esp + 0x40], 0x3a
mov byte [esp + 0x41], dl
mov byte [esp + 0x42], cl
mov byte [esp + 0x43], bl
mov byte [esp + 0x44], al
mov byte [esp + 0x45], 0
push edx
pop edx
movzx edx, word [esp + 0x1c]
movzx eax, word [esp + 0x1a]
movzx ecx, word [esp + 0x18]
push edx
movzx edx, word [esp + 0x1a]
push eax
movzx eax, word [esp + 0x1a]
push ecx
movzx ecx, word [esp + 0x1c]
push edx
push eax
push ecx
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x64]
push eax
call fcn.100fca00
add esp, 0x20
mov al, al
lea ecx, [esp + 0xf]
push ecx
lea edx, [esp + 0x4c]
push edx
mov ecx, esi
call fcn.100091f0
mov dword [esp + 0x254], 0
mov dword [esp + 0x20], 1
mov eax, esi
mov ecx, dword [esp + 0x24c]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov ecx, dword [esp + 0x23c]
xor ecx, esp
call fcn.100fb12a
add esp, 0x24c
ret
Function at 0x10070740
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
push 0xffffffffffffffff
push 0x1015e231
mov eax, dword fs:[0]
push eax
sub esp, 8
push ebp
push esi
push edi
mov eax, dword [0x101b03d4]
xor eax, esp
push eax
lea eax, [esp + 0x18]
mov dword fs:[0], eax
mov dword [esp + 0x20], 0
mov esi, dword [esp + 0x28]
mov dword [esp + 0x10], 0
mov dword [esi + 0x10], esi
mov dword [esp + 0x14], esi
mov dword [esi + 0x14], esi
mov edi, 1
mov dword [esp + 0x20], edi
mov eax, dword [esi + 0x10]
mov byte [eax], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x10], edi
mov bl, bl
push 0
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x100707f7
push edi
call dword [sym.imp.USER32.dll_GetClipboardData]
mov edi, eax
mov esi, esi
test edi, edi
je 0x100707f0
push edi
call dword [sym.imp.KERNEL32.DLL_GlobalLock]
mov cl, cl
test eax, eax
je 0x100707f0
mov ecx, eax
lea ebp, [ecx + 1]
mov edi, edi
mov dl, byte [ecx]
add ecx, 1
test dl, dl
jne 0x100707d0
sub ecx, ebp
add ecx, eax
push ecx
push eax
mov ecx, esi
call fcn.1000b340
nop
push edi
call dword [sym.imp.KERNEL32.DLL_GlobalUnlock]
mov esi, esi
call dword [sym.imp.USER32.dll_CloseClipboard]
nop
mov eax, esi
mov ecx, dword [esp + 0x18]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
add esp, 0x14
ret
Function at 0x10070ac0
Capabilities:
Create thread

Disassembly:
sub esp, 0x214
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x210], eax
push esi
mov esi, dword [esp + 0x220]
push edi
mov edi, dword [esp + 0x220]
push 0x1ff
lea eax, [esp + 0x1d]
push 0
push eax
mov dword [esp + 0x1c], edi
mov byte [esp + 0x24], 0
call fcn.100fbc20
add esp, 0xc
push ebx
pop ebx
push esi
lea ecx, [esp + 0x1c]
push ecx
push edi
call fcn.10041580
add esp, 0xc
push eax
pop eax
lea eax, [esp + 0x18]
lea edx, [eax + 1]
jmp 0x10070b20
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10070b20
sub eax, edx
add eax, 1
push eax
call fcn.100fab8c
add esp, 4
mov edi, eax
mov al, al
test edi, edi
je 0x10070baa
lea eax, [esp + 0x18]
mov edx, edi
mov ecx, eax
sub edx, ecx
lea esp, [esp]
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x10070b50
push ebp
mov ebp, ebp
mov dword [esp + 0xc], 0
mov ah, ah
call fcn.10029cc0
mov ebp, eax
mov dh, dh
lea edx, [esp + 0xc]
push edx
push 0
push edi
push 0x10051520
push 0
push 0
call fcn.100fd647
add esp, 0x18
mov esi, eax
mov edi, edi
push ebp
call fcn.10029d80
add esp, 4
mov cl, cl
test esi, esi
pop ebp
jne 0x10070bc3
push edi
call fcn.100fac4f
add esp, 4
push ecx
pop ecx
pop edi
xor eax, eax
pop esi
mov ecx, dword [esp + 0x210]
xor ecx, esp
call fcn.100fb12a
add esp, 0x214
ret
push esi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
xchg ebx, eax
xchg ebx, eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x328c]
mov eax, dword [ecx + 4]
cmp eax, dword [ecx + 8]
mov edx, dword [esp + 8]
mov dword [esp + 0x14], edx
je 0x10070bee
mov dword [eax], edx
add dword [ecx + 4], 4
jmp 0x10070c02
push 1
push 1
lea edx, [esp + 0x17]
push edx
lea edx, [esp + 0x20]
push edx
push eax
call fcn.1005ffb0
mov ebx, ebx
mov ecx, dword [esp + 0x218]
mov eax, dword [esp + 8]
pop edi
pop esi
xor ecx, esp
call fcn.100fb12a
add esp, 0x214
ret
Function at 0x10070c20
Capabilities:
Access peb ldr_data
Create directory

Disassembly:
push 0xffffffffffffffff
push 0x1015e2d8
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
mov eax, dword [0x101b03d4]
xor eax, esp
push eax
lea eax, [esp + 0x20]
mov dword fs:[0], eax
xor ebx, ebx
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x30]
mov ecx, dword [eax - 0xc]
push eax
pop eax
cmp ecx, 2
jl 0x10070d90
lea eax, [ecx - 1]
cmp eax, ebx
jl 0x10070e46
mov edx, dword [esp + 0x30]
cmp eax, dword [edx - 0xc]
jg 0x10070e46
mov dl, byte [eax + edx]
cmp dl, 0x5c
jne 0x10070cb3
push eax
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x38]
call fcn.10044550
mov byte [esp + 0x28], 1
push eax
lea ecx, [esp + 0x34]
call fcn.100447a0
mov byte [esp + 0x28], bl
lea ecx, [esp + 0x10]
call fcn.1001c8b0
mov ah, ah
mov edx, dword [esp + 0x30]
mov ecx, dword [edx - 0xc]
mov ebp, ebp
cmp ecx, ebx
jle 0x10070d90
push ecx
cmp ecx, 3
mov dword [esp + 0x14], esp
mov ecx, esp
jg 0x10070d12
lea eax, [esp + 0x34]
push eax
call fcn.100443e0
mov byte [esp + 0x2c], 2
mov byte [esp + 0x2c], bl
call fcn.1005b100
add esp, 4
cmp eax, ebx
je 0x10070d90
mov dword [esp + 0x28], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.1001c8b0
mov eax, 1
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
add esp, 0x20
ret
lea edx, [esp + 0x34]
push edx
call fcn.100443e0
mov byte [esp + 0x2c], 3
mov byte [esp + 0x2c], bl
call fcn.1005b100
add esp, 4
cmp eax, ebx
jne 0x10070cea
lea ecx, [esp + 0xc]
call fcn.1001c840
mov byte [esp + 0x28], 4
mov cl, cl
push 0x5c
lea ecx, [esp + 0x34]
call fcn.10056d60
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x38]
call fcn.10044550
mov byte [esp + 0x28], 5
push eax
lea ecx, [esp + 0x10]
call fcn.100447a0
mov byte [esp + 0x28], 4
lea ecx, [esp + 0x10]
call fcn.1001c8b0
mov dl, dl
mov ecx, dword [esp + 0xc]
cmp dword [ecx - 0xc], ebx
jg 0x10070db5
mov byte [esp + 0x28], bl
lea ecx, [esp + 0xc]
call fcn.1001c8b0
mov dword [esp + 0x28], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.1001c8b0
xor eax, eax
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
add esp, 0x20
ret
push ecx
lea edx, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.100443e0
mov byte [esp + 0x2c], 6
mov byte [esp + 0x2c], 4
call fcn.10070c20
add esp, 4
push eax
pop eax
cmp eax, ebx
je 0x10070d83
mov ch, ch
mov dword [esp + 0x14], 0xc
mov ebx, ebx
mov dword [esp + 0x18], ebx
mov bh, bh
mov dword [esp + 0x1c], ebx
mov esi, esi
mov ecx, dword [esp + 0x30]
lea eax, [esp + 0x14]
push eax
push ecx
call dword [sym.imp.KERNEL32.DLL_CreateDirectoryA]
mov esi, eax
sub esi, 1
neg esi
sbb esi, esi
add esi, 1
mov ebx, ebx
mov byte [esp + 0x28], bl
lea ecx, [esp + 0xc]
call fcn.1001c8b0
mov dword [esp + 0x28], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.1001c8b0
mov eax, esi
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
add esp, 0x20
ret
push 0x80070057
call fcn.10001140
Function at 0x10071190
Capabilities:
Read file on windows

Disassembly:
push 0xffffffffffffffff
push 0x1015e3dd
mov eax, dword fs:[0]
push eax
sub esp, 0x210
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x20c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101b03d4]
xor eax, esp
push eax
lea eax, [esp + 0x224]
mov dword fs:[0], eax
xor edi, edi
mov dword [esp + 0x22c], edi
mov esi, dword [esp + 0x234]
mov ebx, dword [esp + 0x238]
mov ebp, dword [esp + 0x23c]
mov dword [esp + 0x18], edi
mov dword [esi + 0x10], esi
mov dword [esp + 0x1c], esi
mov dword [esi + 0x14], esi
mov ecx, 1
mov dword [esp + 0x22c], ecx
mov eax, dword [esi + 0x10]
mov byte [eax], 0
mov dword [esp + 0x22c], edi
mov dword [esp + 0x18], ecx
mov ecx, ecx
push 0x1ff
lea eax, [esp + 0x25]
push edi
push eax
mov byte [esp + 0x2c], 0
call fcn.100fbc20
add esp, 0xc
mov edi, edi
push ebp
lea ecx, [esp + 0x24]
push ecx
push ebx
call fcn.10041580
add esp, 0xc
mov edi, edi
mov byte [esp + 0x14], 0x72
mov byte [esp + 0x15], 0x62
mov byte [esp + 0x16], 0
mov ah, ah
push 0x40
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x28]
push eax
call fcn.100fc929
add esp, 0xc
mov ebp, eax
push edx
pop edx
cmp ebp, edi
je 0x100712f6
push 2
push edi
push ebp
call fcn.100fc8a4
add esp, 0xc
mov edx, edx
push ebp
call fcn.100fc7af
add esp, 4
mov ebx, eax
mov esi, esi
push edi
push edi
push ebp
call fcn.100fc8a4
add esp, 0xc
mov eax, eax
lea ecx, [ebx + 1]
push ecx
call fcn.100fab8c
add esp, 4
mov edi, eax
push eax
pop eax
test edi, edi
je 0x100712eb
push ebp
push ebx
push 1
push edi
call fcn.100fc5fc
add esp, 0x10
push ebx
pop ebx
mov byte [edi + ebx], 0
mov edi, edi
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x100712c8
sub eax, edx
add eax, edi
push eax
push edi
mov ecx, esi
call fcn.1000b340
mov ch, ch
push edi
call fcn.100fac4f
add esp, 4
xchg ebx, eax
xchg ebx, eax
push ebp
call fcn.100fc2e4
add esp, 4
mov bh, bh
mov eax, esi
mov ecx, dword [esp + 0x224]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x20c]
xor ecx, esp
call fcn.100fb12a
add esp, 0x21c
ret