joyce8/EMBER2024-capa huggingface dataset:
Function at 0x86abc0
Capabilities:
Execute anti-debugging instructions

Disassembly:
xchg ebp, eax
neg ah
cld
mov dword [esp + 0x10], esp
mov word [esp + 0x12], cx
jmp 0x86abd8
xchg word [esp + 9], di
lea esi, [eax*4]
setle ch
push word [esp + 0x14]
bsf cx, sp
pop ecx
jmp 0x86ab82
jmp 0x86ab98
shr dx, 3
dec ebx
setne al
pop eax
xchg byte [esp + 8], ah
bsr edi, ebp
jmp 0x86abee
mov word [esp + 4], ax
mov dh, bl
mov ah, cl
mov dh, byte [esp + 0xc]
not si
mov ebp, dword [esp + 0x13]
jmp 0x86abc2
cmc
bt bp, di
lea ebp, [esp + ebp]
push dword [esp + 0x11]
dec bp
mov dx, word [esp + 0xd]
jmp 0x86afbe
pop word [esp + 8]
xchg esi, edx
pushfd
xchg word [esp + 7], bp
add esp, 0
jmp 0x86ac95
xchg dx, si
mov esi, edi
adc dh, 0xa0
lea ebx, [ebx + 0xd]
neg bp
xchg dl, dh
jmp 0x86ac2c
clc
lea ecx, [eax + edi]
mov si, word [esp + 0xc]
clc
xchg edx, ebx
mov byte [esp + 7], al
jmp 0x86ac7d
mov ch, ah
mov si, 0x4478
mov word [esp + 4], bp
neg ah
pop dword [esp]
pop edx
jmp 0x86ac54
lea esp, [esp + 8]
mov ecx, 0x6c3b4143
mov dword [esp], esp
mov byte [esp + 1], dh
jmp 0x86acee
bsf edx, esi
bswap ebp
mov dword [esp + 3], ecx
sub esp, 5
setae bl
rdtsc
jmp 0x86ac6a
lea ecx, [edx*4]
push word [esp + 4]
rdtsc
inc si
jmp 0x86acd5
setns al
push dword [esp + 5]
mov esi, dword [esp + 0xe]
pop word [esp + 1]
bswap ecx
setns al
jmp 0x86aca8
mov edx, ebx
pushal
xchg di, ax
pop ebp
xchg word [esp + 0xe], ax
mov esi, edx
jmp 0x86ae17
add esp, 1
xchg dx, bx
sub esp, 3
push word [esp + 1]
push word [esp + 6]
setne bh
jmp 0x86acbe
add esp, 3
cpuid
sete al
cpuid
lea ecx, reloc.RASAPI32.dll_RasHangUpA
call fcn.0086ad06
mov ah, byte [0xf66c754]
mov dword [reloc.RASAPI32.dll_RasHangUpA], eax
sbb al, 0x24
bt ax, bp
bswap ebp
mov dword [esp], ebx
mov dl, byte [esp + 2]
btr ebp, edx
rdtsc
jmp 0x86ad1c
sub esp, 0x1a
lea esp, [esp + 0x45]
rdtsc
setae bh
not edi
pushfd
jmp 0x86ad35
neg dx
mov ecx, esp
lea esp, [esp + 9]
mov ax, word [esp + 7]
bsr dx, cx
mov word [esp + 4], bx
jmp 0x86ac42
mov ebp, 0x66d8783c
pop word [esp + 5]
xchg edi, edx
cmc
mov al, 0x8b
push word [esp + 0xf]
jmp 0x86aeb2

Function at 0x86ad06
Capabilities:
Execute anti-debugging instructions

Disassembly:
xchg di, bx
jmp 0x86adc2
neg esi
mov ch, 0xfe
pop di
lea eax, [esi*4]
jmp 0x86ad88
xchg edx, eax
mov byte [esp], bh
mov edi, 0x6654db99
cmc
mov dx, word [esp + 1]
rdtsc
jmp 0x86ad49
or bh, 0x2b
mov al, cl
rdtsc
clc
call fcn.0086ad9e
pop ebx
fimul dword [eax + 0x2f]
invalid
mov cx, 0x318b
bts ecx, ecx
mov ebp, 0x82903105
mov al, 0x2d
bt ecx, edx
not dx
jmp 0x86ad72
add esp, 0
mov dword [esp], ebx
shl al, 1
lea esp, [esp + 3]
cld
mov ebp, 0xae1b8631
jmp 0x86ad5f

Function at 0x86b225
Capabilities:
Execute anti-debugging instructions

Disassembly:
inc ax
seto bh
jmp 0x86b230
mov ebp, 0x7e10fb6
mov ah, byte [esp + 2]
add esp, 0
mov cx, di
not al
not si
jmp 0x86b274
mov di, word [esp]
shl bx, cl
push dword [esp]
lea esp, [esp + 4]
add esp, 3
cld
jmp 0x86b25e
Function at 0x86e7c9
Capabilities:
Execute anti-debugging instructions

Disassembly:
std
not ah
mov si, word [esp + 2]
btr eax, eax
jmp 0x86e7e1
jmp 0x86e7b3
lea eax, [edi + ebp]
setae al
ror al, cl
mov di, word [esp]
jmp 0x86e83a
lea ebx, [edx*4]
mov bh, 0xb7
rcr ah, 3
add esp, 3
mov edi, eax
mov edi, ebp
jmp 0x86e7cb
mov ecx, 0x2f24c1a5
mov bp, word [esp]
stc
mov cx, word [esp]
mov esi, 0x60178b29
inc bp
jmp 0x86e819

Function at 0x86ebb8
Capabilities:
Execute anti-debugging instructions

Disassembly:
bsr cx, si
pop ax
xor al, ah
or edi, edi
sub esp, 0x19
jmp 0x86ebeb
dec cl
mov ecx, ebx
mov eax, 0xd66054eb
xchg byte [esp], cl
mov cx, word [esp]
jmp 0x86ec3b
mov eax, edx
xchg dh, al
xchg bx, bp
pushfd
pop word [esp + 0x25]
lea esp, [esp + 0x33]
jmp 0x86ebd5
sub esp, 0x13
rdtsc
setne bl
mov dword [esp + 0xb], esi
cld
mov cl, 0xe8
jmp 0x86eca2
add esp, 0
cmp ebx, 0xd5ed2c10
sub esp, 2
mov di, word [esp + 2]
rdtsc
cld
jmp 0x86ec25
pop word [esp + 2]
pop bp
cld
mov ebp, 0x1fd54fb4
pushal
call fcn.0086ec78
pop ecx
stc
mov eax, 0x24590681
add ax, 0x2263
bsf esi, esp
pop bx
jmp 0x86ed10
mov dh, cl
sub esp, 0x11
rdtsc
xchg word [esp], bp
push dword [esp + 0x12]
jmp 0x86ed1f
stc
mov bh, byte [esp + 4]
stc
std
lea esp, [esp + 0x15]
mov esi, ebp
jmp 0x86ecfa
btc si, sp
mov bl, byte [esp + 0x12]
mov byte [esp + 0x14], al
inc eax
cpuid
lea edi, reloc.RASAPI32.dll_RasHangUpA
jmp 0x86ef00
add esp, 0
mov word [esp], cx
call fcn.0086ed77
add esp, 0x1e
cpuid
neg ecx
push word [esp + 4]
inc ah
mov edx, 0xd0012924
jmp 0x86ee9b
lea ebp, reloc.RASAPI32.dll_RasHangUpA
popal
mov dword [esp + 4], esi
cpuid
mov byte [esp + 2], ah
xchg dh, cl
jmp 0x86edc5
dec ebx
pop esi
add esp, 3
call fcn.0086ee20
bswap esi
xchg bp, dx
mov eax, 0x14f6aae9
neg edi
jmp 0x86eee5
sbb si, 0xb90
pushfd
cpuid
push word [esp + 3]
push word [esp]
mov cx, bp
jmp 0x86ef76
bswap esi
bswap eax
lea esi, reloc.RASAPI32.dll_RasHangUpA
mov cx, word [esp + 0xe]
mov word [esp + 0x13], si
sub esp, 0x14
jmp 0x86edf5
lea esp, [esp + 0xa]
rdtsc
mov bp, 0xba3a
xchg word [esp + 1], bx
xchg edi, ebp
inc esi
jmp 0x86ef57
mov si, word [esp + 0xa]
mov byte [esp + 7], dh
mov cx, 0xe849
mov eax, 0xd3306583
clc
std
jmp 0x86ef1c
mov edx, 0x995b951a
mov ch, 0x95
setp dh
xchg byte [esp + 3], al
cpuid
lea eax, reloc.RASAPI32.dll_RasHangUpA
jmp 0x86efb8
pop edx
xchg dword [esp], ebx
lea esp, [esp + 1]
sub esp, 0xc
mov bx, word [esp + 4]
xchg byte [esp + 0xc], bh
jmp 0x86ef41
mov ecx, 0x5b086b99
not bp
mov edi, dword [esp]
mov bx, di
call fcn.0086ef8c
bswap eax
add esp, 6
rdtsc
xchg ecx, esi
bswap ebp
setg ch
jmp 0x86efe3
cpuid
bsf si, si
mov bh, 0x82
mov ch, 0x3b
pushfd
std
jmp 0x8709e7
lea ebp, [edi + 0xb3]
mov dword [esp + 2], esi
xchg ebx, edi
pop edi
lea esp, [esp]
call fcn.0086f04e
mov bh, 0x48
cmc
pop di
add esp, 0
xchg byte [esp + 7], cl
cld
jmp 0x86f09d
std
mov di, word [esp + 3]
mov ch, 0x3a
mov word [esp + 3], di
bswap edi
push dword [esp + 6]
jmp 0x86f2db
mov bp, word [esp + 7]
xchg ebp, esi
std
mov si, sp
mov ch, bh
adc ch, 0x2d
jmp 0x86f362
mov eax, edi
xchg dword [esp + 1], edi
xchg dword [esp + 6], ebp
pop word [esp]
pop dword [esp + 4]
lea ebp, reloc.RASAPI32.dll_RasHangUpA
jmp 0x86f75f
Function at 0x86ec78
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov bh, 0xee
jmp 0x86ec81
setl bl
mov ebp, esi
push dword [esp + 0x15]
add esp, 0x27
mov bh, byte [esp + 0xa]
xchg ah, cl
jmp 0x86ed45
bswap edx
rdtsc
pop dword [esp + 7]
setne ch
rdtsc
mov cl, al
jmp 0x86ecb5
inc edx
pop bp
pop ebx
pop dword [esp + 7]
xchg byte [esp + 1], dh
lea ebx, [esp + esi]
jmp 0x86eccb
push word [esp + 0x12]
sub esp, 0x1a
xchg ecx, ebp
pop dword [esp + 0x17]
mov di, 0xbf9c
mov byte [esp + 0x20], dl
jmp 0x86ece9

Function at 0x86ee20
Capabilities:
Execute anti-debugging instructions

Disassembly:
sub esp, 7
neg edx
pop word [esp + 1]
mov bp, 0x7cd7
jmp 0x86ee6e
bsr cx, sp
bt ebx, ecx
lea esp, [esp + 9]
jmp 0x86ee0a
xchg word [esp + 9], cx
mov dx, di
push dword [esp + 0xb]
jmp 0x86ee58
cmc
pop word [esp + 2]
setnp bl
mov byte [esp + 3], dh
xchg dword [esp], edi
sub esp, 0x14
jmp 0x86ee2d
push word [esp + 1]
mov esi, dword [esp + 2]
push word [esp + 0xf]
not bh
jmp 0x86ee83
mov si, bx
bswap edi
sub esp, 0
mov bl, 0xe0
mov word [esp + 4], cx
xchg byte [esp + 6], ah
jmp 0x86ee43
lea esp, [esp + 8]
xchg dh, ch
pushal
rdtsc
pushal
lea esp, [esp + 0x5a]
jmp 0x86eed4
clc
lea esi, [eax + ecx]
mov edx, dword [esp]
mov edx, dword [esp]
lea ecx, [esi - 0xbd]
setle al
jmp 0x86eea5
mov ah, 0x6d
bswap eax
mov dl, byte [esp]
mov edx, 0x348e9b67
xchg edi, eax
bswap eax
jmp 0x86eebb

Function at 0x86f303
Capabilities:
Execute anti-debugging instructions

Disassembly:
bt edi, esp
rdtsc
push edi
xchg word [esp + 4], ax
jmp 0x86f32b
add esp, 4
mov edx, 0x663994ef
rdtsc
btc di, si
mov edx, ebx
jmp 0x86f2ed
lea edx, [edi*4]
xchg ecx, ebp
call fcn.0086f315
mov word [esp], ax
lea eax, reloc.RASAPI32.dll_RasHangUpA
std
mov di, 0x9f35
btr ecx, ecx
btc ebp, edx
jmp 0x86f6b7
mov word [esp + 5], dx
lea ebx, reloc.RASAPI32.dll_RasHangUpA
mov al, byte [esp + 4]
mov al, byte [esp + 5]
call fcn.0086f403
cld
rdtsc
cld
jmp 0x86f4be
pop dword [esp + 0x18]
mov dh, byte [esp + 9]
mov cx, ax
call 0x86f495
xchg esp, eax
pop es
scasb al, byte es:[edi]
mov ecx, 0xe93bfb98
cmp ebp, ecx
lea ebx, [edx + edi]
mov dl, 0xc
pop dx
rdtsc
xchg byte [esp + 0xb], dh
jmp 0x86f46e
mov bl, al
mov ecx, eax
sub esp, 0x1c
xchg bp, cx
push ebx
xchg dword [esp + 0xd], ebp
jmp 0x86f484
mov word [esp + 2], dx
mov ebx, dword [esp + 1]
not dh
mov ecx, esp
mov edi, eax
xchg bp, ax
jmp 0x86f433

Function at 0x86f793
Capabilities:
Packed with generic packer
Parse pe header

Disassembly:
call fcn.0086f0be
jmp 0x86f7e8
push dword [esp + 2]
mov dword [esp + 0x50], edi
lea esp, [esp + 0x50]
jmp 0x86f816
push word [esp + 2]
mov word [esp], si
mov byte [esp + 1], ch
lea esp, [esp + 2]
mov dword [esp + 0x4c], esi
pushfd
jmp 0x86f7cd
mov eax, dword [eax]
jmp 0x86f83a
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x1c]
jmp 0x86f800
mov eax, dword [esi]
pop esi
jmp 0x86f881
push esi
mov esi, eax
lea esi, [esi + 8]
jmp 0x86f824
push eax
jmp 0x86f0b9
Function at 0x86f7cb
Capabilities:
Access peb ldr_data
Packed with generic packer
Parse pe header

Disassembly:
lea esp, [esp + 1]
pushfd
pushfd
pushfd
lea esp, [esp + 3]
mov dword [esp + 0x4c], ebp
call fcn.0086f793
xor dh, byte [ecx - 0x684cbfdf]
xor al, 0xb2
and byte [edi - 0x4e], al
mov byte [ebx], dh
sub ch, bl
jmp 0x86f7a9
invalid
je 0x86f7f4
jmp 0x86f7a9
add cl, byte [ecx - 0x72afdb84]
and al, 0x50
add dword [ebp - reloc.RASAPI32.dll_RasHangUpA], ecx
je 0x86f820
dec esp
inc eax
sbb al, 0xeb
fmul qword [ebx + 0x58eb5e06]
xchg edi, eax
adc al, 0x8a
in eax, dx
sbb al, 0xe1
add eax, dword [ecx - reloc.RASAPI32.dll_RasHangUpA]
rol byte [ebx + 0x5684153a], 0x8b
invalid
Function at 0x43a260
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push ecx
mov eax, dword [0x798708]
xor edx, edx
cmp eax, edx
jne 0x43a286
xor eax, eax
mov byte [eax + 0x798608], al
inc eax
cmp eax, 0x100
jl 0x43a26e
mov dword [0x798708], 1
mov eax, dword [esp + 0xc]
push ebx
mov ebx, dword [esp + 0x14]
push esi
push edi
mov ecx, 0x40
mov esi, 0x798608
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
cmp eax, edx
mov byte [ebx + 0x100], dl
mov byte [ebx + 0x101], dl
jle 0x43a317
xor esi, esi
push ebp
mov byte [esp + 0x20], dl
xor ecx, ecx
mov edi, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov al, byte [esi + ebx]
and edi, 0xff
xor edx, edx
mov dl, byte [edi + ebp]
mov ebp, eax
and ebp, 0xff
add ecx, edx
add ecx, ebp
and ecx, 0x800000ff
jns 0x43a2ea
dec ecx
or ecx, 0xffffff00
inc ecx
mov byte [esp + 0x10], cl
mov ecx, dword [esp + 0x10]
and ecx, 0xff
mov dl, byte [ecx + ebx]
mov byte [esi + ebx], dl
mov byte [ecx + ebx], al
lea eax, [edi + 1]
cdq
idiv dword [esp + 0x1c]
inc esi
cmp esi, 0x100
mov byte [esp + 0x20], dl
jl 0x43a2b8
pop ebp
pop edi
pop esi
pop ebx
pop ecx
ret

Function at 0x43a390
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov cl, byte [eax + 0x100]
mov dl, byte [eax + 0x101]
mov dword [ebp - 8], eax
mov byte [ebp - 1], cl
mov byte [ebp - 2], dl
xor ebx, ebx
mov bl, byte [ebp - 1]
xor edx, edx
mov dl, byte [ebp - 2]
mov esi, dword [ebp - 8]
mov edi, dword [ebp + 8]
xor eax, eax
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jle 0x43a3e3
inc bl
mov al, byte [esi + ebx]
add dl, al
xchg byte [esi + edx], al
mov byte [esi + ebx], al
add al, byte [esi + edx]
mov al, byte [esi + eax]
xor byte [edi], al
inc edi
dec ecx
jne 0x43a3ca
mov byte [ebp - 1], bl
mov byte [ebp - 2], dl
mov eax, dword [ebp + 0x10]
mov cl, byte [ebp - 1]
mov dl, byte [ebp - 2]
pop edi
pop esi
mov byte [eax + 0x100], cl
mov byte [eax + 0x101], dl
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x43e7a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x68
mov eax, dword [esp + 0x78]
push ebx
push esi
cmp eax, 1
push edi
mov dword [esp + 0x14], ecx
jl 0x43e9c1
cmp eax, 8
jg 0x43e9c1
cmp dword [esp + 0x8c], 2
jl 0x43e9c1
mov eax, dword [esp + 0x7c]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov ecx, dword [eax + 8]
mov dword [esp + 0x6c], ecx
sub ecx, esi
mov ebx, dword [eax + 0xc]
mov dword [esp + 0x7c], ecx
test ecx, ecx
mov dword [esp + 0x70], ebx
jle 0x43e9c1
sub ebx, edi
test ebx, ebx
mov dword [esp + 0x20], ebx
jle 0x43e9c1
mov eax, dword [esp + 0x80]
test eax, eax
je 0x43e827
mov edx, dword [eax]
mov dword [esp + 0x44], edx
mov edx, dword [eax + 4]
mov dword [esp + 0x48], edx
mov edx, dword [eax + 8]
mov dword [esp + 0x4c], edx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x50], eax
xor edx, edx
push ebp
test ebx, ebx
mov dword [esp + 0x1c], 1
mov dword [esp + 0x14], edx
jle 0x43e9aa
mov ebp, dword [0x4b259c]
mov eax, ebx
mov dword [esp + 0x10], 0x32
sub eax, edx
cmp eax, 0x32
jg 0x43e859
mov dword [esp + 0x10], eax
xor eax, eax
test ecx, ecx
jle 0x43e991
mov ebx, dword [esp + 0x10]
add ebx, edx
mov dword [esp + 0x20], ebx
sub ecx, eax
cmp ecx, 0x32
jle 0x43e879
mov ecx, 0x32
lea ebx, [ecx + eax]
mov ecx, dword [esp + 0x20]
push ecx
push ebx
push edx
lea edx, [esp + 0x34]
push eax
push edx
call dword [0x4b2588]
push edi
lea eax, [esp + 0x2c]
push esi
push eax
call ebp
mov eax, dword [esp + 0x84]
test eax, eax
je 0x43e8b8
lea ecx, [esp + 0x48]
lea edx, [esp + 0x28]
push ecx
lea eax, [esp + 0x2c]
push edx
push eax
call dword [0x4b2590]
lea ecx, [esp + 0x28]
push ecx
call dword [0x4b25d0]
test eax, eax
jne 0x43e978
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x40], ecx
mov eax, edi
mov ecx, esi
mov dword [esp + 0x44], edx
neg eax
neg ecx
push eax
lea edx, [esp + 0x3c]
push ecx
push edx
call ebp
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x60], edx
lea edx, [esp + 0x58]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x44]
push edx
mov edx, dword [esp + 0x94]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x74]
push edx
mov edx, dword [esp + 0x94]
sub ecx, edi
sub eax, esi
push edx
push ecx
mov ecx, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x9c]
push eax
call fcn.0043ddb0
cmp eax, 1
jne 0x43e9a2
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
push ecx
mov ecx, dword [esp + 0x80]
push edx
push eax
push ecx
mov ecx, dword [esp + 0x28]
call fcn.0043e660
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x14]
mov eax, ebx
cmp eax, ecx
jl 0x43e86d
mov ebx, dword [esp + 0x24]
add edx, dword [esp + 0x10]
cmp edx, ebx
mov dword [esp + 0x14], edx
jge 0x43e9aa
jmp 0x43e844
mov dword [esp + 0x1c], 0
mov ecx, dword [esp + 0x18]
call fcn.0043d970
mov eax, dword [esp + 0x1c]
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x68
ret 0x1c
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x68
ret 0x1c
Function at 0x441410
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x18
mov eax, dword [esp + 0x1c]
push ebx
push ebp
push esi
xor esi, esi
xor ecx, ecx
mov si, word [eax + 8]
mov cx, word [eax + 4]
xor ebp, ebp
xor edx, edx
mov bp, word [eax + 0xa]
mov dx, word [eax + 6]
sub esi, ecx
sub ebp, edx
inc esi
xor ebx, ebx
inc ebp
cmp esi, ebx
mov dword [esp + 0x14], esi
jle 0x4415a8
cmp ebp, ebx
jle 0x4415a8
mov eax, esi
push edi
cdq
and edx, 7
add eax, edx
mov edi, eax
mov eax, esi
sar edi, 3
and eax, 0x80000007
mov dword [esp + 0x10], edi
jns 0x44146e
dec eax
or eax, 0xfffffff8
inc eax
je 0x441475
inc edi
mov dword [esp + 0x10], edi
mov ecx, edi
and ecx, 0x80000001
jns 0x441484
dec ecx
or ecx, 0xfffffffe
inc ecx
je 0x44148b
inc edi
mov dword [esp + 0x10], edi
push 0x18
call fcn.0049ec25
add esp, 4
cmp eax, ebx
je 0x4414ac
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebx
mov ebx, eax
mov eax, edi
mov dword [esp + 0x14], ebx
imul eax, ebp
push eax
mov dword [ebx], 7
mov dword [ebx + 4], esi
mov dword [ebx + 8], ebp
mov dword [ebx + 0x14], eax
call fcn.0049ec25
mov ecx, dword [ebx + 0x14]
mov edi, eax
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [ebx + 0x10], edi
add esp, 4
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x2c]
test ebp, ebp
lea edx, [eax + 0x80]
jle 0x44159e
xor eax, eax
mov dword [esp + 0x20], ebp
mov dword [esp + 0x1c], eax
mov ebp, dword [ebx + 0x10]
xor ecx, ecx
add ebp, eax
mov dword [esp + 0x2c], ecx
test esi, esi
jle 0x441585
mov al, byte [edx]
cmp al, 0xc0
jbe 0x441571
and eax, 0xff
sub eax, 0xc0
inc edx
mov esi, eax
mov dword [esp + 0x24], edx
cmp esi, 1
jle 0x441566
xor eax, eax
mov ecx, esi
mov al, byte [edx]
mov edx, ecx
mov bl, al
mov edi, ebp
mov bh, bl
dec esi
mov eax, ebx
shl eax, 0x10
mov ax, bx
mov ebx, dword [esp + 0x14]
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
mov edx, dword [esp + 0x24]
and ecx, 3
add ebp, esi
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x2c]
lea ecx, [eax + esi*8]
mov esi, dword [esp + 0x18]
jmp 0x441574
mov al, byte [edx]
mov esi, dword [esp + 0x18]
mov byte [ebp], al
jmp 0x441574
mov byte [ebp], al
inc ebp
add ecx, 8
inc edx
cmp ecx, esi
mov dword [esp + 0x2c], ecx
jl 0x441510
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
add eax, edi
dec ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
jne 0x441501
pop edi
pop esi
mov eax, ebx
pop ebp
pop ebx
add esp, 0x18
ret
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x18
ret
Function at 0x448ff0
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
push 0xffffffffffffffff
push 0x4af168
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x54
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x6c]
push esi
mov esi, ecx
mov ecx, dword [esp + 0x74]
push edi
push eax
mov eax, dword [esp + 0x74]
push ecx
push edx
lea ecx, [esp + 0x14]
push eax
push ecx
mov ecx, esi
call fcn.00449b70
lea edx, [esp + 0x18]
push eax
push edx
call dword [0x4b255c]
mov eax, dword [esp + 0x18]
xor edi, edi
xor ecx, ecx
cmp eax, edi
setl cl
dec ecx
xor edx, edx
and ecx, eax
mov eax, dword [esp + 0x1c]
cmp eax, edi
mov dword [esp + 0x18], ecx
setl dl
dec edx
and edx, eax
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x20], edx
call dword [0x4b25d0]
test eax, eax
je 0x449099
mov eax, dword [esp + 0x6c]
push ebx
mov ebx, eax
xor ecx, ecx
xor edx, edx
xor esi, esi
mov dword [ebx], ecx
mov dword [ebx + 4], edx
mov dword [ebx + 8], esi
mov dword [ebx + 0xc], edi
pop ebx
pop edi
pop esi
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
add esp, 0x60
ret 0x14
lea ecx, [esp + 8]
push ecx
mov ecx, esi
call fcn.00448c80
mov edx, eax
mov eax, dword [edx]
mov ecx, dword [edx + 4]
push ecx
push eax
lea eax, [esp + 0x20]
push eax
call dword [0x4b259c]
push edi
lea ecx, [esp + 0x4c]
call fcn.004a5a79
mov ecx, dword [esi + 0x5c]
mov edx, dword [esi + 0x58]
push ecx
lea eax, [esp + 0x4c]
push edx
push eax
mov dword [esp + 0x70], edi
call fcn.0045f9e0
mov edx, dword [esp + 0x5c]
add esp, 0xc
lea ecx, [esp + 0x18]
push 2
push ecx
push edx
call dword [0x4b20b4]
mov ecx, dword [esi + 0x1c]
lea eax, [esp + 0x38]
push eax
push ecx
call dword [0x4b25f8]
lea edx, [esp + 0x38]
lea eax, [esp + 0x18]
push edx
lea ecx, [esp + 0x2c]
push eax
push ecx
call dword [0x4b2590]
mov esi, dword [esp + 0x6c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, esi
mov dword [esp + 0x64], 0xffffffff
mov dword [edx], eax
mov eax, dword [esp + 0x30]
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [edx + 8], eax
mov dword [edx + 0xc], ecx
lea ecx, [esp + 0x48]
call fcn.004a5aeb
mov ecx, dword [esp + 0x5c]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
add esp, 0x60
ret 0x14
Function at 0x4495d0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x4af190
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4c
push ebx
push esi
push edi
mov esi, ecx
call fcn.00447110
mov ebx, eax
test ebx, ebx
mov dword [esp + 0xc], ebx
jne 0x449629
mov eax, dword [esp + 0x68]
xor ecx, ecx
mov ebx, eax
xor edx, edx
xor esi, esi
xor edi, edi
mov dword [ebx], ecx
mov dword [ebx + 4], edx
mov dword [ebx + 8], esi
mov dword [ebx + 0xc], edi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x4c]
mov dword fs:[0], ecx
add esp, 0x58
ret 0xc
push ebp
mov ecx, ebx
call fcn.004444a0
mov ebp, dword [esp + 0x70]
mov edi, eax
add edi, ebp
mov ecx, ebx
mov dword [esp + 0x28], edi
call fcn.00444490
mov edx, dword [esp + 0x74]
mov ecx, esi
add eax, edx
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x20]
push eax
call fcn.00448c80
mov ebp, dword [eax]
lea edx, [esp + 0x38]
push edx
mov ecx, dword [eax + 4]
mov eax, dword [esi + 0x1c]
push eax
mov dword [esp + 0x24], ecx
call dword [0x4b25f8]
push 0
lea ecx, [esp + 0x4c]
call fcn.004a5a79
mov ecx, dword [esi + 0x5c]
mov edx, dword [esi + 0x58]
push ecx
lea eax, [esp + 0x4c]
push edx
push eax
mov dword [esp + 0x70], 0
call fcn.0045f9e0
add esp, 0xc
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x18]
call fcn.00446b30
mov eax, dword [esp + 0x50]
lea edx, [esp + 0x38]
push 2
push edx
push eax
mov byte [esp + 0x70], 1
call dword [0x4b20b8]
mov ecx, ebx
call fcn.00444410
mov ebx, eax
mov eax, edi
cmp eax, ebx
jge 0x4496f4
push edi
mov ecx, esi
call fcn.00446c40
push eax
push ebp
mov ecx, esi
call fcn.00446e00
cmp eax, dword [esp + 0x40]
jg 0x4496f0
inc edi
mov ebp, eax
cmp edi, ebx
jl 0x4496ce
mov eax, ebx
jmp 0x4496fa
cmp edi, ebx
jl 0x4496f8
mov eax, ebx
jmp 0x4496fa
mov eax, edi
lea ecx, [eax - 1]
mov eax, dword [esp + 0x28]
cmp eax, ecx
jle 0x44970b
mov dword [esp + 0x30], eax
jmp 0x449716
cmp edi, ebx
jl 0x449711
mov edi, ebx
dec edi
mov dword [esp + 0x30], edi
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x1c]
call fcn.004443d0
mov ebp, eax
mov eax, dword [esp + 0x2c]
cmp eax, ebp
mov edi, eax
jge 0x44975d
push edi
mov ecx, esi
call fcn.00446b60
push eax
push ebx
mov ecx, esi
call fcn.00446f30
cmp eax, dword [esp + 0x44]
jg 0x449755
inc edi
mov ebx, eax
cmp edi, ebp
jl 0x44972f
mov eax, dword [esp + 0x2c]
mov ecx, ebp
jmp 0x449767
cmp edi, ebp
jl 0x449761
mov eax, dword [esp + 0x2c]
mov ecx, ebp
jmp 0x449767
mov eax, dword [esp + 0x2c]
mov ecx, edi
dec ecx
cmp eax, ecx
jle 0x449770
mov ecx, eax
jmp 0x449779
cmp edi, ebp
jl 0x449776
mov edi, ebp
lea ecx, [edi - 1]
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0x28]
mov edx, esi
mov dword [edx], edi
mov dword [edx + 4], eax
mov eax, dword [esp + 0x30]
mov dword [edx + 8], eax
mov dword [edx + 0xc], ecx
lea ecx, [esp + 0x14]
call fcn.00446b50
lea ecx, [esp + 0x48]
mov dword [esp + 0x64], 0xffffffff
call fcn.004a5aeb
mov ecx, dword [esp + 0x5c]
pop ebp
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x58
ret 0xc