joyce8/EMBER2024-capa huggingface dataset:
Function at 0x10033030
Capabilities:
Parse credit card information

Disassembly:
mov ecx, dword [0x1019944c]
mov dword [0x10199428], 0
mov edx, 0x1019942c
mov al, byte [ecx]
cmp al, 0x20
je 0x1003304f
cmp al, 9
jne 0x10033058
inc ecx
mov dword [0x1019944c], ecx
jmp 0x10033045
mov al, byte [ecx]
cmp al, 0x2b
je 0x1003317d
cmp al, 0x2d
je 0x1003317d
cmp al, 0x2a
je 0x1003317d
cmp al, 0x2f
je 0x1003317d
cmp al, 0x25
je 0x1003317d
cmp al, 0x5e
je 0x1003317d
cmp al, 0x28
je 0x1003317d
cmp al, 0x29
je 0x1003317d
cmp al, 0x2c
je 0x1003317d
cmp al, 0x3d
je 0x1003317d
cmp al, 0x30
jl 0x100330b2
cmp al, 0x39
jle 0x100330b6
cmp al, 0x2e
jne 0x100330de
mov dword [0x10199428], 3
mov al, byte [ecx]
cmp al, 0x30
jl 0x100330ca
cmp al, 0x39
jle 0x100330d2
cmp al, 0x2e
jne 0x1003319a
mov byte [edx], al
inc edx
inc ecx
mov dword [0x1019944c], ecx
jmp 0x100330c0
cmp al, 0x61
jl 0x100330e6
cmp al, 0x7a
jle 0x100330f2
cmp al, 0x30
jl 0x100330ee
cmp al, 0x39
jle 0x100330f2
cmp al, 0x5f
jne 0x1003312b
mov dword [0x10199428], 1
lea esp, [esp]
mov al, byte [ecx]
cmp al, 0x61
jl 0x1003310a
cmp al, 0x7a
jle 0x10033116
cmp al, 0x30
jl 0x10033112
cmp al, 0x39
jle 0x10033116
cmp al, 0x5f
jne 0x10033122
mov byte [edx], al
inc edx
inc ecx
mov dword [0x1019944c], ecx
jmp 0x10033100
mov byte [0x1019943b], 0
jmp 0x1003319a
test al, al
je 0x1003319a
mov edx, dword [0x10199900]
inc ecx
mov dword [0x1019944c], ecx
sub ecx, edx
dec ecx
mov byte [0x1019942c], al
mov byte [0x1019942d], 0
mov dword [0x10199928], 1
mov dword [0x10199904], ecx
xor eax, eax
lea ecx, [ecx]
mov cl, byte [eax + 0x1019942c]
mov byte [eax + 0x10199908], cl
inc eax
test cl, cl
jne 0x10033160
push 1
push 0x101993e8
call fcn.100f9178
mov dword [0x10199428], 2
mov al, byte [ecx]
inc ecx
mov byte [0x1019942c], al
mov edx, 0x1019942d
mov dword [0x1019944c], ecx
mov byte [edx], 0
lea ecx, [ecx]
mov al, byte [ecx]
cmp al, 0x20
je 0x100331aa
cmp al, 9
jne 0x100331b3
inc ecx
mov dword [0x1019944c], ecx
jmp 0x100331a0
ret
Function at 0x10038767
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov eax, dword [ebp - 0x4fc]
add eax, 1
mov dword [ebp - 0x4fc], eax
cmp dword [ebp - 0xc9c], 0
jle 0x100387ab
push esi
push edx
add esp, 4
or esi, 0x474b
and esi, 0xcd60
and esi, 0x5b61
pop esi
push edx
push edi
add esp, 4
sub edx, 0x11833
add edx, 0xa36b
jmp 0x100386c4
pop edx
mov eax, dword [ebp - 0xae8]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xa64]
movzx eax, byte [edx]
cmp ecx, eax
je 0x10038747
push ebx
and ebx, 0x7a87
jmp 0x100386e7
xor ebx, 0x10061
pop ebx
push edx
push ecx
add esp, 4
sub edx, 0x14d87
xor edx, 0x212e
add edx, 0x11511
jmp 0x1003870c
pop edx
mov ecx, dword [ebp - 0xae8]
movzx edx, byte [ecx]
mov eax, dword [ebp - 0xa64]
movzx ecx, byte [eax]
cmp edx, ecx
jle 0x1003872f
mov dword [ebp - 0x15e4], 1
jmp 0x10038739
mov dword [ebp - 0x15e4], 0xffffffff
mov edx, dword [ebp - 0x15e4]
mov dword [ebp - 0xca0], edx
jmp 0x100387ab
push ebx
call fcn.10038758
add byte [edx], dh
dec ebx
inc ebp
inc ecx
dec edx
inc ecx
inc edi
dec eax
inc eax
cmp al, 0x83
add esp, 4
call 0x10038767
add byte [edx], bh
cmp eax, dword [eax + 0x3b]
inc ecx
inc edx
add esp, 4
call 0x10038767
add byte [edx], bh
cmp eax, dword [eax + 0x3b]
inc ecx
inc edx
add esp, 4
jmp 0x10038772
jmp 0x10038778
pop ebx
mov eax, dword [ebp - 0xc9c]
sub eax, 1
mov dword [ebp - 0xc9c], eax
mov ecx, dword [ebp - 0xae8]
add ecx, 1
mov dword [ebp - 0xae8], ecx
mov edx, dword [ebp - 0xa64]
add edx, 1
mov dword [ebp - 0xa64], edx
jmp 0x10038686
mov eax, dword [ebp - 0xca0]
mov dword [ebp - 0x15e8], eax
cmp dword [ebp - 0x15e8], 0
jne 0x10038800
push edi
sub edi, 0x8af1
pop edi
push esi
sub esi, 0x7418
add esi, 0x7b70
pop esi
push esi
and esi, 0xa3bd
sub esi, 0x13ef1
jmp 0x100387eb
sub esi, 0x3b4f
pop esi
mov ecx, dword [ebp - 0x4fc]
mov dword [ebp - 0xae4], ecx
jmp 0x10038841
jmp 0x10038580

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

Disassembly:
test dword [eax], esp
out 0xff, al
dec dword [ecx - 0x15ab7b]
call dword [eax - 0x7f]
loopne 0x10038a03
adc al, 0
add al, ch
or byte [eax], al
add byte [eax], al
add byte [ebx + 0x4a], cl
cmp byte [edi + 0x4c], cl
dec eax
dec ebp
add esp, 4
pop eax
push ebx
push esi
add esp, 4
and ebx, 0x17321
xor ebx, 0xdf61
popal
fild word [eax]
add bl, ch
push es
pop ebx
invalid
invalid
push esp

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

Disassembly:
test dword [eax], esp
out 0xff, al
dec dword [ecx - 0x15ab7b]
call dword [eax - 0x7f]
loopne 0x10038a03
adc al, 0
add al, ch
or byte [eax], al
add byte [eax], al
add byte [ebx + 0x4a], cl
cmp byte [edi + 0x4c], cl
dec eax
dec ebp
add esp, 4
pop eax
push ebx
push esi
add esp, 4
and ebx, 0x17321
xor ebx, 0xdf61
popal
fild word [eax]
add bl, ch
push es
pop ebx
invalid
invalid
push esp
Function at 0x10038a30
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
jmp 0x10038cf1
push edi
push esi
add esp, 4
or edi, 0xb995
xor edi, 0x15939
pop edi
push ebx
xor ebx, 0x5c14
pop ebx
push ebx
push ebx
add esp, 4
and ebx, 0xa914
add ebx, 0x17a33
add ebx, 0x1f2d
pop ebx
cmp dword [ebp - 0x2f0], 0
jne 0x100395f6
mov eax, 0x6b
mov word [ebp - 0x1770], ax
mov ecx, 0x65
mov word [ebp - 0x176e], cx
mov edx, 0x72
mov word [ebp - 0x176c], dx
mov eax, 0x6e
mov word [ebp - 0x176a], ax
mov ecx, 0x65
mov word [ebp - 0x1768], cx
mov edx, 0x6c
mov word [ebp - 0x1766], dx
mov eax, 0x33
mov word [ebp - 0x1764], ax
mov ecx, 0x32
mov word [ebp - 0x1762], cx
mov edx, 0x2e
mov word [ebp - 0x1760], dx
mov eax, 0x64
mov word [ebp - 0x175e], ax
mov ecx, 0x6c
mov word [ebp - 0x175c], cx
mov edx, 0x6c
mov word [ebp - 0x175a], dx
xor eax, eax
mov word [ebp - 0x1758], ax
push edx
or edx, 0x3d03
and edx, 0x1028
jmp 0x10038ddb
call 0x10038deb
add byte [ebx + 0x3c], cl
inc ecx
cmp bh, byte [edi]
dec eax
cmp eax, 0x834c4d4e
les eax, [edx + ebx*2]
push edi
push edi
add esp, 4
add edi, 0x9902
pop edi
mov byte [ebp - 0x898], 0x4c
mov byte [ebp - 0x897], 0x6f
mov byte [ebp - 0x896], 0x61
mov byte [ebp - 0x895], 0x64
mov byte [ebp - 0x894], 0x4c
invalid
invalid

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

Disassembly:
add byte [eax], al
pop eax
push ebx
and ebx, 0x10a39
pop ebx
push edi
push eax
add esp, 4
add edi, 0x11f14
sub edi, 0xdd3b
or edi, 0xd85d
xor edi, 0x294f
pop edi
cmp dword [ebp - 0xcac], 0
jne 0x10038a91
mov dword [ebp - 0x2f0], 0
jmp 0x10038cf1
mov ecx, dword [ebp - 0xcac]
mov dword [ebp - 0x500], ecx
push ecx
call 0x10038aab
add byte [ebx + 0x3b], cl
cmp esi, dword [edx + ecx*2]
inc edi
cmp eax, 0x8104c483
jmp 0x1004de4f
pop eax
push ebx
test ch, al
add eax, 0x6836e882
add dword [ecx], eax
jmp 0x1105df6a
Function at 0x10038b10
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push eax
jmp 0x10038b02
call 0x10038b10
add byte [ecx + edi], dh
dec edi
dec ecx
xor al, 0x35
inc ebp
add esp, 4
and eax, 0x14752
and eax, 0x2784
pop eax
push eax
xor eax, 0x1178f
sub eax, 0x1109b
pop eax
mov ecx, dword [ebp - 0xca4]
mov dx, word [ecx]
mov word [ebp - 0x1046], dx
mov eax, dword [ebp - 0xca4]
add eax, 2
mov dword [ebp - 0xca4], eax
mov cx, word [ebp - 0x1046]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xca8]
mov ax, word [edx]
mov word [ebp - 0x1048], ax
mov ecx, dword [ebp - 0xca8]
inc dword [ebx - 0x7276fd3f]
pop eax
invalid
invalid
jmp dword [esi - 0x75]
xchg ebp, eax
mov eax, 0x66ffffef
mov dword [ebp - 0x128], edx
push eax
call fcn.10038b96
add byte [ebp + 0x49], al
dec ebp
dec ebx
dec ecx
inc esi
add esp, 4
pop eax
push eax
push edi
add esp, 4
or eax, 0xf85e
sub eax, 0x1837
jmp 0x10038bb1
pop eax
push eax
add eax, 0xfaa1
pop eax
movzx eax, word [ebp - 0x128]
test eax, eax
jne 0x10038bdd
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
sub ecx, edx
mov dword [ebp - 0x15f0], ecx
jmp 0x10038c40
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x128]
cmp eax, ecx
je 0x10038afc
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x128]
cmp edx, eax
je 0x10038afc
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
cmp ecx, edx
jge 0x10038c2a
mov dword [ebp - 0x15ec], 0xffffffff
jmp 0x10038c34
mov dword [ebp - 0x15ec], 1
mov eax, dword [ebp - 0x15ec]
mov dword [ebp - 0x15f0], eax
cmp dword [ebp - 0x15f0], 0
jne 0x10038c89
push edx
push edi
add esp, 4
xor edx, 0x11bcb
sub edx, 0x6999
xor edx, 0x4764
xor edx, 0x11356
pop edx
push eax
sub eax, 0x8e4a
xor eax, 0x4261
or eax, 0x128ed
pop eax
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x2f0], ecx
jmp 0x10038cf1
push edi
call 0x10038c9a
add byte [edi], dh
xor bh, byte [edx]
dec edi
dec edx
cmp byte [esi], dh
xor ecx, dword [esi - 0x7d]
les eax, [eax + ebp*8]
or byte [eax], al
add byte [eax], al
add byte [edi], dh
inc esp
dec ebp
inc ebx
dec ebx
cmp byte [ebx + 0x525f04c4], al
push esi
add esp, 4
jmp 0x10038cba
pop edx
mov edx, dword [ebp - 0x500]
mov eax, dword [edx]
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [ebp - 0xcac]
je 0x10038ce7
mov edx, dword [ebp - 0x500]
cmp dword [edx + 0x30], 0
jne 0x10038a9d
mov dword [ebp - 0x2f0], 0
Function at 0x10038b96
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push eax
jmp 0x10038b02
call 0x10038b10
add byte [ecx + edi], dh
dec edi
dec ecx
xor al, 0x35
inc ebp
add esp, 4
and eax, 0x14752
and eax, 0x2784
pop eax
push eax
xor eax, 0x1178f
sub eax, 0x1109b
pop eax
mov ecx, dword [ebp - 0xca4]
mov dx, word [ecx]
mov word [ebp - 0x1046], dx
mov eax, dword [ebp - 0xca4]
add eax, 2
mov dword [ebp - 0xca4], eax
mov cx, word [ebp - 0x1046]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xca8]
mov ax, word [edx]
mov word [ebp - 0x1048], ax
mov ecx, dword [ebp - 0xca8]
inc dword [ebx - 0x7276fd3f]
pop eax
invalid
invalid
jmp dword [esi - 0x75]
xchg ebp, eax
mov eax, 0x66ffffef
mov dword [ebp - 0x128], edx
push eax
call fcn.10038b96
add byte [ebp + 0x49], al
dec ebp
dec ebx
dec ecx
inc esi
add esp, 4
pop eax
push eax
push edi
add esp, 4
or eax, 0xf85e
sub eax, 0x1837
jmp 0x10038bb1
pop eax
push eax
add eax, 0xfaa1
pop eax
movzx eax, word [ebp - 0x128]
test eax, eax
jne 0x10038bdd
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
sub ecx, edx
mov dword [ebp - 0x15f0], ecx
jmp 0x10038c40
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x128]
cmp eax, ecx
je 0x10038afc
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x128]
cmp edx, eax
je 0x10038afc
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
cmp ecx, edx
jge 0x10038c2a
mov dword [ebp - 0x15ec], 0xffffffff
jmp 0x10038c34
mov dword [ebp - 0x15ec], 1
mov eax, dword [ebp - 0x15ec]
mov dword [ebp - 0x15f0], eax
cmp dword [ebp - 0x15f0], 0
jne 0x10038c89
push edx
push edi
add esp, 4
xor edx, 0x11bcb
sub edx, 0x6999
xor edx, 0x4764
xor edx, 0x11356
pop edx
push eax
sub eax, 0x8e4a
xor eax, 0x4261
or eax, 0x128ed
pop eax
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x2f0], ecx
jmp 0x10038cf1
push edi
call 0x10038c9a
add byte [edi], dh
xor bh, byte [edx]
dec edi
dec edx
cmp byte [esi], dh
xor ecx, dword [esi - 0x7d]
les eax, [eax + ebp*8]
or byte [eax], al
add byte [eax], al
add byte [edi], dh
inc esp
dec ebp
inc ebx
dec ebx
cmp byte [ebx + 0x525f04c4], al
push esi
add esp, 4
jmp 0x10038cba
pop edx
mov edx, dword [ebp - 0x500]
mov eax, dword [edx]
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [ebp - 0xcac]
je 0x10038ce7
mov edx, dword [ebp - 0x500]
cmp dword [edx + 0x30], 0
jne 0x10038a9d
mov dword [ebp - 0x2f0], 0
Function at 0x10038c9a
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push eax
jmp 0x10038b02
call 0x10038b10
add byte [ecx + edi], dh
dec edi
dec ecx
xor al, 0x35
inc ebp
add esp, 4
and eax, 0x14752
and eax, 0x2784
pop eax
push eax
xor eax, 0x1178f
sub eax, 0x1109b
pop eax
mov ecx, dword [ebp - 0xca4]
mov dx, word [ecx]
mov word [ebp - 0x1046], dx
mov eax, dword [ebp - 0xca4]
add eax, 2
mov dword [ebp - 0xca4], eax
mov cx, word [ebp - 0x1046]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xca8]
mov ax, word [edx]
mov word [ebp - 0x1048], ax
mov ecx, dword [ebp - 0xca8]
inc dword [ebx - 0x7276fd3f]
pop eax
invalid
invalid
jmp dword [esi - 0x75]
xchg ebp, eax
mov eax, 0x66ffffef
mov dword [ebp - 0x128], edx
push eax
call fcn.10038b96
add byte [ebp + 0x49], al
dec ebp
dec ebx
dec ecx
inc esi
add esp, 4
pop eax
push eax
push edi
add esp, 4
or eax, 0xf85e
sub eax, 0x1837
jmp 0x10038bb1
pop eax
push eax
add eax, 0xfaa1
pop eax
movzx eax, word [ebp - 0x128]
test eax, eax
jne 0x10038bdd
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
sub ecx, edx
mov dword [ebp - 0x15f0], ecx
jmp 0x10038c40
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x128]
cmp eax, ecx
je 0x10038afc
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x128]
cmp edx, eax
je 0x10038afc
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
cmp ecx, edx
jge 0x10038c2a
mov dword [ebp - 0x15ec], 0xffffffff
jmp 0x10038c34
mov dword [ebp - 0x15ec], 1
mov eax, dword [ebp - 0x15ec]
mov dword [ebp - 0x15f0], eax
cmp dword [ebp - 0x15f0], 0
jne 0x10038c89
push edx
push edi
add esp, 4
xor edx, 0x11bcb
sub edx, 0x6999
xor edx, 0x4764
xor edx, 0x11356
pop edx
push eax
sub eax, 0x8e4a
xor eax, 0x4261
or eax, 0x128ed
pop eax
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x2f0], ecx
jmp 0x10038cf1
push edi
call 0x10038c9a
add byte [edi], dh
xor bh, byte [edx]
dec edi
dec edx
cmp byte [esi], dh
xor ecx, dword [esi - 0x7d]
les eax, [eax + ebp*8]
or byte [eax], al
add byte [eax], al
add byte [edi], dh
inc esp
dec ebp
inc ebx
dec ebx
cmp byte [ebx + 0x525f04c4], al
push esi
add esp, 4
jmp 0x10038cba
pop edx
mov edx, dword [ebp - 0x500]
mov eax, dword [edx]
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [ebp - 0xcac]
je 0x10038ce7
mov edx, dword [ebp - 0x500]
cmp dword [edx + 0x30], 0
jne 0x10038a9d
mov dword [ebp - 0x2f0], 0
Function at 0x10038caa
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
push eax
jmp 0x10038b02
call 0x10038b10
add byte [ecx + edi], dh
dec edi
dec ecx
xor al, 0x35
inc ebp
add esp, 4
and eax, 0x14752
and eax, 0x2784
pop eax
push eax
xor eax, 0x1178f
sub eax, 0x1109b
pop eax
mov ecx, dword [ebp - 0xca4]
mov dx, word [ecx]
mov word [ebp - 0x1046], dx
mov eax, dword [ebp - 0xca4]
add eax, 2
mov dword [ebp - 0xca4], eax
mov cx, word [ebp - 0x1046]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xca8]
mov ax, word [edx]
mov word [ebp - 0x1048], ax
mov ecx, dword [ebp - 0xca8]
inc dword [ebx - 0x7276fd3f]
pop eax
invalid
invalid
jmp dword [esi - 0x75]
xchg ebp, eax
mov eax, 0x66ffffef
mov dword [ebp - 0x128], edx
push eax
call fcn.10038b96
add byte [ebp + 0x49], al
dec ebp
dec ebx
dec ecx
inc esi
add esp, 4
pop eax
push eax
push edi
add esp, 4
or eax, 0xf85e
sub eax, 0x1837
jmp 0x10038bb1
pop eax
push eax
add eax, 0xfaa1
pop eax
movzx eax, word [ebp - 0x128]
test eax, eax
jne 0x10038bdd
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
sub ecx, edx
mov dword [ebp - 0x15f0], ecx
jmp 0x10038c40
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x128]
cmp eax, ecx
je 0x10038afc
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x128]
cmp edx, eax
je 0x10038afc
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x128]
cmp ecx, edx
jge 0x10038c2a
mov dword [ebp - 0x15ec], 0xffffffff
jmp 0x10038c34
mov dword [ebp - 0x15ec], 1
mov eax, dword [ebp - 0x15ec]
mov dword [ebp - 0x15f0], eax
cmp dword [ebp - 0x15f0], 0
jne 0x10038c89
push edx
push edi
add esp, 4
xor edx, 0x11bcb
sub edx, 0x6999
xor edx, 0x4764
xor edx, 0x11356
pop edx
push eax
sub eax, 0x8e4a
xor eax, 0x4261
or eax, 0x128ed
pop eax
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x2f0], ecx
jmp 0x10038cf1
push edi
call 0x10038c9a
add byte [edi], dh
xor bh, byte [edx]
dec edi
dec edx
cmp byte [esi], dh
xor ecx, dword [esi - 0x7d]
les eax, [eax + ebp*8]
or byte [eax], al
add byte [eax], al
add byte [edi], dh
inc esp
dec ebp
inc ebx
dec ebx
cmp byte [ebx + 0x525f04c4], al
push esi
add esp, 4
jmp 0x10038cba
pop edx
mov edx, dword [ebp - 0x500]
mov eax, dword [edx]
mov dword [ebp - 0x500], eax
mov ecx, dword [ebp - 0x500]
cmp ecx, dword [ebp - 0xcac]
je 0x10038ce7
mov edx, dword [ebp - 0x500]
cmp dword [edx + 0x30], 0
jne 0x10038a9d
mov dword [ebp - 0x2f0], 0
Function at 0x10038deb
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
jmp 0x10038cf1
push edi
push esi
add esp, 4
or edi, 0xb995
xor edi, 0x15939
pop edi
push ebx
xor ebx, 0x5c14
pop ebx
push ebx
push ebx
add esp, 4
and ebx, 0xa914
add ebx, 0x17a33
add ebx, 0x1f2d
pop ebx
cmp dword [ebp - 0x2f0], 0
jne 0x100395f6
mov eax, 0x6b
mov word [ebp - 0x1770], ax
mov ecx, 0x65
mov word [ebp - 0x176e], cx
mov edx, 0x72
mov word [ebp - 0x176c], dx
mov eax, 0x6e
mov word [ebp - 0x176a], ax
mov ecx, 0x65
mov word [ebp - 0x1768], cx
mov edx, 0x6c
mov word [ebp - 0x1766], dx
mov eax, 0x33
mov word [ebp - 0x1764], ax
mov ecx, 0x32
mov word [ebp - 0x1762], cx
mov edx, 0x2e
mov word [ebp - 0x1760], dx
mov eax, 0x64
mov word [ebp - 0x175e], ax
mov ecx, 0x6c
mov word [ebp - 0x175c], cx
mov edx, 0x6c
mov word [ebp - 0x175a], dx
xor eax, eax
mov word [ebp - 0x1758], ax
push edx
or edx, 0x3d03
and edx, 0x1028
jmp 0x10038ddb
call 0x10038deb
add byte [ebx + 0x3c], cl
inc ecx
cmp bh, byte [edi]
dec eax
cmp eax, 0x834c4d4e
les eax, [edx + ebx*2]
push edi
push edi
add esp, 4
add edi, 0x9902
pop edi
mov byte [ebp - 0x898], 0x4c
mov byte [ebp - 0x897], 0x6f
mov byte [ebp - 0x896], 0x61
mov byte [ebp - 0x895], 0x64
mov byte [ebp - 0x894], 0x4c
invalid
invalid

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

Disassembly:
add esp, 4
sub edi, 0x1267d
call 0x10038f08
add byte [esi + 0x3d], cl
inc esp
cmp byte [edi], dh
inc esi
aas
add esp, 4
pop edi
cmp dword [ebp - 0xcb8], 0
invalid
inc dword [eax]

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

Disassembly:
add esp, 4
sub edi, 0x1267d
call 0x10038f08
add byte [esi + 0x3d], cl
inc esp
cmp byte [edi], dh
inc esi
aas
add esp, 4
pop edi
cmp dword [ebp - 0xcb8], 0
invalid
inc dword [eax]
Function at 0x10039230
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [ebp - 0x3a8]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1604], eax
jne 0x10039252
mov ecx, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], ecx
jmp 0x1003951b
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1604]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1608], edx
cmp dword [ebp - 0x1608], 0
jne 0x10039284
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], eax
jmp 0x1003951b
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [ebp - 0x1608]
mov dword [ebp - 0x758], ecx
jne 0x100392a9
mov edx, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], edx
jmp 0x1003951b
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19ec], ecx
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x3a8]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19f0], eax
mov ecx, dword [ebp - 0x758]
mov edx, dword [ebp - 0x3a8]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19f4], edx
mov dword [ebp - 0x75c], 0
jmp 0x10039303
mov ecx, dword [ebp - 0x758]
mov edx, dword [ebp - 0x75c]
cmp edx, dword [ecx + 0x18]
jae 0x1003950f
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x19ec]
mov edx, dword [ebp - 0x3a8]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x760], edx
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x19f0]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19f4]
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1d80], ecx
mov dword [ebp - 0x1c8], 0
jmp 0x10039373
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x760]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x10039425
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x898]
test eax, eax
je 0x10039425
push edi
push edx
add esp, 4
and edi, 0x28e0
or edi, 0x15d1a
add edi, 0x140f7
call 0x100393c6
add byte [0x433a4037], dh
aaa
xor esi, dword ds:[ebx]
add esp, 4
pop edi
push eax
and eax, 0x10e72
pop eax
mov ecx, dword [ebp - 0x760]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x898]
cmp edx, ecx
je 0x10039417
mov edx, dword [ebp - 0x760]
add edx, dword [ebp - 0x1c8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1c8]
movsx edx, byte [ebp + ecx - 0x898]
cmp eax, edx
jne 0x1003941e
jmp 0x10039364
jmp 0x10039425
push eax
sub eax, 0x1161
sub eax, 0x12d91
add eax, 0x184cf
pop eax
push eax
call 0x10039447
add byte [ecx + 0x41], cl
inc ebp
push eax
cmp al, 0x3e
xor al, 0x83
les eax, [ecx + eax*4]
loopne 0x100393e7
ret 0
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], eax
Function at 0x100393c6
Capabilities:
Get number of processors
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [ebp - 0x3a8]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1604], eax
jne 0x10039252
mov ecx, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], ecx
jmp 0x1003951b
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1604]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1608], edx
cmp dword [ebp - 0x1608], 0
jne 0x10039284
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], eax
jmp 0x1003951b
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [ebp - 0x1608]
mov dword [ebp - 0x758], ecx
jne 0x100392a9
mov edx, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], edx
jmp 0x1003951b
mov eax, dword [ebp - 0x758]
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19ec], ecx
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x3a8]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19f0], eax
mov ecx, dword [ebp - 0x758]
mov edx, dword [ebp - 0x3a8]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19f4], edx
mov dword [ebp - 0x75c], 0
jmp 0x10039303
mov ecx, dword [ebp - 0x758]
mov edx, dword [ebp - 0x75c]
cmp edx, dword [ecx + 0x18]
jae 0x1003950f
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x19ec]
mov edx, dword [ebp - 0x3a8]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x760], edx
mov eax, dword [ebp - 0x75c]
mov ecx, dword [ebp - 0x19f0]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x19f4]
mov ecx, dword [ebp - 0x3a8]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x1d80], ecx
mov dword [ebp - 0x1c8], 0
jmp 0x10039373
mov edx, dword [ebp - 0x1c8]
add edx, 1
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x760]
add eax, dword [ebp - 0x1c8]
movsx ecx, byte [eax]
test ecx, ecx
je 0x10039425
mov edx, dword [ebp - 0x1c8]
movsx eax, byte [ebp + edx - 0x898]
test eax, eax
je 0x10039425
push edi
push edx
add esp, 4
and edi, 0x28e0
or edi, 0x15d1a
add edi, 0x140f7
call 0x100393c6
add byte [0x433a4037], dh
aaa
xor esi, dword ds:[ebx]
add esp, 4
pop edi
push eax
and eax, 0x10e72
pop eax
mov ecx, dword [ebp - 0x760]
add ecx, dword [ebp - 0x1c8]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x1c8]
movsx ecx, byte [ebp + eax - 0x898]
cmp edx, ecx
je 0x10039417
mov edx, dword [ebp - 0x760]
add edx, dword [ebp - 0x1c8]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x1c8]
movsx edx, byte [ebp + ecx - 0x898]
cmp eax, edx
jne 0x1003941e
jmp 0x10039364
jmp 0x10039425
push eax
sub eax, 0x1161
sub eax, 0x12d91
add eax, 0x184cf
pop eax
push eax
call 0x10039447
add byte [ecx + 0x41], cl
inc ebp
push eax
cmp al, 0x3e
xor al, 0x83
les eax, [ecx + eax*4]
loopne 0x100393e7
ret 0
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3e0], eax