joyce8/EMBER2024-capa huggingface dataset:
Function at 0x2a42900
Capabilities:
Access peb ldr_data
Get process heap flags

Disassembly:
push 0xffffffffffffffff
push 0x2aef24b
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov esi, dword [esp + 0x24]
lea ecx, [esi + 4]
mov dword [esi], 0x2b0b004
call fcn.02a97c5a
push 4
mov dword [esp + 0x20], 0
call fcn.02a9b8b0
mov edi, eax
add esp, 4
test edi, edi
je 0x2a4297e
call fcn.02a97acb
mov dword [edi], eax
call fcn.02a979a0
push 0
lea ecx, [esp + 0x14]
mov ebx, eax
call fcn.02a97c1b
mov eax, dword [ebx + 4]
cmp eax, 0xffffffff
jae 0x2a42973
inc eax
mov dword [ebx + 4], eax
lea ecx, [esp + 0x10]
call fcn.02a97c43
jmp 0x2a42980
xor edi, edi
lea eax, [esi + 8]
mov dword [esi + 0x10], eax
lea ecx, [esi + 0x18]
mov dword [esi + 0x20], ecx
lea edx, [esi + 0x1c]
mov dword [esi + 0x24], edx
mov dword [esi + 0x38], edi
lea eax, [esi + 0xc]
mov dword [esi + 0x14], eax
lea ecx, [esi + 0x28]
mov dword [esi + 0x30], ecx
lea edx, [esi + 0x2c]
mov dword [esi + 0x34], edx
mov dword [eax], 0
mov eax, dword [esi + 0x24]
mov dword [eax], 0
mov ecx, dword [esi + 0x34]
mov dword [ecx], 0
mov edx, dword [esi + 0x10]
mov dword [edx], 0
mov eax, dword [esi + 0x20]
mov dword [eax], 0
mov ecx, dword [esi + 0x30]
mov dword [ecx], 0
mov eax, esi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x10
ret 4
Function at 0x2a4cf40
Capabilities:
Write file on windows

Disassembly:
sub esp, 0x408
mov eax, dword [0x2b197a0]
xor eax, esp
mov dword [esp + 0x404], eax
push ebp
push esi
push edi
push 0x3ff
lea eax, [esp + 0x15]
push 0
push eax
mov esi, ecx
mov edi, edx
mov byte [esp + 0x1c], 0
call fcn.02aa33a0
add esp, 0xc
push 0
push 0
push 0
push 0
push 0x2b0b65c
mov dword [esp + 0x20], 1
call dword [0x2af8334]
mov ebp, eax
test ebp, ebp
je 0x2a4d028
cmp dword [esi + 0x18], 8
jb 0x2a4cfa4
mov esi, dword [esi + 4]
jmp 0x2a4cfa7
add esi, 4
push 0
push 0x4000000
push 0
push 0
push esi
push ebp
call dword [0x2af8338]
mov esi, eax
test esi, esi
je 0x2a4d021
push 0x2b05ea8
push edi
call fcn.02a9cd3f
mov edi, eax
add esp, 8
test edi, edi
je 0x2a4d01a
cmp dword [esp + 0xc], 0
jbe 0x2a4d011
push ebx
mov ebx, dword [0x2af8340]
lea ecx, [esp + 0x10]
push ecx
push 0x3ff
lea edx, [esp + 0x1c]
push edx
push esi
call ebx
mov eax, dword [esp + 0x10]
push edi
push eax
lea ecx, [esp + 0x1c]
push 1
push ecx
call fcn.02a9d164
add esp, 0x10
cmp dword [esp + 0x10], 0
ja 0x2a4cfe2
pop ebx
push edi
call fcn.02a9c35b
add esp, 4
push esi
call dword [0x2af833c]
push ebp
call dword [0x2af833c]
mov ecx, dword [esp + 0x410]
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.02a9b567
add esp, 0x408
ret

Function at 0x2a4d9e0
Capabilities:
Encode data using xor
Read file on windows

Disassembly:
sub esp, 0x10
push ebx
push esi
push 0x48
xor ebx, ebx
push ebx
push edi
call fcn.02aa33a0
mov eax, dword [esp + 0x28]
push 0x2b05ea4
push eax
call fcn.02a9cd3f
mov esi, eax
add esp, 0x14
cmp esi, ebx
jne 0x2a4da10
pop esi
xor al, al
pop ebx
add esp, 0x10
ret
push esi
push 4
lea ecx, [esp + 0x1c]
push 1
push ecx
call fcn.02a9c2c7
push esi
push 4
lea edx, [esp + 0x28]
push 1
push edx
call fcn.02a9c2c7
add esp, 0x20
cmp dword [esp + 0x10], ebx
mov dword [edi + 0x44], ebx
mov byte [esp + 0xb], bl
mov dword [esp + 0xc], ebx
jle 0x2a4db06
push ebp
lea ebp, [edi + 4]
lea ebx, [edi + 8]
lea ecx, [ecx]
push esi
push 4
push 1
push edi
call fcn.02a9c2c7
push esi
push 4
push 1
push ebp
call fcn.02a9c2c7
push esi
push 0x3c
push 1
push ebx
call fcn.02a9c2c7
add esp, 0x30
mov eax, ebx
mov ecx, 0x3c
jmp 0x2a4da80
xor byte [eax], 0x55
inc eax
sub ecx, 1
jne 0x2a4da80
mov eax, dword [esp + 0x24]
push ebx
push eax
call fcn.02ab0d00
add esp, 8
test eax, eax
je 0x2a4dabe
mov eax, dword [esp + 0x10]
inc eax
cmp eax, dword [esp + 0x14]
mov dword [esp + 0x10], eax
jl 0x2a4da50
pop ebp
push esi
call fcn.02a9c35b
mov al, byte [esp + 0xf]
add esp, 4
pop esi
pop ebx
add esp, 0x10
ret
mov ecx, dword [ebp]
inc ecx
push ecx
mov byte [esp + 0x13], 1
call fcn.02a9e587
mov edx, dword [edi]
push 0
push edx
push esi
mov dword [edi + 0x44], eax
call fcn.02a9cde0
mov eax, dword [ebp]
mov ecx, dword [edi + 0x44]
push esi
push eax
push 1
push ecx
call fcn.02a9c2c7
xor eax, eax
add esp, 0x20
cmp dword [ebp], eax
jbe 0x2a4db05
mov edx, dword [edi + 0x44]
xor byte [edx + eax], 0x55
lea ecx, [edx + eax]
inc eax
cmp eax, dword [ebp]
jb 0x2a4daf5
pop ebp
push esi
call fcn.02a9c35b
mov al, byte [esp + 0xf]
add esp, 4
pop esi
pop ebx
add esp, 0x10
ret
Function at 0x2a4e1d0
Capabilities:
Parse pe header

Disassembly:
cmp esi, 0x40
jae 0x2a4e1d8
xor eax, eax
ret
mov ecx, 0x5a4d
mov dword [edx + 0xc], eax
cmp word [eax], cx
jne 0x2a4e1d5
mov ecx, dword [eax + 0x3c]
push edi
lea edi, [ecx + 0xf8]
cmp esi, edi
jb 0x2a4e256
add eax, ecx
mov dword [edx + 0x10], eax
cmp dword [eax], 0x4550
jne 0x2a4e256
movzx ecx, word [eax + 0x16]
test ecx, 0x2000
je 0x2a4e256
test cl, 2
je 0x2a4e256
mov ecx, pe_nt_image_headers32
cmp word [eax + 0x14], cx
jne 0x2a4e256
mov edi, dword [edx + 0x10]
push ebx
lea ecx, [eax + 0xf8]
xor ebx, ebx
mov dword [edx + 0x14], ecx
xor eax, eax
cmp bx, word [edi + 6]
pop ebx
jae 0x2a4e24f
add ecx, 0x10
mov edi, dword [ecx + 4]
add edi, dword [ecx]
cmp edi, esi
ja 0x2a4e256
mov edi, dword [edx + 0x10]
movzx edi, word [edi + 6]
inc eax
add ecx, 0x28
cmp eax, edi
jl 0x2a4e237
mov eax, 1
pop edi
ret
xor eax, eax
pop edi
ret

Function at 0x2a4e2e0
Capabilities:
Enumerate pe sections

Disassembly:
mov eax, dword [esi + 0x10]
movzx ecx, word [eax + 6]
mov edx, dword [eax + 0x54]
push ebx
lea ecx, [ecx + ecx*4]
push ebp
mov ebp, dword [esp + 0xc]
lea eax, [edx + ecx*8]
mov ecx, dword [esp + 0x10]
push eax
push ecx
push ebp
call fcn.02aa2800
mov edx, dword [esi + 0x10]
xor eax, eax
add esp, 0xc
xor ebx, ebx
cmp ax, word [edx + 6]
jae 0x2a4e34d
push edi
xor edi, edi
mov ecx, dword [esi + 0x14]
lea eax, [ecx + edi]
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x2a4e33d
mov edx, dword [eax + 0x10]
test edx, edx
je 0x2a4e33d
push edx
mov edx, dword [eax + 0x14]
add edx, dword [esp + 0x18]
add ecx, ebp
push edx
push ecx
call fcn.02aa2800
add esp, 0xc
mov eax, dword [esi + 0x10]
movzx ecx, word [eax + 6]
inc ebx
add edi, 0x28
cmp ebx, ecx
jl 0x2a4e315
pop edi
mov dword [esi + 0xc], ebp
mov edx, dword [ebp + 0x3c]
lea eax, [edx + ebp]
mov dword [esi + 0x10], eax
add eax, 0xf8
pop ebp
mov dword [esi + 0x14], eax
pop ebx
ret 8
Function at 0x2a53e70
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x2af2bc1
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov esi, dword [esp + 0x24]
mov ebx, 7
xor edi, edi
xor eax, eax
mov dword [esi + 0x30], ebx
mov dword [esi + 0x2c], edi
mov word [esi + 0x1c], ax
mov dword [esp + 0x1c], edi
xor ecx, ecx
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x48], edi
mov word [esi + 0x38], cx
xor edx, edx
mov dword [esi + 0x68], ebx
mov dword [esi + 0x64], edi
mov word [esi + 0x54], dx
lea eax, [esi + 0x8c]
push eax
mov byte [esp + 0x20], 2
call fcn.02a34560
mov dword [esi + 0xbc], ebx
mov dword [esi + 0xb8], edi
xor ecx, ecx
mov word [esi + 0xa8], cx
mov dword [esi + 0xe0], ebx
mov dword [esi + 0xdc], edi
xor edx, edx
mov word [esi + 0xcc], dx
mov dword [esi + 0xfc], ebx
mov dword [esi + 0xf8], edi
xor eax, eax
mov word [esi + 0xe8], ax
mov dword [esi + 0x118], ebx
mov dword [esi + 0x114], edi
mov word [esi + 0x104], cx
mov dword [esi + 0x134], ebx
mov dword [esi + 0x130], edi
mov word [esi + 0x120], dx
mov dword [esi + 0x150], ebx
mov dword [esi + 0x14c], edi
mov word [esi + 0x13c], ax
mov dword [esi + 0x16c], ebx
mov dword [esi + 0x168], edi
mov word [esi + 0x158], cx
mov dword [esi + 0x188], ebx
mov dword [esi + 0x184], edi
mov word [esi + 0x174], dx
mov dword [esi + 0x1a4], ebx
mov dword [esi + 0x1a0], edi
mov word [esi + 0x190], ax
mov dword [esi + 0x1c4], ebx
mov dword [esi + 0x1c0], edi
mov word [esi + 0x1b0], cx
mov eax, 1
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [esi], edi
mov dword [esi + 0xc], 0x3e8
mov dword [esi + 0x10], edi
mov eax, esi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x10
ret 4
Function at 0x2a58040
Capabilities:
Access peb ldr_data
Get process heap flags

Disassembly:
push 0xffffffffffffffff
push 0x2af185b
mov eax, dword fs:[0]
push eax
push ebx
push esi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0xc]
mov dword fs:[0], eax
mov esi, dword [esp + 0x1c]
push esi
call fcn.02a34560
lea eax, [esi + 0x18]
xor ebx, ebx
push eax
mov dword [esp + 0x18], ebx
call fcn.02a34560
lea ecx, [esi + 0x30]
push ecx
mov byte [esp + 0x18], 1
call fcn.02a34560
lea edx, [esi + 0x48]
push edx
mov byte [esp + 0x18], 2
call fcn.02a34560
lea eax, [esi + 0x60]
push eax
mov byte [esp + 0x18], 3
call fcn.02a34560
lea ecx, [esi + 0x78]
push ecx
mov byte [esp + 0x18], 4
call fcn.02a34560
lea edx, [esi + 0x90]
push edx
mov byte [esp + 0x18], 5
call fcn.02a34560
lea eax, [esi + 0xa8]
push eax
mov byte [esp + 0x18], 6
call fcn.02a34560
lea ecx, [esi + 0xc0]
push ecx
mov byte [esp + 0x18], 7
call fcn.02a34560
lea edx, [esi + 0xe8]
push edx
mov byte [esp + 0x18], 8
call fcn.02a34560
lea eax, [esi + 0x100]
push eax
mov byte [esp + 0x18], 9
call fcn.02a34560
lea ecx, [esi + 0x118]
push ecx
mov byte [esp + 0x18], 0xa
call fcn.02a34560
lea edx, [esi + 0x130]
push edx
mov byte [esp + 0x18], 0xb
call fcn.02a34560
lea eax, [esi + 0x148]
push eax
mov byte [esp + 0x18], 0xc
call fcn.02a34560
lea ecx, [esi + 0x160]
push ecx
mov byte [esp + 0x18], 0xd
call fcn.02a34560
lea edx, [esi + 0x178]
push edx
mov byte [esp + 0x18], 0xe
call fcn.02a34560
mov byte [esp + 0x14], 0xf
lea eax, [esi + 0x190]
push eax
call fcn.02a34560
mov dword [esi + 0x1bc], ebx
mov eax, 0xf
mov dword [esi + 0x1c0], eax
mov byte [esi + 0x1ac], bl
mov dword [esi + 0x1e8], eax
mov dword [esi + 0x1e4], ebx
mov byte [esi + 0x1d4], bl
mov dword [esi + 0x1c8], 1
mov byte [esi + 0x1c4], bl
mov dword [esi + 0x1cc], ebx
mov eax, esi
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
add esp, 0xc
ret 4
Function at 0x2a5dd70
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x2af03fe
mov eax, dword fs:[0]
push eax
push ebx
push esi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0xc]
mov dword fs:[0], eax
mov esi, dword [esp + 0x1c]
xor ecx, ecx
mov eax, 0xf
mov dword [esi + 0x18], eax
mov dword [esi + 0x14], ecx
mov byte [esi + 4], cl
mov dword [esp + 0x14], ecx
mov dword [esi + 0x34], eax
mov dword [esi + 0x30], ecx
mov byte [esi + 0x20], cl
mov dword [esi + 0x50], eax
mov dword [esi + 0x4c], ecx
mov byte [esi + 0x3c], cl
mov eax, edi
mov byte [esp + 0x14], 2
lea ebx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, cl
jne 0x2a5ddc6
sub eax, ebx
push eax
push edi
mov ecx, esi
call fcn.02a31db0
mov eax, esi
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
add esp, 0xc
ret 4

Function at 0x2a5e3c0
Capabilities:
Access peb ldr_data
Get process heap flags

Disassembly:
push 0xffffffffffffffff
push 0x2af3337
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov edi, dword [esp + 0x24]
xor ebx, ebx
mov dword [esp + 0x10], ebx
mov dword [edi], 0x2b0c36c
mov dword [edi + 0x58], 0x2b0affc
lea esi, [edi + 8]
push esi
mov dword [esp + 0x20], ebx
push edi
mov dword [esp + 0x18], 1
call fcn.02a40a10
mov dword [esp + 0x1c], 1
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push esi
mov dword [edi + ecx], 0x2b0c368
call fcn.02a42900
lea edx, [esi + 8]
mov dword [esi + 0x10], edx
lea ecx, [esi + 0x18]
mov dword [esi + 0x20], ecx
lea edx, [esi + 0x1c]
mov dword [esi + 0x24], edx
mov dword [esi], 0x2b0c32c
mov byte [esi + 0x48], bl
mov byte [esi + 0x41], bl
lea eax, [esi + 0xc]
mov dword [esi + 0x14], eax
lea ecx, [esi + 0x28]
mov dword [esi + 0x30], ecx
lea edx, [esi + 0x2c]
mov dword [esi + 0x34], edx
mov dword [eax], ebx
mov eax, dword [esi + 0x24]
mov dword [eax], ebx
mov ecx, dword [esi + 0x34]
mov dword [ecx], ebx
mov edx, dword [esi + 0x10]
mov dword [edx], ebx
mov eax, dword [esi + 0x20]
mov edx, dword [0x2b1cfe0]
mov dword [eax], ebx
mov ecx, dword [esi + 0x30]
mov dword [ecx], ebx
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x44], edx
mov dword [esi + 0x3c], ebx
mov eax, edi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x10
ret 4
Function at 0x2a5fd40
Capabilities:
Encode data using xor

Disassembly:
xor al, al
cmp dword [esp + 8], 0
push ebp
mov ebp, dword [esp + 8]
je 0x2a5fdd7
test ebp, ebp
je 0x2a5fdd7
mov eax, ebp
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x2a5fd60
sub eax, edx
push ebx
sar eax, 1
shr eax, 1
push esi
mov ebx, eax
push edi
lea edi, [ebx + 2]
push edi
call fcn.02a976b6
mov esi, eax
add esp, 4
test esi, esi
je 0x2a5fdd2
push edi
push 0
push esi
call fcn.02aa33a0
push esi
push ebp
mov eax, ebx
call fcn.02a32a10
add esp, 0x14
xor eax, eax
test ebx, ebx
jbe 0x2a5fdab
xor byte [eax + esi], bl
inc eax
cmp eax, ebx
jb 0x2a5fda3
mov ecx, dword [esp + 0x18]
lea eax, [ebx + ebx]
push eax
push ecx
push ebx
push esi
push 0
push 0
call dword [0x2af818c]
push esi
mov bl, 1
call fcn.02a9bf56
add esp, 4
pop edi
pop esi
mov al, bl
pop ebx
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
pop ebp
ret
Function at 0x2a62ee0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x2af2529
mov eax, dword fs:[0]
push eax
sub esp, 0x4c
mov eax, dword [0x2b197a0]
xor eax, esp
mov dword [esp + 0x48], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0x60]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x70]
xor ebx, ebx
mov dword [esp + 0x3c], ebp
mov edi, ecx
mov dword [esp + 0x38], ebx
mov esi, 1
push ebp
mov dword [esp + 0x6c], esi
call fcn.02a34560
mov dword [esp + 0x38], esi
cmp edi, ebx
je 0x2a63086
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x2a62f42
sub eax, edx
mov dword [esp + 0x18], eax
cmp dword [esp + 0x88], eax
jb 0x2a63086
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x4c]
mov dword [esp + 0x64], 0xf
mov dword [esp + 0x60], ebx
mov byte [esp + 0x50], bl
call fcn.02a32250
mov byte [esp + 0x68], 2
cmp dword [esp + 0x54], ebx
jbe 0x2a63072
lea esp, [esp]
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x2a62f95
sub eax, edx
push eax
push edi
lea ecx, [esp + 0x48]
push ecx
xor eax, eax
call fcn.02a339b0
mov esi, eax
cmp esi, ebx
jge 0x2a62fbd
cmp dword [esp + 0x54], ebx
ja 0x2a62f90
jmp 0x2a63072
cmp dword [esp + 0x58], 0x10
mov eax, dword [esp + 0x44]
jae 0x2a62fcc
lea eax, [esp + 0x44]
push esi
mov edi, 0xf
push eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.02a31db0
lea edx, [esp + 0x1c]
push edx
mov ebx, ebp
mov byte [esp + 0x6c], 3
call fcn.02a49040
mov byte [esp + 0x68], 2
cmp dword [esp + 0x34], 0x10
jb 0x2a63012
mov eax, dword [esp + 0x20]
push eax
call fcn.02a9b828
add esp, 4
mov ecx, dword [esp + 0x18]
push 0xffffffffffffffff
add esi, ecx
push esi
lea edx, [esp + 0x48]
xor ebx, ebx
push edx
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], edi
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x2c], bl
call fcn.02a32250
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x4c]
mov byte [esp + 0x74], 4
call fcn.02a32250
mov byte [esp + 0x68], 2
cmp dword [esp + 0x34], 0x10
jb 0x2a63066
mov ecx, dword [esp + 0x20]
push ecx
call fcn.02a9b828
add esp, 4
lea edx, [esp + 0x40]
push edx
mov ebx, ebp
call fcn.02a49040
cmp dword [esp + 0x58], 0x10
jb 0x2a63086
mov eax, dword [esp + 0x44]
push eax
call fcn.02a9b828
add esp, 4
cmp dword [esp + 0x8c], 0x10
jb 0x2a6309d
mov ecx, dword [esp + 0x78]
push ecx
call fcn.02a9b828
add esp, 4
mov eax, ebp
mov ecx, dword [esp + 0x60]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x48]
xor ecx, esp
call fcn.02a9b567
add esp, 0x58
ret
Function at 0x2a636e0
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push 0xffffffffffffffff
push 0x2af03b6
mov eax, dword fs:[0]
push eax
push ebx
push esi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0xc]
mov dword fs:[0], eax
mov esi, dword [esp + 0x1c]
mov dword [esi], 0x2b0cecc
xor ebx, ebx
xor eax, eax
mov dword [esi + 0x20], 7
mov dword [esi + 0x1c], ebx
mov word [esi + 0xc], ax
lea ecx, [esi + 0x48]
push ecx
mov dword [esp + 0x18], ebx
call fcn.02a34560
lea edx, [esi + 0x60]
push edx
mov byte [esp + 0x18], 1
call fcn.02a34560
mov dword [esi + 0x34], ebx
mov dword [esi + 0x38], 0xffffffff
mov dword [esi + 0x3c], 0x2710
mov dword [esi + 0x40], 0x3a98
mov dword [esi + 0x44], ebx
mov dword [esi + 0x28], ebx
mov dword [esi + 0x30], ebx
mov byte [esi + 0x78], bl
mov eax, esi
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
add esp, 0xc
ret 4
Function at 0x2a6e870
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x2af4503
mov eax, dword fs:[0]
push eax
sub esp, 0x64
mov eax, dword [0x2b197a0]
xor eax, esp
mov dword [esp + 0x60], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov eax, dword [esp + 0x8c]
mov ebp, dword [esp + 0x88]
movzx ebx, ax
shr eax, 0x10
mov esi, eax
push esi
push ecx
call fcn.02a6b2b0
add esp, 4
push eax
call fcn.02a57f70
xor edi, edi
mov dword [esp + 0x1c], eax
cmp ebx, edi
jne 0x2a6e9a1
push pe_nt_image_headers32
call fcn.02a9b8b0
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x80], edi
cmp eax, edi
je 0x2a6e8fe
push esi
mov esi, eax
call fcn.02a6ecc0
mov ebx, eax
jmp 0x2a6e900
xor ebx, ebx
sub esp, 0x1c
mov dword [esp + 0x9c], 0xffffffff
mov ecx, esp
mov eax, ebp
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], edi
mov dword [esp + 0x34], esp
mov byte [ecx + 4], 0
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x2a6e927
sub eax, esi
push eax
push ebp
call fcn.02a31db0
lea esi, [esp + 0x58]
call fcn.02a33fc0
add esp, 0x1c
mov ebp, 8
mov dword [esp + 0x80], 1
cmp dword [eax + 0x18], ebp
jb 0x2a6e95d
mov eax, dword [eax + 4]
jmp 0x2a6e960
add eax, 4
mov edx, eax
call fcn.02a6ed20
mov dword [esp + 0x80], 0xffffffff
cmp dword [esp + 0x54], ebp
jb 0x2a6e985
mov eax, dword [esp + 0x40]
push eax
call fcn.02a9b828
add esp, 4
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x18], ebx
add edi, 0xe0
lea ebx, [esp + 0x18]
call fcn.02a6ebe0
jmp 0x2a6ea9b
cmp ebx, 1
jne 0x2a6ea9b
xor ecx, ecx
push 9
mov word [esp + 0x60], cx
push 0x2b0d6b0
lea ecx, [esp + 0x60]
mov dword [esp + 0x78], 7
mov dword [esp + 0x74], edi
call fcn.02a32890
sub esp, 0x1c
mov ecx, esp
mov ebx, 2
mov dword [esp + 0x9c], ebx
mov eax, ebp
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], edi
mov dword [esp + 0x34], esp
mov byte [ecx + 4], 0
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x2a6e9f5
sub eax, esi
push eax
push ebp
call fcn.02a31db0
lea esi, [esp + 0x3c]
call fcn.02a33fc0
add esp, 0x1c
push 0xffffffffffffffff
push edi
push eax
lea ecx, [esp + 0x64]
mov byte [esp + 0x8c], 3
call fcn.02a3c370
mov ebp, 8
mov byte [esp + 0x80], bl
cmp dword [esp + 0x38], ebp
jb 0x2a6ea45
mov edx, dword [esp + 0x24]
push edx
call fcn.02a9b828
add esp, 4
push 5
push str.__DISPLAY_RDY__
lea esi, [esp + 0x60]
call fcn.02a3c030
mov edi, dword [esp + 0x1c]
call fcn.02a6b970
test eax, eax
je 0x2a6ea88
mov esi, dword [eax + 4]
push 0x3e8
call dword [0x2af8184]
mov eax, dword [esp + 0x5c]
cmp dword [esp + 0x70], ebp
jae 0x2a6ea7e
lea eax, [esp + 0x5c]
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0x28]
mov ecx, esi
call eax
cmp dword [esp + 0x70], ebp
jb 0x2a6ea9b
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.02a9b828
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x60]
xor ecx, esp
call fcn.02a9b567
add esp, 0x70
ret 8
Function at 0x2a72680
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x2aef47b
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 8], esi
mov dword [esi], 0x2b0da20
mov dword [esp + 0x14], 0
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x2a726c5
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov ecx, dword [esi + 0xc]
test ecx, ecx
je 0x2a726d4
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
dec dword [0x2b1cc40]
mov dword [esi + 0x14], 0x2b0e2f8
cmp dword [esi + 0x30], 8
jb 0x2a726f3
mov eax, dword [esi + 0x1c]
push eax
call fcn.02a9b828
add esp, 4
xor ecx, ecx
mov dword [esi + 0x30], 7
mov dword [esi + 0x2c], 0
mov word [esi + 0x1c], cx
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x10
ret
Function at 0x2a7b120
Capabilities:
Hash data using crc32b

Disassembly:
cmp byte [0x2b1c83c], 0
jne 0x2a7b272
push esi
xor edx, edx
push edi
xor eax, eax
test dl, 1
je 0x2a7b13d
mov eax, 0x80
mov ecx, edx
shr ecx, 1
test cl, 1
je 0x2a7b149
or eax, 0x40
shr ecx, 1
test cl, 1
je 0x2a7b153
or eax, 0x20
shr ecx, 1
test cl, 1
je 0x2a7b15d
or eax, 0x10
shr ecx, 1
test cl, 1
je 0x2a7b167
or eax, 8
shr ecx, 1
test cl, 1
je 0x2a7b171
or eax, 4
shr ecx, 1
test cl, 1
je 0x2a7b17b
or eax, 2
test cl, 2
je 0x2a7b183
or eax, 1
shl eax, 0x18
mov ecx, eax
and eax, 0x80000000
neg eax
sbb eax, eax
add ecx, ecx
and eax, 0x4c11db7
xor eax, ecx
mov ecx, eax
and ecx, 0x80000000
neg ecx
sbb ecx, ecx
and ecx, 0x4c11db7
add eax, eax
xor ecx, eax
mov eax, ecx
and eax, 0x80000000
neg eax
sbb eax, eax
add ecx, ecx
and eax, 0x4c11db7
xor eax, ecx
mov ecx, eax
and ecx, 0x80000000
neg ecx
sbb ecx, ecx
and ecx, 0x4c11db7
add eax, eax
xor ecx, eax
mov eax, ecx
and eax, 0x80000000
neg eax
sbb eax, eax
add ecx, ecx
and eax, 0x4c11db7
xor eax, ecx
mov ecx, eax
and ecx, 0x80000000
neg ecx
sbb ecx, ecx
and ecx, 0x4c11db7
add eax, eax
xor ecx, eax
mov eax, ecx
and eax, 0x80000000
neg eax
sbb eax, eax
add ecx, ecx
and eax, 0x4c11db7
xor eax, ecx
mov ecx, eax
and ecx, 0x80000000
neg ecx
sbb ecx, ecx
and ecx, 0x4c11db7
add eax, eax
xor ecx, eax
xor esi, esi
mov dword [edx*4 + 0x2b1c840], ecx
mov eax, ecx
lea ecx, [esi + 0x1f]
lea esp, [esp]
test al, 1
je 0x2a7b24d
mov edi, 1
shl edi, cl
or esi, edi
dec ecx
shr eax, 1
cmp ecx, 0xffffffff
jg 0x2a7b240
mov dword [edx*4 + 0x2b1c840], esi
inc edx
cmp edx, 0xff
jle 0x2a7b131
pop edi
mov byte [0x2b1c83c], 1
pop esi
ret

Function at 0x2a7bf60
Capabilities:
Access peb ldr_data
Get process heap flags

Disassembly:
push 0xffffffffffffffff
push 0x2af3227
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x2b197a0]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov edi, dword [esp + 0x24]
xor ebx, ebx
mov dword [esp + 0x10], ebx
mov dword [edi], 0x2b0de24
mov dword [edi + 0x54], 0x2b0affc
lea esi, [edi + 4]
push esi
mov dword [esp + 0x20], ebx
push edi
mov dword [esp + 0x18], 1
call fcn.02a40980
mov dword [esp + 0x1c], 1
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push esi
mov dword [edi + ecx], 0x2b0de20
call fcn.02a42900
lea edx, [esi + 8]
mov dword [esi + 0x10], edx
lea ecx, [esi + 0x18]
mov dword [esi + 0x20], ecx
lea edx, [esi + 0x1c]
mov dword [esi + 0x24], edx
mov dword [esi], 0x2b0c32c
mov byte [esi + 0x48], bl
mov byte [esi + 0x41], bl
lea eax, [esi + 0xc]
mov dword [esi + 0x14], eax
lea ecx, [esi + 0x28]
mov dword [esi + 0x30], ecx
lea edx, [esi + 0x2c]
mov dword [esi + 0x34], edx
mov dword [eax], ebx
mov eax, dword [esi + 0x24]
mov dword [eax], ebx
mov ecx, dword [esi + 0x34]
mov dword [ecx], ebx
mov edx, dword [esi + 0x10]
mov dword [edx], ebx
mov eax, dword [esi + 0x20]
mov edx, dword [0x2b1cfe0]
mov dword [eax], ebx
mov ecx, dword [esi + 0x30]
mov dword [ecx], ebx
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x44], edx
mov dword [esi + 0x3c], ebx
mov eax, edi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x10
ret 4