joyce8/EMBER2024-capa huggingface dataset:
Function at 0x417fe1
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
mov eax, dword [ecx + 4]
and dword [ebp - 4], 0
mov ecx, dword [ecx]
push ebx
push edi
push 1
pop edx
mov edi, 0x159a55e5
test eax, eax
mov ebx, 0x1f123bb5
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x14], edx
jbe 0x4181a5
push esi
mov esi, 0xffff
jmp 0x41801e
push 1
pop edx
mov eax, edi
and eax, esi
imul eax, eax, 0x9069
shr edi, 0x10
add edi, eax
mov eax, ebx
and eax, esi
imul eax, eax, 0x4650
shr ebx, 0x10
add ebx, eax
mov eax, edi
shl eax, 0x10
add eax, ebx
xor eax, dword [ebp + 0xc]
mov ecx, eax
and ecx, edx
shr eax, 1
test ecx, ecx
mov dword [ebp - 8], eax
je 0x41818c
cmp dword [ebp - 4], 0x400
jb 0x41818c
lea ecx, [ebp - 8]
call fcn.004181ab
mov ecx, eax
mov eax, dword [ebp - 8]
shr dword [ebp - 8], 3
and eax, 7
inc ecx
test eax, eax
mov dword [ebp - 0xc], ecx
je 0x418155
lea ecx, [ebp - 8]
call fcn.004181ab
add dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x14]
push 1
pop eax
shl eax, cl
cmp eax, dword [ebp - 4]
jae 0x4180aa
push 1
inc ecx
pop eax
shl eax, cl
cmp eax, dword [ebp - 4]
jb 0x41809c
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp + 8]
cmp eax, ecx
mov dword [ebp - 0x10], eax
jbe 0x4180b7
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], 0x15
mov dword [ebp - 0x18], 5
ja 0x4180cb
mov dword [ebp - 0x18], 4
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 0x18]
push 1
pop eax
shl eax, cl
mov ecx, edi
and ecx, esi
imul ecx, ecx, 0x9069
shr edi, 0x10
add edi, ecx
mov ecx, ebx
and ecx, esi
dec eax
imul ecx, ecx, 0x4650
shr ebx, 0x10
add ebx, ecx
mov ecx, edi
shl ecx, 0x10
add ecx, ebx
and eax, edx
xor ecx, dword [ebp + 0xc]
add eax, 6
cmp eax, dword [ebp - 0x10]
mov edx, ecx
mov dword [ebp - 8], edx
ja 0x4180ce
mov dword [ebp - 0x24], 1
mov ecx, eax
mov eax, dword [ebp - 0x24]
shl eax, cl
dec eax
and eax, edx
cmp eax, dword [ebp - 4]
jb 0x41814e
mov eax, edi
and eax, esi
imul eax, eax, 0x9069
shr edi, 0x10
add edi, eax
mov eax, ebx
and eax, esi
mov edx, edi
imul eax, eax, 0x4650
shr ebx, 0x10
add ebx, eax
shl edx, 0x10
add edx, ebx
xor edx, dword [ebp + 0xc]
jmp 0x4180ce
mov ecx, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 4]
cmp ecx, eax
jbe 0x418164
mov dword [ebp - 0xc], eax
mov ecx, eax
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 4]
add dword [ebp - 4], ecx
add eax, edx
mov dword [ebp - 0x24], eax
sub eax, dword [ebp - 0x18]
test ecx, ecx
jbe 0x418198
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x24]
mov dl, byte [eax]
mov byte [ecx], dl
inc ecx
inc eax
dec dword [ebp - 0x10]
jne 0x41817f
jmp 0x418198
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 4]
inc dword [ebp - 4]
mov byte [ecx + edx], al
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x20]
jb 0x41801b
pop esi
pop edi
pop ebx
leave
ret 8
Function at 0x41a33d
Capabilities:
Encode data using xor

Disassembly:
test edx, edx
mov eax, ecx
jbe 0x41a454
mov ecx, edx
mov edx, dword [esp + 4]
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
add eax, edx
xor eax, edx
dec ecx
jne 0x41a34d
ret 4

Function at 0x41d7b6
Capabilities:
Encode data using xor

Disassembly:
push esi
or eax, 0xffffffff
xor esi, esi
test edx, edx
jbe 0x41d7e3
push ebx
push edi
movzx edi, byte [esi + ecx]
mov ebx, eax
and ebx, 0xff
xor edi, ebx
shr eax, 8
mov edi, dword [edi*4 + 0x4627a0]
xor eax, edi
inc esi
cmp esi, edx
jb 0x41d7c2
pop edi
pop ebx
not eax
pop esi
ret
Function at 0x41eadd
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
mov eax, 0x44d792
call fcn.0044b4c0
push ecx
push ebx
push esi
mov esi, ecx
xor ebx, ebx
mov dword [ebp - 0x10], esi
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [ebp - 4], ebx
mov dword [esi + 0xc], ebx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], ebx
mov dword [esi + 0x28], ebx
mov dword [esi + 0x2c], ebx
mov byte [esi + 0x30], bl
mov byte [esi + 0x31], bl
mov byte [esi + 0x32], bl
mov byte [esi + 0x33], bl
mov byte [esi + 0x34], bl
mov dword [esi + 0x38], ebx
mov dword [esi + 0x40], ebx
mov dword [esi + 0x48], ebx
mov dword [esi + 0x50], ebx
mov dword [esi + 0x58], ebx
mov dword [esi + 0x60], ebx
lea ecx, [esi + 0x68]
mov byte [ebp - 4], 3
mov dword [esi + 0x3c], ebx
mov dword [esi + 0x44], ebx
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x54], ebx
mov dword [esi + 0x5c], ebx
mov dword [esi + 0x64], ebx
call fcn.0041eb8c
lea eax, [esi + 0x8c]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov byte [ebp - 4], 5
mov byte [esi + 0x95], bl
mov dword [esi + 0x98], ebx
call fcn.00412458
mov ecx, dword [ebp - 0xc]
mov byte [esi + 0x94], al
mov eax, esi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret

Function at 0x421402
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
mov eax, 0x44db52
call fcn.0044b4c0
push ecx
push esi
mov esi, ecx
xor eax, eax
mov dword [ebp - 0x10], esi
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [ebp - 4], eax
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov dword [esi + 0x18], eax
lea ecx, [esi + 0x24]
mov byte [ebp - 4], 1
mov dword [esi + 0x1c], eax
mov byte [esi + 0x20], al
mov byte [esi + 0x21], al
call fcn.00402d43
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 2
call fcn.0042145c
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop esi
mov dword fs:[0], ecx
leave
ret

Function at 0x42140d
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
mov eax, 0x44db52
call fcn.0044b4c0
push ecx
push esi
mov esi, ecx
xor eax, eax
mov dword [ebp - 0x10], esi
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [ebp - 4], eax
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov dword [esi + 0x18], eax
lea ecx, [esi + 0x24]
mov byte [ebp - 4], 1
mov dword [esi + 0x1c], eax
mov byte [esi + 0x20], al
mov byte [esi + 0x21], al
call fcn.00402d43
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 2
call fcn.0042145c
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop esi
mov dword fs:[0], ecx
leave
ret
Function at 0x4214ae
Capabilities:
Access peb ldr_data

Disassembly:
mov eax, 0x44db9d
call fcn.0044b4c0
push ecx
push esi
mov esi, ecx
mov dword [ebp - 0x10], esi
mov dword [ebp - 4], 3
call fcn.0042d547
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 2
call fcn.00421504
push dword [esi + 0x24]
call fcn.004036ef
and byte [ebp - 4], 0
pop ecx
lea ecx, [esi + 0xc]
call fcn.0043decb
or dword [ebp - 4], 0xffffffff
mov ecx, esi
call fcn.00421ab3
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
leave
ret

Function at 0x422cbd
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
mov eax, 0x44dd92
call fcn.0044b4c0
push ecx
push esi
push edi
mov esi, ecx
xor edi, edi
mov dword [ebp - 0x10], esi
mov dword [esi + 4], edi
mov dword [esi + 8], edi
mov dword [esi + 0xc], edi
lea ecx, [esi + 0x48]
mov dword [ebp - 4], edi
call fcn.00402d43
lea ecx, [esi + 0x54]
mov byte [ebp - 4], 1
call fcn.00402d43
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0x38], edi
mov dword [esi + 0x30], edi
mov dword [esi + 0x28], edi
mov dword [esi + 0x20], edi
mov dword [esi + 0x18], edi
mov dword [esi + 0x10], edi
mov dword [esi + 0x3c], edi
mov dword [esi + 0x34], edi
mov dword [esi + 0x2c], edi
mov dword [esi + 0x24], edi
mov dword [esi + 0x1c], edi
mov dword [esi + 0x14], edi
mov dword [esi], fcn.0042246d
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret

Function at 0x423870
Capabilities:
Access peb ldr_data
Get ntdll base address
Get process heap flags

Disassembly:
mov eax, 0x44de21
call fcn.0044b4c0
push ecx
push ebx
push esi
mov esi, ecx
xor ebx, ebx
mov dword [ebp - 0x10], esi
mov dword [esi], ebx
mov dword [esi + 4], ebx
lea ecx, [esi + 0xc]
mov dword [ebp - 4], ebx
mov byte [esi + 8], bl
mov byte [esi + 9], bl
mov byte [esi + 0xa], bl
mov byte [esi + 0xb], bl
call fcn.004025e0
lea ecx, [esi + 0x18]
mov byte [ebp - 4], 1
call fcn.004025e0
lea ecx, [esi + 0x24]
mov byte [ebp - 4], 2
call fcn.004025e0
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 3
call fcn.004025e0
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0x40], ebx
mov dword [esi + 0x48], ebx
mov dword [esi + 0x44], ebx
mov dword [esi + 0x4c], ebx
mov eax, esi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret
Function at 0x426028
Capabilities:
Access peb ldr_data

Disassembly:
mov eax, 0x44e1da
call fcn.0044b4c0
push ecx
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
push edi
mov dword [ebp - 0x10], ebx
mov eax, dword [esi]
lea ecx, [ebx + 0x10]
mov dword [ebx], eax
mov eax, dword [esi + 4]
mov dword [ebx + 4], eax
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ebx + 0xc], eax
lea eax, [esi + 0x10]
push eax
call fcn.00402e5b
and dword [ebp - 4], 0
lea eax, [esi + 0x1c]
push eax
lea ecx, [ebx + 0x1c]
call fcn.00426244
mov eax, dword [esi + 0x28]
lea ecx, [ebx + 0x34]
mov dword [ebx + 0x28], eax
mov al, byte [esi + 0x2c]
mov byte [ebx + 0x2c], al
mov al, byte [esi + 0x2d]
mov byte [ebx + 0x2d], al
mov eax, dword [esi + 0x30]
mov dword [ebx + 0x30], eax
lea eax, [esi + 0x34]
push eax
mov byte [ebp - 4], 1
call fcn.004261d5
mov eax, dword [esi + 0x40]
add esi, 0x48
mov dword [ebx + 0x40], eax
mov eax, dword [esi - 4]
lea edi, [ebx + 0x48]
mov dword [ebx + 0x44], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc]
mov eax, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 4

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

Disassembly:
mov eax, 0x44e20d
call fcn.0044b4c0
push ecx
push esi
push edi
mov edi, dword [ebp + 8]
mov esi, ecx
push edi
mov dword [ebp - 0x10], esi
call fcn.0042619f
mov al, byte [edi + 8]
and dword [ebp - 4], 0
mov byte [esi + 8], al
mov al, byte [edi + 9]
mov byte [esi + 9], al
mov al, byte [edi + 0xa]
mov byte [esi + 0xa], al
mov al, byte [edi + 0xb]
mov byte [esi + 0xb], al
lea eax, [edi + 0xc]
push eax
lea ecx, [esi + 0xc]
call fcn.0040263c
lea eax, [edi + 0x18]
lea ecx, [esi + 0x18]
push eax
mov byte [ebp - 4], 1
call fcn.0040263c
lea eax, [edi + 0x24]
lea ecx, [esi + 0x24]
push eax
mov byte [ebp - 4], 2
call fcn.0040263c
lea eax, [edi + 0x30]
lea ecx, [esi + 0x30]
push eax
mov byte [ebp - 4], 3
call fcn.0040263c
mov eax, dword [edi + 0x40]
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0x40], eax
mov eax, dword [edi + 0x44]
mov dword [esi + 0x44], eax
mov eax, dword [edi + 0x48]
mov dword [esi + 0x48], eax
mov eax, dword [edi + 0x4c]
mov dword [esi + 0x4c], eax
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret 4
Function at 0x4264fa
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
push ebx
push esi
push edi
mov edi, ecx
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CreateDecoder
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
mov dword [ebp - 0xc], edi
mov ebx, dword [ecx + eax*4 - 4]
mov eax, dword [ebx]
push eax
call esi
mov dword [ebx + 0x18], eax
mov eax, dword [ebx]
push str.CreateEncoder
push eax
call esi
mov dword [ebx + 0x1c], eax
mov eax, dword [ebx]
push str.GetMethodProperty
push eax
call esi
test eax, eax
mov dword [ebx + 0x14], eax
je 0x426624
mov eax, dword [ebx]
push str.GetNumberOfMethods
push eax
mov dword [ebp - 8], 1
call esi
test eax, eax
je 0x42656a
lea ecx, [ebp - 8]
push ecx
call eax
test eax, eax
jne 0x426681
and dword [ebp - 4], 0
cmp dword [ebp - 8], 0
jbe 0x426624
jmp 0x42657d
mov edi, dword [ebp - 0xc]
mov eax, dword [edi + 0x10]
mov edx, dword [ebp - 4]
dec eax
mov ecx, dword [ebx + 0x14]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x2c]
push eax
push 3
mov dword [ebp - 0x34], edx
call fcn.00426686
test eax, eax
jne 0x426681
mov edx, dword [ebp - 4]
mov ecx, dword [ebx + 0x14]
lea eax, [ebp - 0x2f]
push eax
lea eax, [ebp - 0x1c]
push eax
push 2
call fcn.00426686
test eax, eax
jne 0x426681
mov edx, dword [ebp - 4]
mov ecx, dword [ebx + 0x14]
lea eax, [ebp - 0x2d]
push eax
lea eax, [ebp - 0x2e]
push eax
push 0xa
call fcn.00426707
test eax, eax
jne 0x426681
mov eax, dword [ebp - 0xc]
push 0xb
pop ecx
lea esi, [ebp - 0x38]
lea edi, [ebp - 0x64]
rep movsd dword es:[edi], dword [esi]
lea esi, [eax + 0x40]
mov ecx, esi
call fcn.00427fe7
mov edi, dword [esi + 4]
push 0xb
pop ecx
lea eax, [edi + 1]
imul edi, edi, 0x2c
add edi, dword [esi]
inc dword [ebp - 4]
mov dword [esi + 4], eax
mov eax, dword [ebp - 4]
lea esi, [ebp - 0x64]
rep movsd dword es:[edi], dword [esi]
cmp eax, dword [ebp - 8]
jb 0x42657a
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, dword [ebp - 0xc]
mov eax, dword [ebx]
push str.GetHashers
push eax
call esi
test eax, eax
je 0x42667f
add ebx, 0x24
push ebx
call eax
test eax, eax
jne 0x426681
mov ebx, dword [ebx]
test ebx, ebx
je 0x42667f
mov eax, dword [ebx]
push ebx
call dword [eax + 0xc]
and dword [ebp - 0xc], 0
mov dword [ebp - 8], eax
test eax, eax
jbe 0x42667f
lea ebx, [edi + 0x4c]
mov esi, dword [edi + 0x10]
mov ecx, ebx
dec esi
call fcn.0040bee8
mov eax, dword [ebx + 4]
mov edx, dword [ebx]
lea ecx, [eax + 1]
mov dword [ebx + 4], ecx
mov ecx, dword [ebp - 0xc]
mov dword [edx + eax*8], esi
mov dword [edx + eax*8 + 4], ecx
inc ecx
cmp ecx, dword [ebp - 8]
mov dword [ebp - 0xc], ecx
jb 0x426656
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret
Function at 0x42db7c
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
mov eax, 0x44e985
call fcn.0044b4c0
push ecx
push ebx
push esi
mov esi, ecx
xor ebx, ebx
mov dword [ebp - 0x10], esi
mov dword [esi], ebx
mov dword [ebp - 4], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
lea ecx, [esi + 0x18]
mov byte [ebp - 4], 3
mov byte [esi + 0x11], bl
mov byte [esi + 0x12], bl
mov byte [esi + 0x13], bl
mov byte [esi + 0x14], bl
mov byte [esi + 0x15], bl
mov byte [esi + 0x16], bl
mov byte [esi + 0x17], bl
call fcn.00402d43
lea ecx, [esi + 0x24]
mov byte [ebp - 4], 4
call fcn.00402d43
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 5
call fcn.00402d43
lea ecx, [esi + 0x78]
mov byte [ebp - 4], 6
mov dword [esi + 0x44], ebx
mov dword [esi + 0x48], ebx
mov word [esi + 0x4c], bx
mov byte [esi + 0x4e], bl
mov byte [esi + 0x4f], bl
call fcn.0042145c
lea ecx, [esi + 0xa8]
mov byte [ebp - 4], 7
call fcn.0042145c
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret

Function at 0x42db88
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
mov eax, 0x44e985
call fcn.0044b4c0
push ecx
push ebx
push esi
mov esi, ecx
xor ebx, ebx
mov dword [ebp - 0x10], esi
mov dword [esi], ebx
mov dword [ebp - 4], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
lea ecx, [esi + 0x18]
mov byte [ebp - 4], 3
mov byte [esi + 0x11], bl
mov byte [esi + 0x12], bl
mov byte [esi + 0x13], bl
mov byte [esi + 0x14], bl
mov byte [esi + 0x15], bl
mov byte [esi + 0x16], bl
mov byte [esi + 0x17], bl
call fcn.00402d43
lea ecx, [esi + 0x24]
mov byte [ebp - 4], 4
call fcn.00402d43
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 5
call fcn.00402d43
lea ecx, [esi + 0x78]
mov byte [ebp - 4], 6
mov dword [esi + 0x44], ebx
mov dword [esi + 0x48], ebx
mov word [esi + 0x4c], bx
mov byte [esi + 0x4e], bl
mov byte [esi + 0x4f], bl
call fcn.0042145c
lea ecx, [esi + 0xa8]
mov byte [ebp - 4], 7
call fcn.0042145c
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret
Function at 0x42ddc0
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
mov eax, 0x44ea06
call fcn.0044b4c0
push ecx
push esi
mov esi, ecx
xor eax, eax
push edi
mov dword [esi], 0x454498
mov dword [esi + 4], 0x454418
mov dword [esi + 8], 0x454488
mov dword [esi + 0xc], 0x453484
mov dword [esi + 0x10], 0x45435c
mov dword [esi + 0x14], eax
mov byte [esi + 0x18], al
mov dword [ebp - 0x10], esi
mov dword [esi + 0x1c], eax
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], eax
mov dword [ebp - 4], eax
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], eax
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], eax
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], eax
lea ecx, [esi + 0x48]
mov byte [ebp - 4], 2
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], eax
call fcn.00402d43
lea ecx, [esi + 0x54]
mov byte [ebp - 4], 3
call fcn.00402d43
lea edi, [esi + 0x60]
mov byte [ebp - 4], 4
mov ecx, edi
call fcn.00406532
lea ecx, [edi + 0x28]
call fcn.00402d43
lea ecx, [esi + 0x98]
mov byte [ebp - 4], 5
call fcn.0041692f
mov ecx, dword [ebp - 0xc]
mov dword [esi], 0x454474
mov dword [esi + 4], 0x454460
mov dword [esi + 8], 0x454450
mov dword [esi + 0xc], 0x454440
mov dword [esi + 0x10], 0x45442c
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret

Function at 0x42ddcb
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
mov eax, 0x44ea06
call fcn.0044b4c0
push ecx
push esi
mov esi, ecx
xor eax, eax
push edi
mov dword [esi], 0x454498
mov dword [esi + 4], 0x454418
mov dword [esi + 8], 0x454488
mov dword [esi + 0xc], 0x453484
mov dword [esi + 0x10], 0x45435c
mov dword [esi + 0x14], eax
mov byte [esi + 0x18], al
mov dword [ebp - 0x10], esi
mov dword [esi + 0x1c], eax
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], eax
mov dword [ebp - 4], eax
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], eax
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], eax
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], eax
lea ecx, [esi + 0x48]
mov byte [ebp - 4], 2
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], eax
call fcn.00402d43
lea ecx, [esi + 0x54]
mov byte [ebp - 4], 3
call fcn.00402d43
lea edi, [esi + 0x60]
mov byte [ebp - 4], 4
mov ecx, edi
call fcn.00406532
lea ecx, [edi + 0x28]
call fcn.00402d43
lea ecx, [esi + 0x98]
mov byte [ebp - 4], 5
call fcn.0041692f
mov ecx, dword [ebp - 0xc]
mov dword [esi], 0x454474
mov dword [esi + 4], 0x454460
mov dword [esi + 8], 0x454450
mov dword [esi + 0xc], 0x454440
mov dword [esi + 0x10], 0x45442c
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret
Function at 0x42e57c
Capabilities:
Access peb ldr_data

Disassembly:
mov eax, 0x44eac9
call fcn.0044b4c0
push ecx
push esi
push edi
mov edi, dword [ebp + 8]
mov esi, ecx
mov dword [ebp - 0x10], esi
mov eax, dword [edi]
lea ecx, [esi + 0x10]
mov dword [esi], eax
mov eax, dword [edi + 4]
mov dword [esi + 4], eax
mov eax, dword [edi + 8]
mov dword [esi + 8], eax
mov eax, dword [edi + 0xc]
mov dword [esi + 0xc], eax
lea eax, [edi + 0x10]
push eax
call fcn.00402e5b
and dword [ebp - 4], 0
lea eax, [edi + 0x1c]
push eax
lea ecx, [esi + 0x1c]
call fcn.00402e5b
mov eax, dword [edi + 0x28]
lea ecx, [esi + 0x30]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0x2c]
mov dword [esi + 0x2c], eax
lea eax, [edi + 0x30]
push eax
mov byte [ebp - 4], 1
call fcn.00402e5b
lea eax, [edi + 0x3c]
lea ecx, [esi + 0x3c]
push eax
mov byte [ebp - 4], 2
call fcn.00402e5b
mov al, byte [edi + 0x48]
mov ecx, dword [ebp - 0xc]
mov byte [esi + 0x48], al
mov al, byte [edi + 0x49]
mov byte [esi + 0x49], al
mov al, byte [edi + 0x4a]
mov byte [esi + 0x4a], al
mov al, byte [edi + 0x4b]
mov byte [esi + 0x4b], al
mov al, byte [edi + 0x4c]
mov byte [esi + 0x4c], al
mov al, byte [edi + 0x4d]
mov byte [esi + 0x4d], al
mov eax, dword [edi + 0x50]
mov dword [esi + 0x50], eax
mov eax, dword [edi + 0x54]
mov dword [esi + 0x54], eax
mov eax, dword [edi + 0x58]
mov dword [esi + 0x58], eax
mov eax, dword [edi + 0x5c]
mov dword [esi + 0x5c], eax
mov eax, dword [edi + 0x60]
mov dword [esi + 0x60], eax
mov eax, dword [edi + 0x64]
mov dword [esi + 0x64], eax
mov eax, dword [edi + 0x68]
mov dword [esi + 0x68], eax
mov al, byte [edi + 0x6c]
mov byte [esi + 0x6c], al
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
leave
ret 4
Function at 0x42e727
Capabilities:
Get process heap force flags

Disassembly:
mov eax, 0x44eb51
call fcn.0044b4c0
push ecx
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
push edi
mov dword [ebp - 0x10], ebx
mov eax, dword [esi]
test eax, eax
mov dword [ebx], eax
je 0x42e74b
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
mov eax, dword [esi + 4]
and dword [ebp - 4], 0
test eax, eax
mov dword [ebx + 4], eax
je 0x42e75f
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
mov eax, dword [esi + 8]
mov byte [ebp - 4], 1
test eax, eax
mov dword [ebx + 8], eax
je 0x42e773
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
mov eax, dword [esi + 0xc]
mov byte [ebp - 4], 2
test eax, eax
mov dword [ebx + 0xc], eax
je 0x42e787
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
mov al, byte [esi + 0x10]
lea ecx, [ebx + 0x18]
mov byte [ebx + 0x10], al
mov al, byte [esi + 0x11]
mov byte [ebx + 0x11], al
mov al, byte [esi + 0x12]
mov byte [ebx + 0x12], al
mov al, byte [esi + 0x13]
mov byte [ebx + 0x13], al
mov al, byte [esi + 0x14]
mov byte [ebx + 0x14], al
mov al, byte [esi + 0x15]
mov byte [ebx + 0x15], al
mov al, byte [esi + 0x16]
mov byte [ebx + 0x16], al
mov al, byte [esi + 0x17]
mov byte [ebx + 0x17], al
lea eax, [esi + 0x18]
push eax
mov byte [ebp - 4], 3
call fcn.00402e5b
lea eax, [esi + 0x24]
lea ecx, [ebx + 0x24]
push eax
mov byte [ebp - 4], 4
call fcn.00402e5b
lea eax, [esi + 0x30]
lea ecx, [ebx + 0x30]
push eax
mov byte [ebp - 4], 5
call fcn.00402e5b
mov eax, dword [esi + 0x3c]
add esi, 0x44
mov dword [ebx + 0x3c], eax
mov eax, dword [esi - 4]
lea edi, [ebx + 0x44]
mov dword [ebx + 0x40], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 8]
lea ecx, [ebx + 0x78]
mov byte [ebp - 4], 6
mov eax, dword [esi + 0x50]
mov dword [ebx + 0x50], eax
mov eax, dword [esi + 0x54]
mov dword [ebx + 0x54], eax
mov eax, dword [esi + 0x58]
mov dword [ebx + 0x58], eax
mov eax, dword [esi + 0x5c]
mov dword [ebx + 0x5c], eax
mov al, byte [esi + 0x60]
mov byte [ebx + 0x60], al
mov eax, dword [esi + 0x68]
mov dword [ebx + 0x68], eax
mov eax, dword [esi + 0x6c]
mov dword [ebx + 0x6c], eax
mov eax, dword [esi + 0x70]
mov dword [ebx + 0x70], eax
mov eax, dword [esi + 0x74]
mov dword [ebx + 0x74], eax
lea eax, [esi + 0x78]
push eax
call fcn.0042e886
lea eax, [esi + 0xa8]
lea ecx, [ebx + 0xa8]
push eax
mov byte [ebp - 4], 7
call fcn.0042e886
mov eax, dword [esi + 0xd8]
pop edi
mov dword [ebx + 0xd8], eax
mov eax, dword [esi + 0xdc]
mov dword [ebx + 0xdc], eax
mov eax, ebx
pop esi
mov ecx, dword [ebp - 0xc]
pop ebx
mov dword fs:[0], ecx
leave
ret 4