joyce8/EMBER2024-capa huggingface dataset:
Function at 0x10002f90
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [ebp + 8]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
movzx edx, word [ecx]
cmp edx, 0x5a4d
je 0x10002fae
xor al, al
jmp 0x10002fcb
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 8]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 8]
cmp dword [edx], 0x4550
je 0x10002fc9
xor al, al
jmp 0x10002fcb
mov al, 1
mov esp, ebp
pop ebp
ret

Function at 0x100034a0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push 0x101027c0
mov ecx, dword [ebp + 8]
call fcn.10002b10
push eax
lea eax, [ebp - 4]
push eax
call fcn.100bfee2
add esp, 0xc
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x100034cd
xor al, al
jmp 0x10003510
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
push eax
push 1
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.100c078b
add esp, 0x10
mov dword [ebp - 0xc], eax
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0xc]
cmp eax, dword [edx]
je 0x10003502
mov ecx, dword [ebp - 4]
push ecx
call fcn.100bffe6
add esp, 4
xor al, al
jmp 0x10003510
mov edx, dword [ebp - 4]
push edx
call fcn.100bffe6
add esp, 4
mov al, 1
mov esp, ebp
pop ebp
ret
Function at 0x10003620
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100e1da2
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x10123068]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
mov byte [esi], 0
xor eax, eax
mov dword [esi + 0x14], 0
mov dword [esi + 0x18], 7
mov word [esi + 4], ax
mov dword [ebp - 4], eax
mov dword [esi + 0x2c], eax
mov dword [esi + 0x30], 7
mov word [esi + 0x1c], ax
lea ecx, [esi + 0x34]
mov byte [ebp - 4], 1
push 1
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], 7
push 0x101027d0
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0x4c]
mov byte [ebp - 4], 2
push 1
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d0
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0x64]
mov byte [ebp - 4], 3
push 1
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d0
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0x7c]
mov byte [ebp - 4], 4
push 1
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d4
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0x94]
mov byte [ebp - 4], 5
push 1
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d0
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0xac]
mov byte [ebp - 4], 6
push 1
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d0
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0xc4]
mov byte [ebp - 4], 7
push 6
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d8
mov word [ecx], ax
call fcn.10002bd0
mov byte [ebp - 4], 8
lea ecx, [esi + 0xdc]
xor eax, eax
mov dword [ecx + 0x10], 0
push 1
mov dword [ecx + 0x14], 7
push 0x101027d4
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0xf4]
mov byte [ebp - 4], 9
push 6
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d8
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0x10c]
mov byte [ebp - 4], 0xa
push 1
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d4
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0x124]
mov byte [ebp - 4], 0xb
push 5
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push str.00000
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0x13c]
mov byte [ebp - 4], 0xc
push 1
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d4
mov word [ecx], ax
call fcn.10002bd0
lea ecx, [esi + 0x154]
mov byte [ebp - 4], 0xd
push 1
xor eax, eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x101027d4
mov word [ecx], ax
call fcn.10002bd0
xor eax, eax
mov dword [esi + 0x17c], 0
mov dword [esi + 0x180], 7
mov word [esi + 0x16c], ax
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x100055e0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x20e0
call fcn.100bb1c0
mov eax, dword [0x10123068]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [0x10125d80], eax
mov ecx, dword [ebp + 0xc]
mov dword [0x10128404], ecx
mov edx, dword [ebp + 0x14]
mov dword [0x10128408], edx
mov eax, dword [ebp + 0x10]
mov dword [0x10128400], eax
push 0x1000
push 0
lea ecx, [ebp - 0x101c]
push ecx
call fcn.100bc780
add esp, 0xc
push 0x1000
push 0
lea edx, [ebp - 0x201c]
push edx
call fcn.100bc780
add esp, 0xc
lea ecx, [ebp - 0x101c]
call fcn.1001c440
lea ecx, [ebp - 0x201c]
call fcn.1001c440
mov eax, dword [0x10126248]
and eax, 1
jne 0x1000568b
mov ecx, dword [0x10126248]
or ecx, 1
mov dword [0x10126248], ecx
mov ecx, 0x1012624c
call fcn.100094e0
push 0x100f4d90
call fcn.100ba403
add esp, 4
mov ecx, 0x1012624c
call fcn.10002af0
movzx edx, al
test edx, edx
je 0x100057b5
lea ecx, [ebp - 0x2034]
call fcn.100093e0
lea eax, [ebp - 0x101c]
push eax
lea ecx, [ebp - 0x2064]
call fcn.10009390
lea edx, [ebp - 0x2034]
lea ecx, [ebp - 0x2064]
call fcn.10030140
lea ecx, [ebp - 0x2064]
call fcn.10002b50
mov ecx, 0x69
mov word [ebp - 0x1c], cx
mov edx, 0x6e
mov word [ebp - 0x1a], dx
mov eax, 0x73
mov word [ebp - 0x18], ax
mov ecx, 0x74
mov word [ebp - 0x16], cx
mov edx, 0x61
mov word [ebp - 0x14], dx
mov eax, 0x6c
mov word [ebp - 0x12], ax
mov ecx, 0x6c
mov word [ebp - 0x10], cx
mov edx, 0x2e
mov word [ebp - 0xe], dx
mov eax, 0x6c
mov word [ebp - 0xc], ax
mov ecx, 0x6f
mov word [ebp - 0xa], cx
mov edx, 0x67
mov word [ebp - 8], dx
xor eax, eax
mov word [ebp - 6], ax
lea ecx, [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x207c]
call fcn.10009390
push 0
lea edx, [ebp - 0x207c]
push edx
lea edx, [ebp - 0x2034]
lea ecx, [ebp - 0x20ac]
call fcn.10031b20
add esp, 4
mov edx, eax
lea ecx, [ebp - 0x2094]
call fcn.10033470
add esp, 4
push eax
mov ecx, 0x1012624c
call fcn.10009460
lea ecx, [ebp - 0x2094]
call fcn.10009410
lea ecx, [ebp - 0x20ac]
call fcn.10002b50
lea ecx, [ebp - 0x207c]
call fcn.10002b50
lea ecx, [ebp - 0x2034]
call fcn.10002b50
mov dword [ebp - 0x20e0], 0
push 0x10102a1c
mov ecx, 0x1012624c
call fcn.10009400
push eax
lea eax, [ebp - 0x20e0]
push eax
call fcn.100bff29
add esp, 0xc
cmp dword [ebp - 0x20e0], 0
je 0x1000587d
push 0
push 0x10102a20
lea ecx, [ebp - 0x201c]
push ecx
lea ecx, [ebp - 0x20dc]
call fcn.10009390
mov edx, eax
lea ecx, [ebp - 0x20c4]
call fcn.10009820
add esp, 4
mov edx, eax
lea ecx, [ebp - 0x204c]
call fcn.10033470
add esp, 4
lea ecx, [ebp - 0x20c4]
call fcn.10002b50
lea ecx, [ebp - 0x20dc]
call fcn.10002b50
mov edx, dword [ebp - 0x20e0]
push edx
push 1
lea ecx, [ebp - 0x204c]
call fcn.10002b00
push eax
lea ecx, [ebp - 0x204c]
call fcn.10009400
push eax
call fcn.100c054d
add esp, 0x10
mov eax, dword [ebp - 0x20e0]
push eax
call fcn.100bffe6
add esp, 4
lea ecx, [ebp - 0x204c]
call fcn.10009410
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ba074
mov esp, ebp
pop ebp
ret
Function at 0x10007260
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1400
call fcn.100bb1c0
mov eax, dword [0x10123068]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [0x10125d80], eax
mov ecx, dword [ebp + 0xc]
mov dword [0x10128404], ecx
mov edx, dword [ebp + 0x14]
mov dword [0x10128408], edx
mov eax, dword [ebp + 0x10]
mov dword [0x10128400], eax
push 0x1000
push 0
lea ecx, [ebp - 0x10f8]
push ecx
call fcn.100bc780
add esp, 0xc
push 0x80
push 0
lea edx, [ebp - 0xf8]
push edx
call fcn.100bc780
add esp, 0xc
push 0x40
push 0
lea eax, [ebp - 0x78]
push eax
call fcn.100bc780
add esp, 0xc
lea ecx, [ebp - 0x10f8]
call fcn.1001c440
lea ecx, [ebp - 0xf8]
call fcn.1001c440
lea ecx, [ebp - 0x78]
call fcn.1001c440
lea ecx, [ebp - 0x10f8]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x13fc], eax
cmp dword [ebp - 0x13fc], 0
jne 0x10007314
jmp 0x100074a1
mov byte [ebp - 0x14], 0x45
mov byte [ebp - 0x13], 0x78
mov byte [ebp - 0x12], 0x70
mov byte [ebp - 0x11], 0x6f
mov byte [ebp - 0x10], 0x72
mov byte [ebp - 0xf], 0x74
mov byte [ebp - 0xe], 0x46
mov byte [ebp - 0xd], 0x75
mov byte [ebp - 0xc], 0x6e
mov byte [ebp - 0xb], 0x63
mov byte [ebp - 0xa], 0x31
mov byte [ebp - 9], 0x31
mov byte [ebp - 8], 0
lea edx, [ebp - 0x14]
push edx
mov eax, dword [ebp - 0x13fc]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1400], eax
cmp dword [ebp - 0x1400], 0
jne 0x1000737a
mov ecx, dword [ebp - 0x13fc]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x100074a1
push 0x300
push 0
lea edx, [ebp - 0x13f8]
push edx
call fcn.100bc780
add esp, 0xc
mov eax, 0x32
mov word [ebp - 0x38], ax
mov ecx, 0x33
mov word [ebp - 0x36], cx
mov edx, 0x34
mov word [ebp - 0x34], dx
mov eax, 0x35
mov word [ebp - 0x32], ax
mov ecx, 0x45
mov word [ebp - 0x30], cx
mov edx, 0x78
mov word [ebp - 0x2e], dx
mov eax, 0x70
mov word [ebp - 0x2c], ax
mov ecx, 0x6c
mov word [ebp - 0x2a], cx
mov edx, 0x6f
mov word [ebp - 0x28], dx
mov eax, 0x72
mov word [ebp - 0x26], ax
mov ecx, 0x65
mov word [ebp - 0x24], cx
mov edx, 0x72
mov word [ebp - 0x22], dx
mov eax, 0x2e
mov word [ebp - 0x20], ax
mov ecx, 0x65
mov word [ebp - 0x1e], cx
mov edx, 0x78
mov word [ebp - 0x1c], dx
mov eax, 0x65
mov word [ebp - 0x1a], ax
xor ecx, ecx
mov word [ebp - 0x18], cx
push 0x10
push 0x101027cc
lea edx, [ebp - 0x1218]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push 0x40
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x11f8]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push 0x20
lea edx, [ebp - 0xf8]
push edx
lea eax, [ebp - 0x1178]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push 0x20
lea ecx, [ebp - 0x78]
push ecx
lea edx, [ebp - 0x1138]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push 1
push 1
lea eax, [ebp - 0x13f8]
push eax
call dword [ebp - 0x1400]
add esp, 0xc
mov ecx, dword [ebp - 0x13fc]
push ecx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [ebp - 0x13fc], 0
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ba074
mov esp, ebp
pop ebp
ret
Function at 0x100074b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1370
call fcn.100bb1c0
mov eax, dword [0x10123068]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [0x10125d80], eax
mov ecx, dword [ebp + 0xc]
mov dword [0x10128404], ecx
mov edx, dword [ebp + 0x14]
mov dword [0x10128408], edx
mov eax, dword [ebp + 0x10]
mov dword [0x10128400], eax
push 0x1000
push 0
lea ecx, [ebp - 0x1038]
push ecx
call fcn.100bc780
add esp, 0xc
lea ecx, [ebp - 0x1038]
call fcn.1001c440
lea edx, [ebp - 0x1038]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x136c], eax
cmp dword [ebp - 0x136c], 0
jne 0x1000752b
jmp 0x10007700
mov byte [ebp - 0x14], 0x45
mov byte [ebp - 0x13], 0x78
mov byte [ebp - 0x12], 0x70
mov byte [ebp - 0x11], 0x6f
mov byte [ebp - 0x10], 0x72
mov byte [ebp - 0xf], 0x74
mov byte [ebp - 0xe], 0x46
mov byte [ebp - 0xd], 0x75
mov byte [ebp - 0xc], 0x6e
mov byte [ebp - 0xb], 0x63
mov byte [ebp - 0xa], 0x31
mov byte [ebp - 9], 0x32
mov byte [ebp - 8], 0
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x136c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1370], eax
cmp dword [ebp - 0x1370], 0
jne 0x10007591
mov edx, dword [ebp - 0x136c]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x10007700
push 0x300
push 0
lea eax, [ebp - 0x1368]
push eax
call fcn.100bc780
add esp, 0xc
mov ecx, 0x32
mov word [ebp - 0x38], cx
mov edx, 0x33
mov word [ebp - 0x36], dx
mov eax, 0x34
mov word [ebp - 0x34], ax
mov ecx, 0x35
mov word [ebp - 0x32], cx
mov edx, 0x45
mov word [ebp - 0x30], dx
mov eax, 0x78
mov word [ebp - 0x2e], ax
mov ecx, 0x70
mov word [ebp - 0x2c], cx
mov edx, 0x6c
mov word [ebp - 0x2a], dx
mov eax, 0x6f
mov word [ebp - 0x28], ax
mov ecx, 0x72
mov word [ebp - 0x26], cx
mov edx, 0x65
mov word [ebp - 0x24], dx
mov eax, 0x72
mov word [ebp - 0x22], ax
mov ecx, 0x2e
mov word [ebp - 0x20], cx
mov edx, 0x65
mov word [ebp - 0x1e], dx
mov eax, 0x78
mov word [ebp - 0x1c], ax
mov ecx, 0x65
mov word [ebp - 0x1a], cx
xor edx, edx
mov word [ebp - 0x18], dx
push 0x10
push 0x101027cc
lea eax, [ebp - 0x1188]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push 0x40
lea ecx, [ebp - 0x38]
push ecx
lea edx, [ebp - 0x1168]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
lea ecx, [ebp - 0x1050]
call fcn.100093e0
lea eax, [ebp - 0x1050]
push eax
call fcn.100220f0
add esp, 4
push 0x20
lea ecx, [ebp - 0x1050]
call fcn.10002b10
push eax
lea ecx, [ebp - 0x10e8]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
lea edx, [ebp - 0x1068]
push edx
call fcn.1000e920
add esp, 4
push 0x20
lea ecx, [ebp - 0x1068]
call fcn.10002b10
push eax
lea eax, [ebp - 0x10a8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
lea ecx, [ebp - 0x1368]
push ecx
call dword [ebp - 0x1370]
add esp, 4
mov edx, dword [ebp - 0x136c]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [ebp - 0x136c], 0
lea ecx, [ebp - 0x1068]
call fcn.10002b50
lea ecx, [ebp - 0x1050]
call fcn.10002b50
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ba074
mov esp, ebp
pop ebp
ret
Function at 0x10007f40
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [ebp + 8]
mov dword [0x10125d80], eax
mov ecx, dword [ebp + 0xc]
mov dword [0x10128404], ecx
mov edx, dword [ebp + 0x14]
mov dword [0x10128408], edx
mov eax, dword [ebp + 0x10]
mov dword [0x10128400], eax
call fcn.1001c4d0
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
call fcn.10031df0
mov ecx, dword [ebp - 8]
push ecx
push 0
push 0x100001
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x10007fb7
push 0
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push 0x7d0
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esp, ebp
pop ebp
ret

Function at 0x1000ce00
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100e23d0
mov eax, dword fs:[0]
push eax
sub esp, 0x74
mov eax, dword [0x10123068]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x7c], 0
mov byte [ebp - 0x30], 0x54
mov byte [ebp - 0x2f], 0x38
mov byte [ebp - 0x2e], 0x77
mov byte [ebp - 0x2d], 0x37
mov byte [ebp - 0x2c], 0x23
mov byte [ebp - 0x2b], 0x39
mov byte [ebp - 0x2a], 0x59
mov byte [ebp - 0x29], 0x55
mov byte [ebp - 0x28], 0x2d
mov byte [ebp - 0x27], 0x30
mov byte [ebp - 0x26], 0x26
mov byte [ebp - 0x25], 0x6f
mov byte [ebp - 0x24], 0x69
mov byte [ebp - 0x23], 0x67
mov byte [ebp - 0x22], 0x4b
mov byte [ebp - 0x21], 0x6d
mov byte [ebp - 0x20], 0x48
mov byte [ebp - 0x1f], 0x59
mov byte [ebp - 0x1e], 0x79
mov byte [ebp - 0x1d], 0x74
mov byte [ebp - 0x1c], 0x47
mov byte [ebp - 0x1b], 0x68
mov byte [ebp - 0x1a], 0x6c
mov byte [ebp - 0x19], 0x39
mov byte [ebp - 0x18], 0x72
mov byte [ebp - 0x17], 0x36
mov byte [ebp - 0x16], 0x40
mov byte [ebp - 0x15], 0x68
mov byte [ebp - 0x14], 0x3d
mov byte [ebp - 0x13], 0x74
mov byte [ebp - 0x12], 0x59
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x48]
call fcn.100094a0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.10002b00
push eax
lea ecx, [ebp - 0x48]
call fcn.10009400
mov edx, eax
lea ecx, [ebp - 0x60]
call fcn.10035df0
add esp, 4
mov byte [ebp - 4], 1
lea edx, [ebp - 0x60]
lea ecx, [ebp - 0x78]
call fcn.10033610
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x80]
push ecx
lea ecx, [ebp - 0x48]
call fcn.10009460
lea ecx, [ebp - 0x78]
call fcn.10009410
lea ecx, [ebp - 0x48]
call fcn.10035f80
lea edx, [ebp - 0x48]
push edx
mov ecx, dword [ebp + 8]
call fcn.1000e270
mov eax, dword [ebp - 0x7c]
or eax, 1
mov dword [ebp - 0x7c], eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x60]
call fcn.10002b50
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x48]
call fcn.10009410
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100ba074
mov esp, ebp
pop ebp
ret
Function at 0x10012470
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 8], edx
xor esi, esi
xor bh, bh
xor cl, cl
cmp dword [ebp + 8], esi
jbe 0x100124c6
nop dword [eax]
inc bh
movzx edx, bh
mov bl, byte [edx + edi]
add cl, bl
mov byte [ebp - 1], cl
movzx ecx, cl
movzx eax, byte [ecx + edi]
mov byte [edx + edi], al
mov byte [ecx + edi], bl
movzx eax, byte [edx + edi]
mov ecx, dword [ebp - 8]
add al, bl
movzx eax, al
movzx eax, byte [eax + edi]
xor byte [esi + ecx], al
inc esi
mov cl, byte [ebp - 1]
cmp esi, dword [ebp + 8]
jb 0x10012490
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x10013880
Capabilities:
Create shortcut via ishelllink

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100e2ae8
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x10123068]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3c], ecx
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jl 0x10013993
mov dword [ebp - 0x2c], 0
lea eax, [ebp - 0x2c]
push eax
push 0x101067bc
push 1
push 0
push 0x100f6418
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jl 0x1001398d
cmp dword [ebp - 0x2c], 0
je 0x1001398d
mov ecx, dword [ebp + 8]
call fcn.10002b10
push eax
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [edx + 0x50]
call ecx
mov dword [ebp - 0x34], 0
lea edx, [ebp - 0x34]
push edx
push 0x100f63f8
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x2c]
push edx
mov eax, dword [ecx]
call eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jl 0x1001397f
lea ecx, [ebp - 0x28]
push ecx
mov ecx, dword [ebp - 0x3c]
call fcn.100139d0
mov dword [ebp - 4], 0
push 2
lea ecx, [ebp - 0x28]
call fcn.10002b10
push eax
mov edx, dword [ebp - 0x34]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x34]
push ecx
mov edx, dword [eax + 0x18]
call edx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov edx, dword [ebp - 0x34]
push edx
mov eax, dword [ecx + 8]
call eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.10002b50
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [edx + 8]
call ecx
call dword [sym.imp.ole32.dll_CoUninitialize]
cmp dword [ebp - 0x30], 0
jl 0x100139a2
mov dword [ebp - 0x38], 1
jmp 0x100139a9
mov dword [ebp - 0x38], 0
mov al, byte [ebp - 0x38]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100ba074
mov esp, ebp
pop ebp
ret 4
Function at 0x10015560
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
call fcn.10015520
movzx eax, al
test eax, eax
jne 0x10015576
xor al, al
jmp 0x100155c6
call fcn.1002b060
cmp eax, 0xd
jl 0x1001558e
mov ecx, dword [ebp + 8]
push ecx
call fcn.10015320
add esp, 4
jmp 0x100155c6
push 0
push 0
push 0
mov ecx, dword [ebp + 8]
call fcn.10002b10
push eax
push str.taskbarpin
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0x20
jle 0x100155bc
mov dword [ebp - 4], 1
jmp 0x100155c3
mov dword [ebp - 4], 0
mov al, byte [ebp - 4]
mov esp, ebp
pop ebp
ret

Function at 0x100155d0
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
call fcn.1002b060
cmp eax, 0xd
jl 0x100155f7
mov eax, dword [ebp + 8]
push eax
call fcn.10015420
add esp, 4
movzx ecx, al
test ecx, ecx
je 0x100155f7
mov al, 1
jmp 0x1001562f
push 0
push 0
push 0
mov ecx, dword [ebp + 8]
call fcn.10002b10
push eax
push str.taskbarunpin
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0x20
jle 0x10015625
mov dword [ebp - 4], 1
jmp 0x1001562c
mov dword [ebp - 4], 0
mov al, byte [ebp - 4]
mov esp, ebp
pop ebp
ret

Function at 0x10015db0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x424
mov eax, dword [0x10123068]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x400
push 0
lea eax, [ebp - 0x424]
push eax
call fcn.100bc780
add esp, 0xc
push 0
push 0x10
lea ecx, [ebp - 0x424]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
jne 0x10015df7
xor al, al
jmp 0x10015e9d
mov edx, 0x5c
mov word [ebp - 0x24], dx
mov eax, 0x32
mov word [ebp - 0x22], ax
mov ecx, 0x33
mov word [ebp - 0x20], cx
mov edx, 0x34
mov word [ebp - 0x1e], dx
mov eax, 0x35
mov word [ebp - 0x1c], ax
mov ecx, 0x52a0
mov word [ebp - 0x1a], cx
mov edx, 0x901f
mov word [ebp - 0x18], dx
mov eax, 0x6d4f
mov word [ebp - 0x16], ax
mov ecx, 0x89c8
mov word [ebp - 0x14], cx
mov edx, 0x5668
mov word [ebp - 0x12], dx
mov eax, 0x2e
mov word [ebp - 0x10], ax
mov ecx, 0x6c
mov word [ebp - 0xe], cx
mov edx, 0x6e
mov word [ebp - 0xc], dx
mov eax, 0x6b
mov word [ebp - 0xa], ax
xor ecx, ecx
mov word [ebp - 8], cx
lea edx, [ebp - 0x24]
push edx
lea eax, [ebp - 0x424]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea ecx, [ebp - 0x424]
push ecx
mov ecx, dword [ebp + 8]
call fcn.10002b20
mov al, 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ba074
mov esp, ebp
pop ebp
ret