joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4080ac
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
cmp dword [ebp - 0xc98], 0
jle 0x4080fa
push ebx
jmp 0x407feb
pop ebx
push edi
add edi, 0x664d
and edi, 0x13a81
pop edi
push ebx
sub ebx, 0xab1f
add ebx, 0xffda
sub ebx, 0x1324f
sub ebx, 0x5d6c
pop ebx
mov eax, dword [ebp - 0xae0]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xadc]
movzx eax, byte [edx]
cmp ecx, eax
je 0x408096
push ecx
sub ecx, 0x7c7b
sub ecx, 0xe21c
or ecx, 0x8a0e
add byte [ecx + 0x51], bl
push esi
and esi, 0xc370
sub esi, 0x10acc
add esi, 0xed66
pop esi
push edi
push ebx
add esp, 4
xor edi, 0xa71
sub edi, 0x16b21
and edi, 0xe25a
xor edi, 0x8651
pop edi
mov eax, dword [ebp - 0xc98]
sub eax, 1
mov dword [ebp - 0xc98], eax
mov ecx, dword [ebp - 0xae0]
add ecx, 1
mov dword [ebp - 0xae0], ecx
mov edx, dword [ebp - 0xadc]
add edx, 1
mov dword [ebp - 0xadc], edx
jmp 0x407fd5

Function at 0x408170
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
dec edi
dec ecx
inc edx
add esp, 4
call 0x408182
add byte [edx + 0x36], al
inc edi
cmp dword [edx], esi
dec ecx
add esp, 4
add al, 0x5b

Function at 0x408173
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
dec edi
dec ecx
inc edx
add esp, 4
call 0x408182
add byte [edx + 0x36], al
inc edi
cmp dword [edx], esi
dec ecx
add esp, 4
add al, 0x5b

Function at 0x408182
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
dec edi
dec ecx
inc edx
add esp, 4
call 0x408182
add byte [edx + 0x36], al
inc edi
cmp dword [edx], esi
dec ecx
add esp, 4
add al, 0x5b

Function at 0x408184
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add al, 0x5b
mov dword [ebp - 0xad8], 0
push esi
add esi, 0x18082
pop esi
push edi
push edi
add esp, 4
add al, 0xe8
pop es
add byte [eax], al
add byte [eax], al
inc ecx
cmp byte [esi + 0x4c], al
dec edx
dec ebx
add esp, 4
pop edi
push ebx
or ebx, 0xb4f8
pop ebx
push ebx
push eax
add esp, 4
jmp 0x4081c1
pop ebx
mov byte [ebp - 0x880], 0x45
mov byte [ebp - 0x87f], 0x78
mov byte [ebp - 0x87e], 0x69
mov byte [ebp - 0x87d], 0x74
mov byte [ebp - 0x87c], 0x50
mov byte [ebp - 0x87b], 0x72
mov byte [ebp - 0x87a], 0x6f
mov byte [ebp - 0x879], 0x63
mov byte [ebp - 0x878], 0x65
mov byte [ebp - 0x877], 0x73
mov byte [ebp - 0x876], 0x73
mov byte [ebp - 0x875], 0
push edx
sub edx, 0x968c
add edx, 0x83ab
xor edx, 0x423a
pop edx
push ecx
call 0x408238
add byte [esi], dh
cmp ecx, dword [ebp + 0x35]
inc esi
cmp eax, 0x4c4833d
pop ecx
push ebx
push ebx
invalid
invalid
Function at 0x4081a9
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add al, 0x5b
mov dword [ebp - 0xad8], 0
push esi
add esi, 0x18082
pop esi
push edi
push edi
add esp, 4
add al, 0xe8
pop es
add byte [eax], al
add byte [eax], al
inc ecx
cmp byte [esi + 0x4c], al
dec edx
dec ebx
add esp, 4
pop edi
push ebx
or ebx, 0xb4f8
pop ebx
push ebx
push eax
add esp, 4
jmp 0x4081c1
pop ebx
mov byte [ebp - 0x880], 0x45
mov byte [ebp - 0x87f], 0x78
mov byte [ebp - 0x87e], 0x69
mov byte [ebp - 0x87d], 0x74
mov byte [ebp - 0x87c], 0x50
mov byte [ebp - 0x87b], 0x72
mov byte [ebp - 0x87a], 0x6f
mov byte [ebp - 0x879], 0x63
mov byte [ebp - 0x878], 0x65
mov byte [ebp - 0x877], 0x73
mov byte [ebp - 0x876], 0x73
mov byte [ebp - 0x875], 0
push edx
sub edx, 0x968c
add edx, 0x83ab
xor edx, 0x423a
pop edx
push ecx
call 0x408238
add byte [esi], dh
cmp ecx, dword [ebp + 0x35]
inc esi
cmp eax, 0x4c4833d
pop ecx
push ebx
push ebx
invalid
invalid

Function at 0x4081c0
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
xor ebx, dword [ebx - 0x3a]
test dword [eax + 0x45fffff7], eax

Function at 0x408238
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add al, 0x5b
mov dword [ebp - 0xad8], 0
push esi
add esi, 0x18082
pop esi
push edi
push edi
add esp, 4
add al, 0xe8
pop es
add byte [eax], al
add byte [eax], al
inc ecx
cmp byte [esi + 0x4c], al
dec edx
dec ebx
add esp, 4
pop edi
push ebx
or ebx, 0xb4f8
pop ebx
push ebx
push eax
add esp, 4
jmp 0x4081c1
pop ebx
mov byte [ebp - 0x880], 0x45
mov byte [ebp - 0x87f], 0x78
mov byte [ebp - 0x87e], 0x69
mov byte [ebp - 0x87d], 0x74
mov byte [ebp - 0x87c], 0x50
mov byte [ebp - 0x87b], 0x72
mov byte [ebp - 0x87a], 0x6f
mov byte [ebp - 0x879], 0x63
mov byte [ebp - 0x878], 0x65
mov byte [ebp - 0x877], 0x73
mov byte [ebp - 0x876], 0x73
mov byte [ebp - 0x875], 0
push edx
sub edx, 0x968c
add edx, 0x83ab
xor edx, 0x423a
pop edx
push ecx
call 0x408238
add byte [esi], dh
cmp ecx, dword [ebp + 0x35]
inc esi
cmp eax, 0x4c4833d
pop ecx
push ebx
push ebx
invalid
invalid

Function at 0x408254
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x65
mov word [ebp - 0x173a], ax
mov ecx, 0x72
mov word [ebp - 0x1738], cx
mov edx, 0x6e
mov word [ebp - 0x1736], dx
mov eax, 0x65
mov word [ebp - 0x1734], ax
mov ecx, 0x6c
mov word [ebp - 0x1732], cx
mov edx, 0x33
mov word [ebp - 0x1730], dx
mov eax, 0x32
mov word [ebp - 0x172e], ax
mov ecx, 0x2e
mov word [ebp - 0x172c], cx
mov edx, 0x64
mov word [ebp - 0x172a], dx
mov eax, 0x6c
mov word [ebp - 0x1728], ax

Function at 0x4082cc
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
mov ecx, 0x6c
mov word [ebp - 0x1726], cx
xor edx, edx
mov word [ebp - 0x1724], dx
push ebx
add ebx, 0x8e8d
add ebx, 0x8ecd
and ebx, 0x5cfc
Function at 0x40831c
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
out 0xff, al
dec dword [ebx - 0x196773]
dec dword [ebx - 0x6a76cfaf]
xchg esp, eax
out 0xff, al
dec dword [ebx - 0x196b7b]
dec dword [ecx - 0x159b7b]
call dword [eax + 0x50]

Function at 0x4083bc
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add byte [ecx + 0x1541ef0], al
add byte [ecx + 0xb18c0], al
add byte [ecx + 0x4301c0], al
add byte [eax + 0x53], bl
push ebx
push esi
add esp, 4
sub ebx, 0xfc34
pop ebx
cmp dword [ebp - 0xca8], 0
jne 0x4083e0
mov dword [ebp - 0x2f0], 0
jmp 0x408640
mov ecx, dword [ebp - 0xca8]
mov dword [ebp - 0x500], ecx
push edi
push ebx
add esp, 4
call 0x408400
add byte [ebx + esi], bh
xor eax, 0x40503c4e
dec ebp
aas
add esp, 4
pop edi
push edx
add edx, 0x6938
or edx, 0xfeef
add edx, 0x166cb
sub edx, 0x2d6f
pop edx
lea edx, [ebp - 0x173c]
mov dword [ebp - 0xca4], edx
mov eax, dword [ebp - 0x500]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xca0], ecx
xor edx, edx
invalid
invalid
xchg ebp, eax
aam 0xfd

Function at 0x408400
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add byte [ecx + 0x1541ef0], al
add byte [ecx + 0xb18c0], al
add byte [ecx + 0x4301c0], al
add byte [eax + 0x53], bl
push ebx
push esi
add esp, 4
sub ebx, 0xfc34
pop ebx
cmp dword [ebp - 0xca8], 0
jne 0x4083e0
mov dword [ebp - 0x2f0], 0
jmp 0x408640
mov ecx, dword [ebp - 0xca8]
mov dword [ebp - 0x500], ecx
push edi
push ebx
add esp, 4
call 0x408400
add byte [ebx + esi], bh
xor eax, 0x40503c4e
dec ebp
aas
add esp, 4
pop edi
push edx
add edx, 0x6938
or edx, 0xfeef
add edx, 0x166cb
sub edx, 0x2d6f
pop edx
lea edx, [ebp - 0x173c]
mov dword [ebp - 0xca4], edx
mov eax, dword [ebp - 0x500]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xca0], ecx
xor edx, edx
invalid
invalid
xchg ebp, eax
aam 0xfd
Function at 0x4084eb
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push ebx
push eax
add esp, 4
and ebx, 0xa65e
sub ebx, 0xabdf
pop ebx
push esi
or esi, 0xc540
pop esi
push eax
push eax
add esp, 4
and eax, 0xa1c5
sub eax, 0x7d6b
xor eax, 0xa83
pop eax
mov ecx, dword [ebp - 0xca0]
mov dx, word [ecx]
mov word [ebp - 0x1042], dx
mov eax, dword [ebp - 0xca0]
add eax, 2
mov dword [ebp - 0xca0], eax
mov cx, word [ebp - 0x1042]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xca4]
mov ax, word [edx]
mov word [ebp - 0x1044], ax
mov ecx, dword [ebp - 0xca4]
add ecx, 2
mov dword [ebp - 0xca4], ecx
mov dx, word [ebp - 0x1044]
mov word [ebp - 0x128], dx
push edx
push ebx
add esp, 4
call 0x4084eb
add byte [edi + ecx*2], bh
aaa
cmp dl, byte ds:[eax + 0x34]
dec ebx
inc edx
add esp, 4
les eax, [edx + ebx*2]
push ecx
add ecx, 0x428b
or ecx, 0x12d57
and ecx, 0x90c1
add byte [eax], al
add ecx, 0xb57e
pop ecx
movzx eax, word [ebp - 0x128]
test eax, eax
jne 0x40852c
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
sub ecx, edx
mov dword [ebp - 0x15dc], ecx
jmp 0x40858f
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x128]
cmp eax, ecx
je 0x40844b
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x128]
invalid
invalid
invalid
cmp dword [ebp - 0x15dc], 0
jne 0x4085d8
push ebx
push esi
add esp, 4
or ebx, 0xc824
sub ebx, 0x18519
add byte [ebx + 0x50], bl
push edi
add esp, 4
and eax, 0x424b
add eax, 0xcd57
jmp 0x4085c1
pop eax
push ebx
or ebx, 0x183ad
add byte [ebx - 0x75], bl
lea eax, [eax]
sti
invalid
dec dword [ecx - 0x2ef73]
invalid
jmp 0x408640
push eax
push edi
add esp, 4
add al, 0x81
enter 0x7df9, 1
add bl, ch
push es
pop eax
Function at 0x408510
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push ebx
push eax
add esp, 4
and ebx, 0xa65e
sub ebx, 0xabdf
pop ebx
push esi
or esi, 0xc540
pop esi
push eax
push eax
add esp, 4
and eax, 0xa1c5
sub eax, 0x7d6b
xor eax, 0xa83
pop eax
mov ecx, dword [ebp - 0xca0]
mov dx, word [ecx]
mov word [ebp - 0x1042], dx
mov eax, dword [ebp - 0xca0]
add eax, 2
mov dword [ebp - 0xca0], eax
mov cx, word [ebp - 0x1042]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xca4]
mov ax, word [edx]
mov word [ebp - 0x1044], ax
mov ecx, dword [ebp - 0xca4]
add ecx, 2
mov dword [ebp - 0xca4], ecx
mov dx, word [ebp - 0x1044]
mov word [ebp - 0x128], dx
push edx
push ebx
add esp, 4
call 0x4084eb
add byte [edi + ecx*2], bh
aaa
cmp dl, byte ds:[eax + 0x34]
dec ebx
inc edx
add esp, 4
les eax, [edx + ebx*2]
push ecx
add ecx, 0x428b
or ecx, 0x12d57
and ecx, 0x90c1
add byte [eax], al
add ecx, 0xb57e
pop ecx
movzx eax, word [ebp - 0x128]
test eax, eax
jne 0x40852c
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
sub ecx, edx
mov dword [ebp - 0x15dc], ecx
jmp 0x40858f
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x128]
cmp eax, ecx
je 0x40844b
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x128]
invalid
invalid
invalid
cmp dword [ebp - 0x15dc], 0
jne 0x4085d8
push ebx
push esi
add esp, 4
or ebx, 0xc824
sub ebx, 0x18519
add byte [ebx + 0x50], bl
push edi
add esp, 4
and eax, 0x424b
add eax, 0xcd57
jmp 0x4085c1
pop eax
push ebx
or ebx, 0x183ad
add byte [ebx - 0x75], bl
lea eax, [eax]
sti
invalid
dec dword [ecx - 0x2ef73]
invalid
jmp 0x408640
push eax
push edi
add esp, 4
add al, 0x81
enter 0x7df9, 1
add bl, ch
push es
pop eax

Function at 0x4085ec
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add al, 0x81
enter 0x7df9, 1
add bl, ch
push es
aas
dec ecx
inc ecx
dec edi
cmp eax, 0x52565839
push esi
push edx

Function at 0x40864e
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push esi
push edx
add esp, 4
add esi, 0x47b5
sub esi, 0x7335
sub esi, 0xdbdd
sub esi, 0x8912
pop esi
mov edx, dword [ebp - 0x500]
mov eax, dword [edx]
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [ebp - 0xca8]
je 0x408636
mov edx, dword [ebp - 0x500]
cmp dword [edx + 0x30], 0
jne 0x4083ec
mov dword [ebp - 0x2f0], 0
push eax
call 0x40864e
add byte [esi + 0x4f], al
xor al, 0x42
cmp al, 0x39
dec esp
add esp, 4
xor eax, 0x8261
add eax, 0x35ff
sar bh, 0x35
add byte [eax], al
pop eax
push ebx
or ebx, 0x15f2d
add byte [ebx + 0x50], bl
push esi
add esp, 4
xor eax, 0xb581
pop eax
cmp dword [ebp - 0x2f0], 0
jne 0x408f45
mov eax, 0x6b
mov word [ebp - 0x1778], ax
mov ecx, 0x65
mov word [ebp - 0x1776], cx
mov edx, 0x72
mov word [ebp - 0x1774], dx
mov eax, 0x6e
mov word [ebp - 0x1772], ax
mov ecx, 0x65
mov word [ebp - 0x1770], cx
mov edx, 0x6c
mov word [ebp - 0x176e], dx
mov eax, 0x33
mov word [ebp - 0x176c], ax
mov ecx, 0x32
mov word [ebp - 0x176a], cx
mov edx, 0x2e
Function at 0x408732
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
mov word [ebp - 0x1768], dx
mov eax, 0x64
mov word [ebp - 0x1766], ax
mov ecx, 0x6c
mov word [ebp - 0x1764], cx
mov edx, 0x6c
mov word [ebp - 0x1762], dx
xor eax, eax
mov word [ebp - 0x1760], ax
push esi
push eax
add esp, 4
or esi, 0x11d99
pop esi
push edx
call 0x408732
add byte [ebx], dh
inc eax
xor dh, byte [0x8346383d]
les eax, [ecx + eax*4]
retf 0x105

Function at 0x4087c4
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
out 0xff, al
dec dword [ecx - 0x15df73]
call dword [edx - 0x7f]
loop 0x408847
pop ecx
add byte [eax], al
call fcn.004087e0
add byte [esp + eax*2], dh
inc ecx
inc edi

Function at 0x4087e0
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add esp, 4
call 0x4087f3
add byte [ebx], bh
inc edi
dec edx
dec edx
cmp byte [edx], bh
inc edx
cmp dword [eax], edi
cmp al, byte [ebx + 0x515a04c4]
or ecx, 0x75a1
pop ecx
cmp dword [ebp - 0x15e0], 0
jne 0x408817
mov dword [ebp - 0x758], 0
jmp 0x408abe
mov edx, dword [ebp - 0x15e0]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcb4], ecx
push eax
push eax
add esp, 4
xor eax, 0x14967
pop eax
push ecx
push edx
add esp, 4
or ecx, 0x1576f
xor ecx, 0x175af
pop ecx
push ecx
call 0x408857
add byte [eax + 0x48], cl
dec edx
cmp eax, 0x354c484a
add esp, 4
pop ecx
cmp dword [ebp - 0xcb4], 0
jne 0x408873
mov dword [ebp - 0x758], 0
jmp 0x408abe
invalid

Function at 0x4087f3
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add esp, 4
call 0x4087f3
add byte [ebx], bh
inc edi
dec edx
dec edx
cmp byte [edx], bh
inc edx
cmp dword [eax], edi
cmp al, byte [ebx + 0x515a04c4]
or ecx, 0x75a1
pop ecx
cmp dword [ebp - 0x15e0], 0
jne 0x408817
mov dword [ebp - 0x758], 0
jmp 0x408abe
mov edx, dword [ebp - 0x15e0]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcb4], ecx
push eax
push eax
add esp, 4
xor eax, 0x14967
pop eax
push ecx
push edx
add esp, 4
or ecx, 0x1576f
xor ecx, 0x175af
pop ecx
push ecx
call 0x408857
add byte [eax + 0x48], cl
dec edx
cmp eax, 0x354c484a
add esp, 4
pop ecx
cmp dword [ebp - 0xcb4], 0
jne 0x408873
mov dword [ebp - 0x758], 0
jmp 0x408abe
invalid

Function at 0x408857
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add esp, 4
call 0x4087f3
add byte [ebx], bh
inc edi
dec edx
dec edx
cmp byte [edx], bh
inc edx
cmp dword [eax], edi
cmp al, byte [ebx + 0x515a04c4]
or ecx, 0x75a1
pop ecx
cmp dword [ebp - 0x15e0], 0
jne 0x408817
mov dword [ebp - 0x758], 0
jmp 0x408abe
mov edx, dword [ebp - 0x15e0]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcb4], ecx
push eax
push eax
add esp, 4
xor eax, 0x14967
pop eax
push ecx
push edx
add esp, 4
or ecx, 0x1576f
xor ecx, 0x175af
pop ecx
push ecx
call 0x408857
add byte [eax + 0x48], cl
dec edx
cmp eax, 0x354c484a
add esp, 4
pop ecx
cmp dword [ebp - 0xcb4], 0
jne 0x408873
mov dword [ebp - 0x758], 0
jmp 0x408abe
invalid
Function at 0x408c90
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [ebp - 0x760]
add eax, 1
mov dword [ebp - 0x760], eax
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x760]
cmp edx, dword [ecx + 0x18]
jae 0x408e5e
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x1978]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x764], edx
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x197c]
movzx edx, word [ecx + eax*2]
adc al, 0x41
mov eax, dword [ebp - 0x1980]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1d08], ecx
mov dword [ebp - 0x1c8], 0
jmp 0x408cc2
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x408d74
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
test eax, eax
je 0x408d74
push esi
xor esi, 0xe40
jmp 0x408cfe
pop esi
push esi
and esi, 0x15445
pop esi
push edx
push esi
add esp, 4
or edx, 0x7b6
and edx, 0x1317
pop edx
push edi
sub edi, 0xf4d5
pop edi
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
cmp edx, ecx
je 0x408d66
mov edx, dword [ebp - 0x764]
add edx, dword [ebp - 0x1c8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1c8]
movsx edx, byte [ebp + ecx - 0x89c]
cmp eax, edx
jne 0x408d6d
jmp 0x408cb3
jmp 0x408d74
push ebx
jmp 0x408d7d
pop ebx
push edx
push ebx
add esp, 4
sub edx, 0x181c8
sub edx, 0x15269
and edx, 0x2ead
call 0x408da2
add byte [ebx + 0x32], cl
dec eax
inc ebp
inc esp
inc esp
push eax
add esp, 4
pop edx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
cmp ecx, eax
jne 0x408dd3
mov dword [ebp - 0xcb8], 0
jmp 0x408e42
push ebx
xor ebx, 0x15459
sub ebx, 0x10a27
sub ebx, 0xff13
sub ebx, 0x17440
pop ebx
push ebx
push eax
add esp, 4
add ebx, 0x2350
pop ebx
push edx
push esi
add esp, 4
sub edx, 0x158f5
pop edx
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
inc dword [ebx - 0x2ec4df37]
jge 0x408e38
mov dword [ebp - 0xcb8], 0xffffffff
jmp 0x408e42
mov dword [ebp - 0xcb8], 1
cmp dword [ebp - 0xcb8], 0
jne 0x408e59
mov edx, dword [ebp - 0x1d08]
mov dword [ebp - 0x3e0], edx
jmp 0x408e6a
jmp 0x408c43
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], eax
Function at 0x408d08
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [ebp - 0x760]
add eax, 1
mov dword [ebp - 0x760], eax
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x760]
cmp edx, dword [ecx + 0x18]
jae 0x408e5e
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x1978]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x764], edx
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x197c]
movzx edx, word [ecx + eax*2]
adc al, 0x41
mov eax, dword [ebp - 0x1980]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1d08], ecx
mov dword [ebp - 0x1c8], 0
jmp 0x408cc2
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x408d74
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
test eax, eax
je 0x408d74
push esi
xor esi, 0xe40
jmp 0x408cfe
pop esi
push esi
and esi, 0x15445
pop esi
push edx
push esi
add esp, 4
or edx, 0x7b6
and edx, 0x1317
pop edx
push edi
sub edi, 0xf4d5
pop edi
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
cmp edx, ecx
je 0x408d66
mov edx, dword [ebp - 0x764]
add edx, dword [ebp - 0x1c8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1c8]
movsx edx, byte [ebp + ecx - 0x89c]
cmp eax, edx
jne 0x408d6d
jmp 0x408cb3
jmp 0x408d74
push ebx
jmp 0x408d7d
pop ebx
push edx
push ebx
add esp, 4
sub edx, 0x181c8
sub edx, 0x15269
and edx, 0x2ead
call 0x408da2
add byte [ebx + 0x32], cl
dec eax
inc ebp
inc esp
inc esp
push eax
add esp, 4
pop edx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
cmp ecx, eax
jne 0x408dd3
mov dword [ebp - 0xcb8], 0
jmp 0x408e42
push ebx
xor ebx, 0x15459
sub ebx, 0x10a27
sub ebx, 0xff13
sub ebx, 0x17440
pop ebx
push ebx
push eax
add esp, 4
add ebx, 0x2350
pop ebx
push edx
push esi
add esp, 4
sub edx, 0x158f5
pop edx
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
inc dword [ebx - 0x2ec4df37]
jge 0x408e38
mov dword [ebp - 0xcb8], 0xffffffff
jmp 0x408e42
mov dword [ebp - 0xcb8], 1
cmp dword [ebp - 0xcb8], 0
jne 0x408e59
mov edx, dword [ebp - 0x1d08]
mov dword [ebp - 0x3e0], edx
jmp 0x408e6a
jmp 0x408c43
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], eax
Function at 0x408da2
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [ebp - 0x760]
add eax, 1
mov dword [ebp - 0x760], eax
mov ecx, dword [ebp - 0x75c]
mov edx, dword [ebp - 0x760]
cmp edx, dword [ecx + 0x18]
jae 0x408e5e
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x1978]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x764], edx
mov eax, dword [ebp - 0x760]
mov ecx, dword [ebp - 0x197c]
movzx edx, word [ecx + eax*2]
adc al, 0x41
mov eax, dword [ebp - 0x1980]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1d08], ecx
mov dword [ebp - 0x1c8], 0
jmp 0x408cc2
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x408d74
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
test eax, eax
je 0x408d74
push esi
xor esi, 0xe40
jmp 0x408cfe
pop esi
push esi
and esi, 0x15445
pop esi
push edx
push esi
add esp, 4
or edx, 0x7b6
and edx, 0x1317
pop edx
push edi
sub edi, 0xf4d5
pop edi
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
cmp edx, ecx
je 0x408d66
mov edx, dword [ebp - 0x764]
add edx, dword [ebp - 0x1c8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1c8]
movsx edx, byte [ebp + ecx - 0x89c]
cmp eax, edx
jne 0x408d6d
jmp 0x408cb3
jmp 0x408d74
push ebx
jmp 0x408d7d
pop ebx
push edx
push ebx
add esp, 4
sub edx, 0x181c8
sub edx, 0x15269
and edx, 0x2ead
call 0x408da2
add byte [ebx + 0x32], cl
dec eax
inc ebp
inc esp
inc esp
push eax
add esp, 4
pop edx
mov eax, dword [ebp - 0x764]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x89c]
cmp ecx, eax
jne 0x408dd3
mov dword [ebp - 0xcb8], 0
jmp 0x408e42
push ebx
xor ebx, 0x15459
sub ebx, 0x10a27
sub ebx, 0xff13
sub ebx, 0x17440
pop ebx
push ebx
push eax
add esp, 4
add ebx, 0x2350
pop ebx
push edx
push esi
add esp, 4
sub edx, 0x158f5
pop edx
mov ecx, dword [ebp - 0x764]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x89c]
inc dword [ebx - 0x2ec4df37]
jge 0x408e38
mov dword [ebp - 0xcb8], 0xffffffff
jmp 0x408e42
mov dword [ebp - 0xcb8], 1
cmp dword [ebp - 0xcb8], 0
jne 0x408e59
mov edx, dword [ebp - 0x1d08]
mov dword [ebp - 0x3e0], edx
jmp 0x408e6a
jmp 0x408c43
mov eax, dword [ebp - 0x768]
mov dword [ebp - 0x3e0], eax