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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [esi + 0x30]
mov ecx, 0x5a4d
mov dword [esi + 0xc], eax
push edi
cmp word [eax], cx
je 0x492422
mov eax, dword [esi + 4]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x4923f5
push eax
call edi
mov eax, dword [esi]
test eax, eax
je 0x492403
cmp eax, 0xffffffff
je 0x492403
push eax
call edi
mov edx, dword [esi + 0x30]
push edx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push 0x50a408
lea eax, [ebp - 4]
push eax
mov dword [ebp - 4], str.Incorrect_PE_file__e_magic___IMAGE_DOS_SIGNATURE_
call fcn.004b840c
mov ecx, dword [eax + 0x3c]
xor edx, edx
lea edi, [ecx + 0xf8]
cmp edx, dword [esi + 0x2c]
jb 0x49247c
ja 0x492439
cmp edi, dword [esi + 0x28]
jb 0x49247c
mov eax, dword [esi + 4]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x492449
push eax
call edi
mov eax, dword [esi]
test eax, eax
je 0x492457
cmp eax, 0xffffffff
je 0x492457
push eax
call edi
cmp dword [esi + 0x34], 0
je 0x492467
mov ecx, dword [esi + 0x30]
push ecx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push 0x50a408
lea edx, [ebp - 4]
push edx
mov dword [ebp - 4], str.Incorrect_PE_file__header___filesize_
call fcn.004b840c
add ecx, eax
mov dword [esi + 0x40], ecx
cmp dword [ecx], 0x4550
je 0x4924cc
mov eax, dword [esi + 4]
mov edi, dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x492499
push eax
call edi
mov eax, dword [esi]
test eax, eax
je 0x4924a7
cmp eax, 0xffffffff
je 0x4924a7
push eax
call edi
cmp dword [esi + 0x34], 0
je 0x4924b7
mov eax, dword [esi + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push 0x50a408
lea ecx, [ebp - 4]
push ecx
mov dword [ebp - 4], str.Incorrect_PE_file__incorrect_signature_
call fcn.004b840c
add ecx, 0x18
push ebx
xor ebx, ebx
mov dword [esi + 0x14], ecx
mov edx, 0x20b
cmp word [ecx], dx
sete bl
mov ecx, ebx
mov dword [esi + 0x3c], ecx
pop ebx
test ecx, ecx
je 0x4924fd
mov ecx, dword [eax + 0x3c]
add eax, ecx
mov dword [esi + 0x44], eax
mov edx, dword [esi + 0x44]
add eax, 0x18
mov dword [esi + 0x18], eax
jmp 0x492500
mov edx, dword [esi + 0x40]
mov ax, word [edx + 6]
mov ecx, edx
add ecx, 4
cmp dword [esi + 0x3c], 0
mov dword [esi + 0x10], ecx
mov word [esi + 8], ax
pop edi
je 0x492524
mov eax, dword [esi + 0x18]
add eax, 0x70
mov dword [esi + 0x1c], eax
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x14]
add eax, 0x60
mov dword [esi + 0x1c], eax
mov esp, ebp
pop ebp
ret
Function at 0x497350
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ecx
cmp dword [eax + 0x38], 0
mov dl, byte [eax + 0x34]
push ebx
push esi
mov dword [ebp - 4], 0
mov ebx, 1
jle 0x49739b
movzx esi, dl
push edi
nop
mov ecx, dword [eax + 0x260]
mov edi, ecx
shr edi, 0x18
shl ecx, 8
xor edi, esi
xor ecx, dword [edi*4 + 0x51a438]
mov dword [eax + 0x260], ecx
mov ecx, dword [ebp - 4]
add ecx, ebx
cmp ecx, dword [eax + 0x38]
mov dword [ebp - 4], ecx
jl 0x497370
pop edi
mov ecx, dword [eax + 0x34]
mov byte [eax + ecx + 0x58], bl
mov esi, dword [eax + 0x38]
mov ecx, esi
sub ecx, ebx
je 0x497429
sub ecx, ebx
je 0x49740b
sub ecx, ebx
je 0x4973ff
mov byte [esi + eax + 0x54], bl
mov ecx, dword [eax + 0x44]
mov esi, dword [eax + 0x24]
mov byte [ecx + esi], dl
add dword [eax + 0x44], ebx
mov ecx, dword [eax + 0x44]
mov esi, dword [eax + 0x24]
mov byte [ecx + esi], dl
add dword [eax + 0x44], ebx
mov ecx, dword [eax + 0x44]
mov esi, dword [eax + 0x24]
mov byte [ecx + esi], dl
add dword [eax + 0x44], ebx
mov ecx, dword [eax + 0x44]
mov esi, dword [eax + 0x24]
mov byte [ecx + esi], dl
add dword [eax + 0x44], ebx
mov dl, byte [eax + 0x38]
mov esi, dword [eax + 0x44]
mov ecx, dword [eax + 0x24]
sub dl, 4
mov byte [esi + ecx], dl
add dword [eax + 0x44], ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [eax + 0x44]
mov esi, dword [eax + 0x24]
mov byte [ecx + esi], dl
add dword [eax + 0x44], ebx
mov ecx, dword [eax + 0x44]
mov esi, dword [eax + 0x24]
mov byte [ecx + esi], dl
add dword [eax + 0x44], ebx
mov ecx, dword [eax + 0x44]
mov esi, dword [eax + 0x24]
mov byte [ecx + esi], dl
add dword [eax + 0x44], ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [eax + 0x44]
mov ecx, dword [eax + 0x24]
mov byte [ecx + esi], dl
add dword [eax + 0x44], ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret

Function at 0x499270
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x118
mov eax, dword [0x518f10]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push 0x110
xor esi, esi
lea eax, [ebp - 0x114]
push esi
push eax
call fcn.004b25f0
add esp, 0xc
lea ecx, [ebp - 0x118]
push ecx
mov dword [ebp - 0x118], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
je 0x4992c2
cmp dword [ebp - 0x114], 6
lea eax, [esi + 1]
jae 0x4992c4
mov eax, esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.004b134c
mov esp, ebp
pop ebp
ret
Function at 0x49b700
Capabilities:
Write clipboard data

Disassembly:
push ebx
push esi
xor ebx, ebx
call dword [sym.imp.USER32.dll_EmptyClipboard]
mov eax, edi
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x49b710
sub eax, edx
sar eax, 1
lea eax, [eax + eax + 2]
push eax
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov esi, eax
test esi, esi
je 0x49b767
push esi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x49b767
mov edx, eax
mov ecx, edi
sub edx, edi
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x49b743
push esi
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
push esi
push 0xd
call dword [sym.imp.USER32.dll_SetClipboardData]
mov ebx, 1
call dword [sym.imp.USER32.dll_CloseClipboard]
pop esi
mov eax, ebx
pop ebx
ret
Function at 0x49c2b0
Capabilities:
Encode data using xor
Encrypt data using aes

Disassembly:
push esi
mov esi, ecx
test esi, esi
je 0x49c44e
test eax, eax
je 0x49c44e
mov dword [eax + 0xf0], 0xa
mov ecx, dword [esi]
push edi
mov edx, ecx
ror edx, 8
and edx, 0xff00ff00
rol ecx, 8
and ecx, 0xff00ff
or edx, ecx
mov dword [eax], edx
mov edx, dword [esi + 4]
mov edi, edx
ror edi, 8
and edi, 0xff00ff00
rol edx, 8
and edx, 0xff00ff
or edi, edx
mov dword [eax + 4], edi
mov edx, dword [esi + 8]
mov edi, edx
ror edi, 8
and edi, 0xff00ff00
rol edx, 8
and edx, 0xff00ff
or edi, edx
mov dword [eax + 8], edi
mov edx, dword [esi + 0xc]
lea ecx, [eax + 4]
mov esi, edx
ror esi, 8
and esi, 0xff00ff00
rol edx, 8
and edx, 0xff00ff
or esi, edx
mov dword [eax + 0xc], esi
mov edx, esi
shr edx, 0x10
and edx, 0xff
mov edx, dword [edx*4 + 0x4fe518]
xor edx, 0x1000000
mov edi, esi
shr edi, 8
and edi, 0xff
mov edi, dword [edi*4 + 0x4fe918]
and edi, 0xff0000
and edx, 0xff000000
xor edx, edi
mov edi, esi
shr edi, 0x18
movzx edi, byte [edi*4 + 0x4fe118]
xor edx, edi
mov edi, esi
and edi, 0xff
mov edi, dword [edi*4 + 0x4fdd18]
and edi, 0xff00
xor edx, edi
xor edx, dword [eax]
mov edi, dword [ecx]
xor edi, edx
mov dword [eax + 0x10], edx
mov edx, dword [eax + 8]
xor edx, edi
mov dword [eax + 0x18], edx
xor edx, esi
mov dword [eax + 0x14], edi
mov dword [eax + 0x1c], edx
mov esi, 0x4ffe1c
jmp 0x49c3c0
mov edx, dword [ecx + 0x18]
add ecx, 0x10
mov eax, edx
shr eax, 8
mov edi, edx
and eax, 0xff
mov eax, dword [eax*4 + 0x4fe918]
shr edi, 0x10
and edi, 0xff
mov edi, dword [edi*4 + 0x4fe518]
and eax, 0xff0000
and edi, 0xff000000
xor eax, edi
mov edi, edx
and edx, 0xff
mov edx, dword [edx*4 + 0x4fdd18]
shr edi, 0x18
movzx edi, byte [edi*4 + 0x4fe118]
xor eax, edi
and edx, 0xff00
xor eax, edx
xor eax, dword [ecx - 4]
add esi, 4
xor eax, dword [esi - 4]
mov dword [ecx + 0xc], eax
mov edx, dword [ecx]
xor edx, eax
mov dword [ecx + 0x10], edx
mov eax, dword [ecx + 4]
xor eax, edx
mov dword [ecx + 0x14], eax
mov edx, dword [ecx + 8]
xor edx, eax
mov dword [ecx + 0x18], edx
cmp esi, 0x4ffe40
jne 0x49c3c0
pop edi
xor eax, eax
pop esi
ret
or eax, 0xffffffff
pop esi
ret
Function at 0x4a0e90
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
push edi
mov edi, eax
mov eax, dword [ebp + 0x18]
mov esi, dword [eax]
mov ebx, ecx
test esi, esi
je 0x4a0ec6
test ebx, ebx
je 0x4a0ec6
mov dl, byte [esi + edi]
mov ecx, dword [ebp + 8]
xor dl, byte [ecx]
mov eax, dword [ebp + 0xc]
mov byte [eax], dl
inc eax
inc ecx
inc esi
dec ebx
and esi, 0xf
mov dword [ebp + 0xc], eax
mov dword [ebp + 8], ecx
jne 0x4a0ea6
cmp ebx, 0x10
jb 0x4a0f4f
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
mov eax, ecx
sub eax, edi
mov dword [ebp - 4], eax
mov eax, edx
sub eax, edi
mov dword [ebp - 8], eax
mov eax, ebx
shr eax, 4
mov dword [ebp - 0xc], eax
shl eax, 4
add ecx, eax
add edx, eax
mov dword [ebp + 0xc], ecx
mov dword [ebp + 8], edx
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
push eax
push edi
push ecx
call fcn.0049c460
mov edx, dword [ebp + 0x14]
add esp, 0xc
call fcn.004a0e70
cmp esi, 0x10
jae 0x4a0f3a
mov ecx, 0xf
sub ecx, esi
shr ecx, 2
lea eax, [esi + edi]
inc ecx
mov edx, dword [ebp - 8]
mov edx, dword [edx + eax]
xor edx, dword [eax]
mov esi, dword [ebp - 4]
mov dword [esi + eax], edx
add eax, 4
sub ecx, 1
jne 0x4a0f24
mov eax, 0x10
add dword [ebp - 4], eax
add dword [ebp - 8], eax
sub ebx, eax
xor esi, esi
sub dword [ebp - 0xc], 1
jne 0x4a0ef8
test ebx, ebx
je 0x4a0f9d
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
push eax
push edi
push ecx
call fcn.0049c460
mov edx, dword [ebp + 0x14]
add esp, 0xc
call fcn.004a0e70
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub edx, edi
lea eax, [esi + edi]
sub ecx, edi
mov dword [ebp - 0xc], edx
add esi, ebx
mov edi, edi
mov dl, byte [eax + ecx]
xor dl, byte [eax]
mov edi, dword [ebp - 0xc]
dec ebx
mov byte [eax + edi], dl
inc eax
test ebx, ebx
jne 0x4a0f80
mov eax, dword [ebp + 0x18]
pop edi
mov dword [eax], esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x18]
pop edi
mov dword [ecx], esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret

Function at 0x4a4f3c
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, ecx
mov dword [edi + 0x58], ebx
test ebx, 0xffff0000
jne 0x4a4f60
cmp dword [edi + 0x54], 0
jne 0x4a4f60
movzx eax, bx
mov dword [edi + 0x54], eax
call fcn.004a5933
mov esi, dword [eax + 0xc]
push 5
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
push esi
push dword [ebp + 0xc]
mov ebx, eax
push ebx
mov ecx, edi
call fcn.004a4efd
push ebx
mov esi, eax
call dword [sym.imp.KERNEL32.dll_FreeResource]
pop edi
mov eax, esi
pop esi
pop ebx
pop ebp
ret 8
Function at 0x4ab10f
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
xor ebx, ebx
xor edi, edi
mov dword [ebp - 4], ecx
cmp dword [ebp + 8], ebx
je 0x4ab156
call fcn.004a5933
mov esi, dword [eax + 0xc]
push 0xf0
push dword [ebp + 8]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x4ab156
push eax
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov ebx, eax
test ebx, ebx
je 0x4ab172
push ebx
call dword [sym.imp.KERNEL32.dll_LockResource]
mov edi, eax
mov ecx, dword [ebp - 4]
push edi
call fcn.004aac87
mov esi, eax
test edi, edi
je 0x4ab170
test ebx, ebx
je 0x4ab170
push ebx
call dword [sym.imp.KERNEL32.dll_FreeResource]
mov eax, esi
pop edi
pop esi
pop ebx
leave
ret 4

Function at 0x4b134c
Capabilities:
Terminate process

Disassembly:
cmp ecx, dword [0x518f10]
jne 0x4b1356
repz ret
jmp fcn.004b9a7d

Function at 0x4c4c69
Capabilities:
Link many functions at runtime

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
call fcn.004b93e1
and dword [ebp - 4], 0
cmp dword [0x51e4ec], 0
mov ebx, eax
jne 0x4c4d1a
push str.USER32.DLL
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edi, eax
test edi, edi
je 0x4c4dcb
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x4e01e8
push edi
call esi
test eax, eax
je 0x4c4dcb
push eax
call fcn.004b936f
mov dword [esp], 0x4e01d8
push edi
mov dword [0x51e4ec], eax
call esi
push eax
call fcn.004b936f
mov dword [esp], 0x4e01c4
push edi
mov dword [0x51e4f0], eax
call esi
push eax
call fcn.004b936f
mov dword [esp], 0x4e01a8
push edi
mov dword [0x51e4f4], eax
call esi
push eax
call fcn.004b936f
pop ecx
mov dword [0x51e4fc], eax
test eax, eax
je 0x4c4d1a
push str.GetProcessWindowStation
push edi
call esi
push eax
call fcn.004b936f
pop ecx
mov dword [0x51e4f8], eax
mov eax, dword [0x51e4f8]
cmp eax, ebx
je 0x4c4d72
cmp dword [0x51e4fc], ebx
je 0x4c4d72
push eax
call fcn.004b93ea
push dword [0x51e4fc]
mov esi, eax
call fcn.004b93ea
pop ecx
pop ecx
mov edi, eax
test esi, esi
je 0x4c4d72
test edi, edi
je 0x4c4d72
call esi
test eax, eax
je 0x4c4d69
lea ecx, [ebp - 8]
push ecx
push 0xc
lea ecx, [ebp - 0x14]
push ecx
push 1
push eax
call edi
test eax, eax
je 0x4c4d69
test byte [ebp - 0xc], 1
jne 0x4c4d72
or dword [ebp + 0x10], 0x200000
jmp 0x4c4dab
mov eax, dword [0x51e4f0]
cmp eax, ebx
je 0x4c4dab
push eax
call fcn.004b93ea
pop ecx
test eax, eax
je 0x4c4dab
call eax
mov dword [ebp - 4], eax
test eax, eax
je 0x4c4dab
mov eax, dword [0x51e4f4]
cmp eax, ebx
je 0x4c4dab
push eax
call fcn.004b93ea
pop ecx
test eax, eax
je 0x4c4dab
push dword [ebp - 4]
call eax
mov dword [ebp - 4], eax
push dword [0x51e4ec]
call fcn.004b93ea
pop ecx
test eax, eax
je 0x4c4dcb
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp - 4]
call eax
jmp 0x4c4dcd
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret
Function at 0x4100e5
Capabilities:
Terminate process

Disassembly:
cmp ecx, dword [0x428044]
jne 0x4100ef
repz ret
jmp fcn.00411dd9

Function at 0x41ada1
Capabilities:
Link many functions at runtime

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
call fcn.0041213b
and dword [ebp - 4], 0
cmp dword [0x429f30], 0
mov ebx, eax
jne 0x41ae52
push str.USER32.DLL
call dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
mov edi, eax
test edi, edi
je 0x41af03
mov esi, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
push str.MessageBoxA
push edi
call esi
test eax, eax
je 0x41af03
push eax
call fcn.004120c9
mov dword [esp], str.GetActiveWindow
push edi
mov dword [0x429f30], eax
call esi
push eax
call fcn.004120c9
mov dword [esp], str.GetLastActivePopup
push edi
mov dword [0x429f34], eax
call esi
push eax
call fcn.004120c9
mov dword [esp], str.GetUserObjectInformationA
push edi
mov dword [0x429f38], eax
call esi
push eax
call fcn.004120c9
pop ecx
mov dword [0x429f40], eax
test eax, eax
je 0x41ae52
push str.GetProcessWindowStation
push edi
call esi
push eax
call fcn.004120c9
pop ecx
mov dword [0x429f3c], eax
mov eax, dword [0x429f3c]
cmp eax, ebx
je 0x41aeaa
cmp dword [0x429f40], ebx
je 0x41aeaa
push eax
call fcn.00412144
push dword [0x429f40]
mov esi, eax
call fcn.00412144
pop ecx
pop ecx
mov edi, eax
test esi, esi
je 0x41aeaa
test edi, edi
je 0x41aeaa
call esi
test eax, eax
je 0x41aea1
lea ecx, [ebp - 8]
push ecx
push 0xc
lea ecx, [ebp - 0x14]
push ecx
push 1
push eax
call edi
test eax, eax
je 0x41aea1
test byte [ebp - 0xc], 1
jne 0x41aeaa
or dword [ebp + 0x10], 0x200000
jmp 0x41aee3
mov eax, dword [0x429f34]
cmp eax, ebx
je 0x41aee3
push eax
call fcn.00412144
pop ecx
test eax, eax
je 0x41aee3
call eax
mov dword [ebp - 4], eax
test eax, eax
je 0x41aee3
mov eax, dword [0x429f38]
cmp eax, ebx
je 0x41aee3
push eax
call fcn.00412144
pop ecx
test eax, eax
je 0x41aee3
push dword [ebp - 4]
call eax
mov dword [ebp - 4], eax
push dword [0x429f30]
call fcn.00412144
pop ecx
test eax, eax
je 0x41af03
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp - 4]
call eax
jmp 0x41af05
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret

Function at 0x432000
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax - 0x6f6f6f70], dl
nop
nop
nop
nop
nop
pushal
call 0x43200c
nop
nop
pop eax
nop
nop
nop
nop
add eax, 0x40729f
sub eax, 0x407245
nop
nop
mov ebx, dword [eax]
nop
nop
nop
nop
nop
nop
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
nop
nop
nop
nop
xor dword [ebx], edx
nop
nop
nop
add ebx, 4
nop
nop
nop
nop
nop
cmp ebx, ecx
nop
nop
nop
nop
nop
nop
nop
jl 0x431fd9
add eax, 0xc
nop
nop
nop
nop
cmp dword [eax], 0
nop
nop
nop
nop
nop
jne 0x43201e
nop
nop
nop
nop
popal
nop
jmp 0x431219
Function at 0x433001
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
nop
nop
mov eax, section..text
nop
nop
mov ebx, 0x40de38
nop
mov ecx, 0x76ac5466
nop
test eax, eax
nop
nop
nop
je 0x43304e
nop
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
inc eax
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
cmp eax, ebx
nop
nop
nop
nop
nop
nop
nop
nop
jne 0x433024
mov eax, section..data
nop
nop
mov ebx, 0x4304d8
nop
mov ecx, 0x2af5484
nop
nop
test eax, eax
nop
nop
nop
nop
nop
je 0x433084
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
add eax, 4
nop
nop
nop
nop
nop
cmp eax, ebx
nop
nop
nop
jne 0x43306c
nop
nop
nop
popal
nop
nop
nop
nop
jmp 0x431219
Function at 0x1000585e
Capabilities:
Check if file exists

Disassembly:
push 0x21c
mov eax, 0x1000f326
call fcn.1000f060
mov eax, dword [ebp + 8]
xor edi, edi
push ecx
push ecx
push ecx
mov edx, 0x104
mov dword [ebp - 0x228], eax
lea ecx, [ebp - 0x218]
mov dword [eax], edi
mov dword [eax + 4], edi
call fcn.1000391e
push 0x10001bb8
lea ecx, [ebp - 0x218]
call fcn.10003874
lea eax, [ebp - 0x218]
push eax
push edi
push 0x1f0003
call dword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_OpenSemaphoreW]
mov esi, eax
mov dword [ebp - 0x220], esi
test esi, esi
mov dword [ebp - 4], edi
setne byte [ebp - 0x219]
test esi, esi
jne 0x100058e8
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
cmp eax, 2
je 0x1000592c
push ecx
mov ecx, dword [ebp + 4]
mov edx, 0xc9
call fcn.10004b87
mov edi, eax
jmp 0x10005912
lea edx, [ebp - 0x224]
mov dword [ebp - 0x224], edi
mov ecx, esi
call fcn.10005744
mov ebx, eax
test ebx, ebx
jns 0x1000591a
push ebx
push ecx
mov ecx, dword [ebp + 4]
mov edx, 0xcf
call fcn.10004b6a
mov edi, ebx
mov esi, dword [ebp - 0x220]
jmp 0x1000592c
mov ecx, dword [ebp - 0x228]
mov eax, dword [ebp - 0x224]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp - 0x219], 0
je 0x10005946
push esi
mov dword [ebp - 4], 0xa
call fcn.1000552a
mov eax, edi
call fcn.1000f00f
ret 8

Function at 0x1000e3d1
Capabilities:
Enumerate pe sections

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
push esi
mov ecx, dword [eax + 0x3c]
add ecx, eax
movzx eax, word [ecx + 0x14]
lea edx, [ecx + 0x18]
add edx, eax
movzx eax, word [ecx + 6]
imul esi, eax, 0x28
add esi, edx
cmp edx, esi
je 0x1000e40e
mov ecx, dword [ebp + 0xc]
cmp ecx, dword [edx + 0xc]
jb 0x1000e407
mov eax, dword [edx + 8]
add eax, dword [edx + 0xc]
cmp ecx, eax
jb 0x1000e413
add edx, 0x28
cmp edx, esi
jne 0x1000e3f8
xor eax, eax
pop esi
pop ebp
ret
mov eax, edx
jmp 0x1000e410

Function at 0x1001739a
Capabilities:
Encode data using xor

Disassembly:
call 0x10017313
sub bl, byte [ebx]
mov eax, 0x64f7f691
int 0x82
xchg ebx, eax
ror cl, 1
into
out dx, eax
cld
test edx, ebx
or eax, dword [ebx - 0x178f73c]
xor esi, 0xde5af04
add eax, esi
lea esp, [esp - 0xe]
mov esi, dword [esp + 0xe]
lea esp, [esp + 0x12]
xor esi, dword [esp]
push eax
sub eax, 0xf24f2b00
mov eax, esp
or dword [eax - 0x22], ebx
pop eax
jmp 0x10017343
xor dword [esp], esi
xor eax, 0
mov dword [esp], esi
add esp, 4
add esi, dword [ebp + 8]
push ebp
add ebp, 0xc
mov ecx, dword [ebp]
pop ebp
ja 0x1001735f
xor edx, 0
jmp 0x1001736a
xor edx, edx
jmp 0x10017381
jmp 0x1001738d
xor eax, eax
push 0x8427d7c0
call 0x1001739a
stc
add esp, 8
add esi, 0
cmp ecx, 0
je 0x100173d6
mov ebx, dword [ebp + 0x10]
mov edi, dword [ebp + 0x14]
add bl, dl
xor byte [esi], bl
mov dl, byte [esi]
inc esi
add ebx, edi
rol ebx, 8
dec ecx
jne 0x100173af
lea esp, [esp - 4]
xchg dword [esp], ebx
mov ebx, dword [esp]
or eax, edx
xor eax, eax
add eax, dword [esp]
add esp, 4
pop esi
pop edi
pop ebx
xchg dword [esp], ecx
mov dword [esp], ecx
lea esp, [esp + 4]
pop edx
leave
je 0x100173ed
add eax, 0
jno 0x100173f2
add esi, 0
ret 0x10
Function at 0x1001815b
Capabilities:
Encode data using xor

Disassembly:
lea esp, [esp - 0x63]
mov dword [esp + 0x5f], ebx
lea esp, [esp + 0x5f]
mov ebx, 0x8dff8662
xchg dword [esp], ebx
and dword [esp], ebp
jmp 0x1001817d
add ebx, 0
or dword [esp], ebp
mov ebp, esp
push eax
push edi
lea esp, [esp - 4]
xchg dword [esp], ecx
pop ecx
lea esp, [esp - 4]
mov edi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
cmp edi, dword [ebp + 0x14]
ja 0x1001831f
cmp edi, dword [ebp + 0x10]
jb 0x1001831f
lea esi, [esi]
sub esi, 0
push dword [ebp + 0x14]
push dword [ebp + 0x10]
sub esp, 0x6a
mov dword [esp + 0x66], 0xc2ccbc3c
add esp, 0x66
mov dword [esp], edi
or edi, 0xffffffff
and edi, 0xcedcf875
xor edi, 0xce9c140e
xchg dword [esp], edi
push edx
mov edx, esp
xor edx, 0
add edx, 0
push ebx
lea ebx, [edx + 4]
mov dword [ebx], eax
pop ebx
pop edx
push edi
call fcn.10017c47
inc edi
jmp 0x10018206
jmp 0x10018213
ror eax, 8
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push edi
call fcn.10017c47
inc edi
and dword [esp - 0x4e], ecx
ror eax, 8
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push edi
call fcn.10017c47
inc edi
ror eax, 8
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push eax
push 0
sub esi, 0
add dword [esp], edx
xor edx, edx
je 0x10018267
sub bl, byte [ebx]
mov eax, 0x64f7f691
int 0x82
xchg ebx, eax
ror cl, 1
into
out dx, eax
cld
test edx, ebx
or edx, 0x13e27bd2
push ebx
add ebx, esi
mov ebx, esp
xor dword [ebx - 0x2a], edi
fdiv qword [ecx]
jnp 0x1001824b
pop ebx
xor edx, 0x1b7d0cc
add edx, 0xedeb415d
xchg dword [esp], edx
push edx
mov edx, esp
call int.10018295
add dword [eax], 0x39
jle 0x10018271
sub al, 0xf5
mov ch, al
call fcn.100182aa
mov dword [edi], eax
pop ecx
pop edi
pop eax
leave
ret 0x10

Function at 0x10019f82
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push esi
push ecx
push edx
push 0
sub esi, esi
shr esi, 9
and dword [esp - 0x69], ebx
jbe 0x10019f98
add edi, 0
shr esi, 0x17
or esi, dword [esp]
add esp, 4
add esi, dword [ebp + 8]
xor eax, eax
xor edx, edx
cld
and dword [esp - 0x46], edx
xor ecx, ecx
rol edx, 7
and dword [esp - 0x4b], edx
xor dl, al
mov al, byte [esi]
inc esi
or al, al
jne 0x10019fa9
mov eax, edx
pop edx
pop ecx
pop esi
mov esp, ebp
mov ebp, dword [esp]
add esp, 4
push 0x54
call fcn.10019fea
std
inc ebx
sar cl, 0x3e
lahf
in al, dx
mov ch, 0x4a
mov ebx, 0x971631d8
test byte [ebp - 0x5e], ch
xor eax, dword [ebx + 0x2b5108c4]
add esp, 8
push ecx
sub ecx, eax
mov ecx, esp
cmp dword [ecx - 0x51], edx