joyce8/EMBER2024-capa huggingface dataset:
Function at 0x100688b0
Capabilities:
Read file on windows

Disassembly:
push 0xffffffffffffffff
push 0x10163fb2
mov eax, dword fs:[0]
push eax
sub esp, 0x22c
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x228], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101b629c]
xor eax, esp
push eax
lea eax, [esp + 0x240]
mov dword fs:[0], eax
xor ebx, ebx
mov dword [esp + 0x248], ebx
mov ebp, dword [esp + 0x250]
mov esi, dword [esp + 0x254]
mov edi, dword [esp + 0x258]
mov dword [esp + 0x24], ebx
mov dword [ebp + 0x18], 0xf
mov dword [ebp + 0x14], ebx
mov dword [esp + 0x20], ebp
mov byte [ebp + 4], bl
mov dword [esp + 0x248], ebx
push 0x1ff
lea eax, [esp + 0x41]
push ebx
push eax
mov dword [esp + 0x30], 1
mov byte [esp + 0x48], bl
call fcn.10100160
push edi
lea ecx, [esp + 0x4c]
push ecx
push esi
call fcn.10044450
push 0x40
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x5c]
push eax
mov byte [esp + 0x38], 0x72
mov byte [esp + 0x39], 0x62
mov byte [esp + 0x3a], bl
call fcn.10100e69
mov edi, eax
mov dl, 0x30
mov cl, 0x32
mov al, 0x58
add esp, 0x24
cmp edi, ebx
mov dword [esp + 0x28], edi
mov byte [esp + 0x34], 0x25
mov byte [esp + 0x35], dl
mov byte [esp + 0x36], cl
mov byte [esp + 0x37], al
mov byte [esp + 0x38], 0x20
mov byte [esp + 0x39], bl
mov byte [esp + 0x2c], 0x25
mov byte [esp + 0x2d], dl
mov byte [esp + 0x2e], cl
mov byte [esp + 0x2f], al
mov byte [esp + 0x30], bl
je 0x10068aa5
push 2
push ebx
push edi
call fcn.10100de4
push edi
call fcn.10100cef
push ebx
push ebx
push edi
mov esi, eax
call fcn.10100de4
lea ecx, [esi + 1]
push ecx
call fcn.100ff166
add esp, 0x20
cmp eax, ebx
mov dword [esp + 0x18], eax
je 0x10068a9c
push edi
push esi
push 1
push eax
call fcn.10100b3c
mov edx, dword [esp + 0x28]
lea eax, [esi + esi*2 + 3]
push eax
mov byte [edx + esi], bl
call fcn.100ff166
mov ecx, eax
add esp, 0x14
cmp ecx, ebx
mov dword [esp + 0x1c], ecx
je 0x10068a8f
xor edi, edi
cmp esi, ebx
mov ebp, ecx
mov byte [ecx], bl
jle 0x10068a5f
lea esp, [esp]
mov ecx, dword [esp + 0x18]
movzx edx, byte [edi + ecx]
lea eax, [esi - 1]
cmp edi, eax
push edx
je 0x10068a43
lea eax, [esp + 0x38]
push eax
push ebp
call fcn.10100f40
add esp, 0xc
add ebp, 3
jmp 0x10068a54
lea eax, [esp + 0x30]
push eax
push ebp
call fcn.10100f40
add esp, 0xc
add ebp, 2
add edi, 1
cmp edi, esi
jl 0x10068a20
mov ecx, dword [esp + 0x1c]
mov eax, ecx
lea esi, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x10068a64
sub eax, esi
push eax
push ecx
mov ecx, dword [esp + 0x28]
call fcn.100099d0
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.100ff229
mov edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x24]
add esp, 4
mov edx, dword [esp + 0x18]
push edx
call fcn.100ff229
add esp, 4
push edi
call fcn.10100824
add esp, 4
mov eax, ebp
mov ecx, dword [esp + 0x240]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x228]
xor ecx, esp
call fcn.100ff704
add esp, 0x238
ret
Function at 0x100693b0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x10164159
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x30], eax
push ebx
push esi
mov eax, dword [0x101b629c]
xor eax, esp
push eax
lea eax, [esp + 0x40]
mov dword fs:[0], eax
xor ebx, ebx
mov dword [esp + 0x48], ebx
mov esi, dword [esp + 0x50]
mov dword [esp + 0xc], ebx
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], ebx
mov dword [esp + 0x10], esi
mov byte [esi + 4], bl
mov dword [esp + 0x48], ebx
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
push eax
push ecx
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x28]
push eax
mov dword [esp + 0x1c], 1
mov byte [esp + 0x24], 0x25
mov byte [esp + 0x25], 0x49
mov byte [esp + 0x26], 0x36
mov byte [esp + 0x27], 0x34
mov byte [esp + 0x28], 0x58
mov byte [esp + 0x29], bl
call fcn.10100f40
lea eax, [esp + 0x2c]
add esp, 0x10
lea edx, [eax + 1]
jmp 0x10069450
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x10069450
sub eax, edx
push eax
lea ecx, [esp + 0x20]
push ecx
mov ecx, esi
call fcn.100099d0
mov eax, esi
mov ecx, dword [esp + 0x40]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.100ff704
add esp, 0x40
ret
Function at 0x1007c490
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x101647d2
mov eax, dword fs:[0]
push eax
sub esp, 0x144
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x140], eax
push ebx
push esi
push edi
mov eax, dword [0x101b629c]
xor eax, esp
push eax
lea eax, [esp + 0x154]
mov dword fs:[0], eax
mov eax, dword [esp + 0x16c]
mov edi, dword [esp + 0x168]
mov esi, dword [esp + 0x164]
xor ebx, ebx
push ebx
push ebx
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x30]
push ecx
push eax
mov dword [esp + 0x2c], ebx
push edi
mov dword [esp + 0x38], esi
mov dword [esp + 0x2c], ebx
call fcn.10070120
add esp, 0x1c
test eax, eax
jne 0x1007c52b
push ebx
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], ebx
push 0x10169a34
mov ecx, esi
mov byte [esi + 4], bl
call fcn.100099d0
jmp 0x1007c5a8
mov edx, dword [esp + 0x28]
mov al, 0x64
push edx
mov cl, 0x25
mov byte [esp + 0x4d], al
mov byte [esp + 0x50], al
mov eax, dword [esp + 0x28]
mov byte [esp + 0x4c], cl
mov byte [esp + 0x4f], cl
push eax
lea ecx, [esp + 0x50]
push ecx
lea edx, [esp + 0x5c]
push edx
mov byte [esp + 0x5a], 0x2c
mov byte [esp + 0x5d], bl
call fcn.10100f40
add esp, 0x10
cmp dword [edi + 0x32f8], ebx
jne 0x1007c579
mov eax, dword [esp + 0x10]
push eax
call fcn.100ff229
add esp, 4
lea eax, [esp + 0x50]
mov dword [esi + 0x18], 0xf
mov dword [esi + 0x14], ebx
mov byte [esi + 4], bl
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1007c590
sub eax, edx
push eax
lea ecx, [esp + 0x54]
push ecx
mov ecx, esi
call fcn.100099d0
mov dword [esp + 0x15c], ebx
mov dword [esp + 0x14], 1
mov eax, esi
mov ecx, dword [esp + 0x154]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x140]
xor ecx, esp
call fcn.100ff704
add esp, 0x150
ret
Function at 0x10082130
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x10164b78
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x30], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101b629c]
xor eax, esp
push eax
lea eax, [esp + 0x48]
mov dword fs:[0], eax
mov eax, dword [esp + 0x5c]
cmp eax, 2
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x60]
jne 0x100821ad
mov esi, dword [ebp + 0x3304]
mov edi, dword [esi + 8]
cmp dword [esi + 4], edi
jbe 0x10082186
call fcn.10101425
mov ebx, dword [esi + 4]
cmp ebx, dword [esi + 8]
jbe 0x10082193
call fcn.10101425
push edi
push esi
push ebx
push esi
lea eax, [esp + 0x48]
push eax
mov ecx, esi
call fcn.100619a0
mov eax, 1
jmp 0x100822bb
cmp eax, 1
jne 0x100821d1
add ebp, 0x3300
push ebp
push 0x1016a8d8
push esi
call fcn.101019f5
add esp, 0xc
mov eax, 1
jmp 0x100822bb
xor ebx, ebx
cmp eax, ebx
jne 0x100822b9
mov cl, 0x25
mov al, 0x64
mov dl, 0x2c
mov byte [esp + 0x38], cl
mov byte [esp + 0x3b], cl
mov byte [esp + 0x3e], cl
mov byte [esp + 0x41], cl
lea ecx, [esp + 0x24]
mov byte [esp + 0x39], al
mov byte [esp + 0x3a], dl
mov byte [esp + 0x3c], al
mov byte [esp + 0x3d], dl
mov byte [esp + 0x3f], al
mov byte [esp + 0x40], dl
mov byte [esp + 0x42], al
mov byte [esp + 0x43], bl
call fcn.100f1440
mov dword [esp + 0x50], ebx
push ebx
lea ecx, [esp + 0x28]
push ecx
push 0x1016a58c
push esi
call fcn.1004a900
mov edi, eax
add esp, 0x10
xor esi, esi
cmp edi, ebx
jle 0x1008229c
lea ebx, [ebx]
xor eax, eax
cmp esi, ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
jl 0x100822b4
cmp esi, dword [esp + 0x2c]
jge 0x100822b4
mov edx, dword [esp + 0x28]
mov eax, dword [edx + esi*4]
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x20]
push edx
lea ecx, [esp + 0x48]
push ecx
push eax
call fcn.101019f5
mov ecx, dword [ebp + 0x3304]
add esp, 0x18
lea edx, [esp + 0x14]
push edx
call fcn.1006f9d0
add esi, 1
cmp esi, edi
jl 0x10082240
mov dword [esp + 0x50], 0xffffffff
lea ecx, [esp + 0x24]
call fcn.100f1788
mov eax, 1
jmp 0x100822bb
jmp fcn.100ee1d6
xor eax, eax
mov ecx, dword [esp + 0x48]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.100ff704
add esp, 0x40
ret
Function at 0x100822e0
Capabilities:
Create thread

Disassembly:
sub esp, 0x210
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x20c], eax
push esi
mov esi, dword [esp + 0x21c]
push edi
mov edi, dword [esp + 0x21c]
push 0x1ff
lea eax, [esp + 0x19]
push 0
push eax
mov dword [esp + 0x1c], edi
mov byte [esp + 0x20], 0
call fcn.10100160
push esi
lea ecx, [esp + 0x24]
push ecx
push edi
call fcn.10044450
lea eax, [esp + 0x2c]
add esp, 0x18
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10082334
sub eax, edx
add eax, 1
push eax
call fcn.100ff166
mov esi, eax
add esp, 4
test esi, esi
je 0x100823ab
lea eax, [esp + 0x14]
mov edx, esi
mov ecx, eax
sub edx, ecx
jmp 0x10082360
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x10082360
push ebp
mov dword [esp + 0xc], 0
call fcn.1002d8c0
lea edx, [esp + 0xc]
push edx
push 0
push esi
push 0x10053690
push 0
push 0
mov ebp, eax
call fcn.101018df
push ebp
mov edi, eax
call fcn.1002d960
add esp, 0x1c
test edi, edi
pop ebp
jne 0x100823c4
push esi
call fcn.100ff229
add esp, 4
pop edi
xor eax, eax
pop esi
mov ecx, dword [esp + 0x20c]
xor ecx, esp
call fcn.100ff704
add esp, 0x210
ret
push edi
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 8]
lea ecx, [esp + 0xc]
push ecx
mov ecx, dword [edx + 0x3288]
mov dword [esp + 0x10], eax
call fcn.1006fbc0
mov ecx, dword [esp + 0x214]
mov eax, dword [esp + 8]
pop edi
pop esi
xor ecx, esp
call fcn.100ff704
add esp, 0x210
ret
Function at 0x10083e20
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xffffffffffffffff
push 0x10164c49
mov eax, dword fs:[0]
push eax
sub esp, 0x78
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x74], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101b629c]
xor eax, esp
push eax
lea eax, [esp + 0x8c]
mov dword fs:[0], eax
mov esi, dword [esp + 0xa0]
mov edi, dword [esp + 0x9c]
mov ebp, dword [esp + 0xa4]
xor ebx, ebx
mov dword [esp + 0x18], ebx
cmp dword [esi + 0x32a4], ebx
mov dword [esp + 0x2c], edi
je 0x10083f0c
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x34]
push eax
mov eax, dword [esp + 0xb8]
lea ecx, [esp + 0x40]
push ecx
lea edx, [eax + 1]
push edx
lea ecx, [ebp + 1]
push ecx
push eax
push ebp
push esi
mov dword [esp + 0x4c], ebx
call fcn.10044770
add esp, 0x28
test eax, eax
jne 0x10083ee1
push ebx
mov dword [edi + 0x18], 0xf
mov dword [edi + 0x14], ebx
push 0x10169a34
mov ecx, edi
mov byte [edi + 4], bl
call fcn.100099d0
mov dword [esp + 0x94], ebx
jmp 0x1008402f
mov edx, dword [esp + 0x24]
mov eax, dword [edx]
mov ecx, eax
shr ecx, 0x10
mov ebx, eax
push edx
mov byte [esp + 0x1b], cl
shr ebx, 8
mov byte [esp + 0x1a], al
call fcn.100ff229
mov dl, byte [esp + 0x1b]
mov cl, byte [esp + 0x1a]
add esp, 4
jmp 0x10083f32
mov eax, dword [esp + 0xa8]
lea edx, [esp + 0x20]
push edx
push eax
push ebp
lea ecx, [esp + 0x28]
call fcn.10083230
mov ecx, eax
mov ebx, eax
add esp, 0xc
shr ecx, 0x10
shr ebx, 8
mov dl, al
cmp dword [esp + 0x20], ebp
je 0x10083f61
mov eax, dword [esp + 0xa8]
cmp dword [esp + 0x1c], eax
je 0x10083f61
push 0x10169a34
mov ecx, edi
call fcn.10009c90
mov dword [esp + 0x94], 0
jmp 0x1008402f
xor eax, eax
mov dword [esp + 0x69], eax
mov dword [esp + 0x6d], eax
mov dword [esp + 0x71], eax
mov dword [esp + 0x75], eax
mov dword [esp + 0x79], eax
mov dword [esp + 0x7d], eax
mov dword [esp + 0x81], eax
mov word [esp + 0x85], ax
mov byte [esp + 0x87], al
mov al, 0x78
movzx ecx, cl
push ecx
mov byte [esp + 0x5f], al
mov byte [esp + 0x63], al
mov byte [esp + 0x67], al
movzx eax, bl
push eax
movzx ecx, dl
push ecx
lea edx, [esp + 0x64]
push edx
lea eax, [esp + 0x78]
push eax
mov byte [esp + 0x7c], 0
xor esi, esi
mov byte [esp + 0x6c], 0x25
mov byte [esp + 0x6d], 0x30
mov byte [esp + 0x6e], 0x32
mov byte [esp + 0x70], 0x25
mov byte [esp + 0x71], 0x30
mov byte [esp + 0x72], 0x32
mov byte [esp + 0x74], 0x25
mov byte [esp + 0x75], 0x30
mov byte [esp + 0x76], 0x32
mov byte [esp + 0x78], 0
call fcn.10100f40
lea eax, [esp + 0x7c]
mov dword [edi + 0x18], 0xf
mov dword [edi + 0x14], esi
add esp, 0x14
mov byte [edi + 4], 0
lea ecx, [eax + 1]
jmp 0x10084010
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x10084010
sub eax, ecx
push eax
lea ecx, [esp + 0x6c]
push ecx
mov ecx, edi
call fcn.100099d0
mov dword [esp + 0x94], esi
mov dword [esp + 0x18], 1
mov eax, edi
mov ecx, dword [esp + 0x8c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x74]
xor ecx, esp
call fcn.100ff704
add esp, 0x84
ret
Function at 0x10087a40
Capabilities:
Check for time delay via gettickcount

Disassembly:
sub esp, 0x14
push edi
mov edi, dword [esp + 0x1c]
push 5
push edi
call fcn.10054350
add esp, 8
test eax, eax
jne 0x10087a5e
mov eax, edi
pop edi
add esp, 0x14
ret
push ebx
push ebp
push esi
push 0
push eax
call fcn.10054350
add esp, 8
mov esi, eax
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
push esi
mov dword [esp + 0x14], eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x10087b19
mov ebx, dword [esp + 0x34]
mov ebp, dword [sym.imp.USER32.dll_GetWindowRect]
test ebx, ebx
mov edi, esi
jne 0x10087aa2
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x10087ac3
lea eax, [esp + 0x14]
push eax
push esi
call ebp
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
push ecx
push edx
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
jne 0x10087afb
push 2
push esi
call fcn.10054350
mov esi, eax
add esp, 8
cmp edi, esi
je 0x10087b19
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
sub eax, dword [esp + 0x10]
cmp eax, dword [0x101a18e8]
jae 0x10087b17
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x10087a91
pop esi
pop ebp
pop ebx
mov eax, edi
pop edi
add esp, 0x14
ret
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
push ebx
push ecx
push edx
push esi
call fcn.10087a40
add esp, 0x10
pop esi
pop ebp
pop ebx
pop edi
add esp, 0x14
ret
xor edi, edi
pop esi
pop ebp
pop ebx
mov eax, edi
pop edi
add esp, 0x14
ret
Function at 0x10087d50
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x80
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 8]
push esi
push edi
push eax
mov dword [esp + 0x14], ecx
call fcn.101036d5
add esp, 4
mov esi, eax
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x10087d99
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x7c]
xor ecx, esp
call fcn.100ff704
mov esp, ebp
pop ebp
ret
lea edx, [esp + 0xc]
push edx
push esi
mov edi, 1
mov dword [esp + 0x14], 0
call fcn.10054310
push 0
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
push 0
push eax
push 0
push 0x400
call fcn.10053db0
mov esi, eax
add esp, 0x1c
test esi, esi
jne 0x10087ea3
mov cl, 0x6c
mov dl, 0x64
mov byte [esp + 0x79], cl
mov byte [esp + 0x7e], cl
mov byte [esp + 0x7f], cl
mov al, 0x65
lea ecx, [esp + 0x68]
mov byte [esp + 0x7d], dl
mov byte [esp + 0x71], dl
push ecx
lea edx, [esp + 0x78]
push edx
mov byte [esp + 0x7c], 0x6b
mov byte [esp + 0x7d], al
mov byte [esp + 0x7e], 0x72
mov byte [esp + 0x7f], 0x6e
mov byte [esp + 0x80], al
mov byte [esp + 0x82], 0x33
mov byte [esp + 0x83], 0x32
mov byte [esp + 0x84], 0x2e
mov byte [esp + 0x88], 0
mov byte [esp + 0x70], 0x4f
mov byte [esp + 0x71], 0x70
mov byte [esp + 0x72], al
mov byte [esp + 0x73], 0x6e
mov byte [esp + 0x74], 0x54
mov byte [esp + 0x75], 0x68
mov byte [esp + 0x76], 0x72
mov byte [esp + 0x77], al
mov byte [esp + 0x78], 0x61
mov byte [esp + 0x7a], 0
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov esi, eax
test esi, esi
je 0x10087d86
call fcn.1002d8c0
mov edi, eax
mov eax, dword [esp + 0x14]
push eax
push 0
push 0x40
call esi
push edi
mov esi, eax
call fcn.1002d960
add esp, 4
test esi, esi
je 0x10087d86
xor edi, edi
test edi, edi
fldz
fstp qword [esp + 0x28]
je 0x10087eca
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x44]
push edx
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x24]
push ecx
push esi
call dword [sym.imp.KERNEL32.DLL_GetProcessTimes]
jmp 0x10087ee5
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x44]
push eax
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x24]
push edx
push esi
call dword [sym.imp.KERNEL32.DLL_GetThreadTimes]
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x1c]
push ecx
call dword [sym.imp.KERNEL32.DLL_FileTimeToSystemTime]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantTimeToSystemTime]
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x5c]
push eax
call edi
push esi
call fcn.10039240
fldz
add esp, 4
fstp qword [esp + 0x20]
lea ecx, [esp + 0x48]
push ecx
call dword [sym.imp.KERNEL32.DLL_GetSystemTime]
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x4c]
push eax
call edi
fld qword [esp + 0x20]
fsub qword [esp + 0x28]
mov ecx, dword [esp + 0x10]
pop edi
pop esi
fstp qword [ecx]
mov ecx, dword [esp + 0x7c]
xor ecx, esp
mov eax, 1
call fcn.100ff704
mov esp, ebp
pop ebp
ret
Function at 0x100881a0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x18
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x14], eax
push esi
mov esi, dword [esp + 0x20]
cmp dword [esi + 0x10], 0
push edi
mov edi, dword [esp + 0x28]
jne 0x10088231
mov eax, dword [esi]
test eax, eax
je 0x10088231
mov cl, 0x69
mov byte [esp + 0xa], cl
mov byte [esp + 0x12], cl
mov byte [esp + 0x15], cl
lea ecx, [esp + 8]
mov dl, 0x6f
push ecx
push eax
mov byte [esp + 0x10], 0x53
mov byte [esp + 0x11], 0x77
mov byte [esp + 0x13], 0x74
mov byte [esp + 0x14], 0x63
mov byte [esp + 0x15], 0x68
mov byte [esp + 0x16], 0x54
mov byte [esp + 0x17], dl
mov byte [esp + 0x18], 0x54
mov byte [esp + 0x19], 0x68
mov byte [esp + 0x1b], 0x73
mov byte [esp + 0x1c], 0x57
mov byte [esp + 0x1e], 0x6e
mov byte [esp + 0x1f], 0x64
mov byte [esp + 0x20], dl
mov byte [esp + 0x21], 0x77
mov byte [esp + 0x22], 0
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov dword [esi + 0x10], eax
mov esi, dword [esi + 0x10]
test esi, esi
je 0x10088253
push 1
push edi
call esi
pop edi
mov eax, 1
pop esi
mov ecx, dword [esp + 0x14]
xor ecx, esp
call fcn.100ff704
add esp, 0x18
ret
mov ecx, dword [esp + 0x1c]
pop edi
pop esi
xor ecx, esp
xor eax, eax
call fcn.100ff704
add esp, 0x18
ret

Function at 0x10088270
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x34
mov eax, dword [0x101b629c]
xor eax, esp
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
push esi
push edi
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x44]
lea edx, [esp + 0x1c]
push edx
xor edi, edi
mov dword [esp + 0xc], 0x14
mov dword [esp + 0x14], 0xf
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov byte [esp + 0x20], 0x75
mov byte [esp + 0x21], 0x73
mov byte [esp + 0x22], 0x65
mov byte [esp + 0x23], 0x72
mov byte [esp + 0x24], 0x33
mov byte [esp + 0x25], 0x32
mov byte [esp + 0x26], 0x2e
mov byte [esp + 0x27], 0x64
mov byte [esp + 0x28], 0x6c
mov byte [esp + 0x29], 0x6c
mov byte [esp + 0x2a], 0
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov esi, eax
test esi, esi
je 0x1008835b
lea eax, [esp + 0x28]
push eax
push esi
mov byte [esp + 0x30], 0x46
mov byte [esp + 0x31], 0x6c
mov byte [esp + 0x32], 0x61
mov byte [esp + 0x33], 0x73
mov byte [esp + 0x34], 0x68
mov byte [esp + 0x35], 0x57
mov byte [esp + 0x36], 0x69
mov byte [esp + 0x37], 0x6e
mov byte [esp + 0x38], 0x64
mov byte [esp + 0x39], 0x6f
mov byte [esp + 0x3a], 0x77
mov byte [esp + 0x3b], 0x45
mov byte [esp + 0x3c], 0x78
mov byte [esp + 0x3d], 0
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
test eax, eax
je 0x10088354
lea ecx, [esp + 8]
push ecx
call eax
mov edi, 1
push esi
call dword [sym.imp.KERNEL32.DLL_FreeLibrary]
mov ecx, dword [esp + 0x38]
mov eax, edi
pop edi
pop esi
xor ecx, esp
call fcn.100ff704
add esp, 0x34
ret
Function at 0x10088700
Capabilities:
Get system information on windows

Disassembly:
sub esp, 0x70
push ebx
push esi
push edi
lea eax, [esp + 0x58]
push eax
call dword [sym.imp.KERNEL32.DLL_GetSystemInfo]
mov ebx, dword [sym.imp.KERNEL32.DLL_GetSystemTimeAsFileTime]
lea ecx, [esp + 0x20]
push ecx
call ebx
mov edi, dword [esp + 0x80]
push 0
push 0
push edi
push 0
push 0x400
call fcn.10053db0
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x1008874b
pop edi
pop esi
mov eax, 0xfa
pop ebx
add esp, 0x70
ret
push ebp
mov ebp, dword [sym.imp.KERNEL32.DLL_GetProcessTimes]
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x60]
push edx
push esi
call ebp
test eax, eax
push esi
je 0x100887eb
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], edx
call fcn.10039240
add esp, 4
push 0x3e8
call dword [sym.imp.KERNEL32.DLL_Sleep]
push 0
push 0
push edi
push 0
push 0x400
call fcn.10053db0
mov esi, eax
add esp, 0x14
test esi, esi
mov dword [esp + 0x10], esi
je 0x100887f3
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x54]
push edx
lea eax, [esp + 0x60]
push eax
push esi
call ebp
test eax, eax
jne 0x10088800
push esi
call fcn.10039240
add esp, 4
pop ebp
pop edi
pop esi
mov eax, 0xfa
pop ebx
add esp, 0x70
ret
lea ecx, [esp + 0x24]
push ecx
call ebx
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x28]
push ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
call fcn.10039240
mov eax, dword [esp + 0x74]
add esp, 4
add esi, dword [esp + 0x2c]
cdq
adc edi, dword [esp + 0x30]
push edx
push eax
push edi
push esi
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
call fcn.10101b10
mov ecx, dword [esp + 0x38]
mov esi, eax
mov eax, dword [esp + 0x34]
add eax, dword [esp + 0x3c]
mov edi, edx
mov edx, dword [esp + 0x28]
adc ecx, dword [esp + 0x40]
push edx
mov edx, dword [esp + 0x28]
push edx
push ecx
push eax
call fcn.10101b10
fnstcw word [esp + 0x10]
sub esi, eax
sbb edi, edx
sub ebx, dword [esp + 0x44]
mov dword [esp + 0x3c], esi
sbb ebp, dword [esp + 0x48]
mov dword [esp + 0x40], edi
fild qword [esp + 0x3c]
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebp
fild qword [esp + 0x44]
movzx eax, word [esp + 0x10]
or eax, 0xc00
mov dword [esp + 0x14], eax
fdivp st(1)
pop ebp
pop edi
pop esi
pop ebx
fmul qword [0x1016a938]
fldcw word [esp + 4]
fistp qword [esp + 0x44]
mov eax, dword [esp + 0x44]
fldcw word [esp]
add esp, 0x70
ret