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

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
push ebx
dec eax
push esi
cmp eax, 8
push edi
ja case.default.0x748312
jmp dword [eax*4 + 0x748508]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 1
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 2
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 4
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov eax, dword [esp + 0x14]
push ebp
lea ecx, [esp + 0x1c]
push 0
push ecx
lea edx, [esp + 0x18]
push 4
push edx
push eax
mov dword [esp + 0x24], 0
call dword [sym.imp.kernel32.dll_ReadFile]
mov edi, 0x870c08
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x20]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
mov ecx, ebx
push ebp
call fcn.00401b40
test al, al
je 0x7483ef
mov edi, dword [ebx + 4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x870c08
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ebp
mov byte [eax + ebp], 0
mov esi, dword [esp + 0x10]
pop ebp
test esi, esi
jle 0x7484f0
cmp esi, 0xffffffff
jne 0x748406
call fcn.007a02eb
mov ecx, ebx
call fcn.00405090
cmp eax, esi
jae 0x748416
call fcn.007a02eb
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x74843b
mov al, byte [ecx - 1]
test al, al
je 0x74843b
cmp al, 0xff
je 0x74843b
test esi, esi
jne 0x74845f
dec al
push esi
mov byte [ecx - 1], al
mov ecx, ebx
call fcn.00404e60
jmp 0x748489
test esi, esi
jne 0x74844a
push 1
mov ecx, ebx
call fcn.00404e60
jmp 0x748489
mov eax, dword [ebx + 0xc]
cmp eax, 0x1f
ja 0x748456
cmp eax, esi
jae 0x748467
push 1
mov ecx, ebx
call fcn.00404e60
push esi
mov ecx, ebx
call fcn.00401c60
mov edi, dword [ebx + 4]
mov ecx, esi
mov edx, ecx
mov eax, 0x20202020
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx + 4]
mov dword [ebx + 8], esi
mov byte [eax + esi], 0
mov eax, dword [ebx + 4]
test eax, eax
je 0x7484b8
mov al, byte [eax - 1]
test al, al
je 0x7484a8
cmp al, 0xff
je 0x7484a8
mov ecx, dword [ebx + 8]
push 0
push ecx
mov ecx, ebx
call fcn.00401b40
mov eax, dword [ebx + 4]
test eax, eax
je 0x7484b3
mov byte [eax - 1], 0xff
mov ebx, dword [ebx + 4]
jmp 0x7484bd
mov ebx, 0x7e5658
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x18]
push 0
push edx
push eax
push ebx
jmp 0x7484e5
lea edx, [esp + 0x18]
push 0
push edx
push 4
jmp 0x7484e0
lea edx, [esp + 0x18]
push 0
push edx
push 8
mov eax, dword [esp + 0x28]
push eax
mov ecx, dword [esp + 0x24]
push ecx
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
pop edi
pop esi
xor eax, eax
pop ebx
pop ecx
ret 0xc
Function at 0x748780
Capabilities:
Read file on windows

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
push ebx
dec eax
push esi
cmp eax, 8
push edi
ja case.default.0x748792
jmp dword [eax*4 + 0x748988]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 1
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 2
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 4
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov eax, dword [esp + 0x14]
push ebp
lea ecx, [esp + 0x1c]
push 0
push ecx
lea edx, [esp + 0x18]
push 4
push edx
push eax
mov dword [esp + 0x24], 0
call dword [sym.imp.kernel32.dll_ReadFile]
mov edi, 0x870c08
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x20]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
mov ecx, ebx
push ebp
call fcn.00401b40
test al, al
je 0x74886f
mov edi, dword [ebx + 4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x870c08
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ebp
mov byte [eax + ebp], 0
mov esi, dword [esp + 0x10]
pop ebp
test esi, esi
jle 0x748970
cmp esi, 0xffffffff
jne 0x748886
call fcn.007a02eb
mov ecx, ebx
call fcn.00405090
cmp eax, esi
jae 0x748896
call fcn.007a02eb
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x7488bb
mov al, byte [ecx - 1]
test al, al
je 0x7488bb
cmp al, 0xff
je 0x7488bb
test esi, esi
jne 0x7488df
dec al
push esi
mov byte [ecx - 1], al
mov ecx, ebx
call fcn.00404e60
jmp 0x748909
test esi, esi
jne 0x7488ca
push 1
mov ecx, ebx
call fcn.00404e60
jmp 0x748909
mov eax, dword [ebx + 0xc]
cmp eax, 0x1f
ja 0x7488d6
cmp eax, esi
jae 0x7488e7
push 1
mov ecx, ebx
call fcn.00404e60
push esi
mov ecx, ebx
call fcn.00401c60
mov edi, dword [ebx + 4]
mov ecx, esi
mov edx, ecx
mov eax, 0x20202020
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx + 4]
mov dword [ebx + 8], esi
mov byte [eax + esi], 0
mov eax, dword [ebx + 4]
test eax, eax
je 0x748938
mov al, byte [eax - 1]
test al, al
je 0x748928
cmp al, 0xff
je 0x748928
mov ecx, dword [ebx + 8]
push 0
push ecx
mov ecx, ebx
call fcn.00401b40
mov eax, dword [ebx + 4]
test eax, eax
je 0x748933
mov byte [eax - 1], 0xff
mov ebx, dword [ebx + 4]
jmp 0x74893d
mov ebx, 0x7e5658
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x18]
push 0
push edx
push eax
push ebx
jmp 0x748965
lea edx, [esp + 0x18]
push 0
push edx
push 4
jmp 0x748960
lea edx, [esp + 0x18]
push 0
push edx
push 8
mov eax, dword [esp + 0x28]
push eax
mov ecx, dword [esp + 0x24]
push ecx
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
pop edi
pop esi
xor eax, eax
pop ebx
pop ecx
ret 0xc
Function at 0x748c00
Capabilities:
Read file on windows

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
push ebx
dec eax
push esi
cmp eax, 8
push edi
ja case.default.0x748c12
jmp dword [eax*4 + 0x748e08]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 1
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 2
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 4
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov eax, dword [esp + 0x14]
push ebp
lea ecx, [esp + 0x1c]
push 0
push ecx
lea edx, [esp + 0x18]
push 4
push edx
push eax
mov dword [esp + 0x24], 0
call dword [sym.imp.kernel32.dll_ReadFile]
mov edi, 0x870c08
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x20]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
mov ecx, ebx
push ebp
call fcn.00401b40
test al, al
je 0x748cef
mov edi, dword [ebx + 4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x870c08
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ebp
mov byte [eax + ebp], 0
mov esi, dword [esp + 0x10]
pop ebp
test esi, esi
jle 0x748df0
cmp esi, 0xffffffff
jne 0x748d06
call fcn.007a02eb
mov ecx, ebx
call fcn.00405090
cmp eax, esi
jae 0x748d16
call fcn.007a02eb
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x748d3b
mov al, byte [ecx - 1]
test al, al
je 0x748d3b
cmp al, 0xff
je 0x748d3b
test esi, esi
jne 0x748d5f
dec al
push esi
mov byte [ecx - 1], al
mov ecx, ebx
call fcn.00404e60
jmp 0x748d89
test esi, esi
jne 0x748d4a
push 1
mov ecx, ebx
call fcn.00404e60
jmp 0x748d89
mov eax, dword [ebx + 0xc]
cmp eax, 0x1f
ja 0x748d56
cmp eax, esi
jae 0x748d67
push 1
mov ecx, ebx
call fcn.00404e60
push esi
mov ecx, ebx
call fcn.00401c60
mov edi, dword [ebx + 4]
mov ecx, esi
mov edx, ecx
mov eax, 0x20202020
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx + 4]
mov dword [ebx + 8], esi
mov byte [eax + esi], 0
mov eax, dword [ebx + 4]
test eax, eax
je 0x748db8
mov al, byte [eax - 1]
test al, al
je 0x748da8
cmp al, 0xff
je 0x748da8
mov ecx, dword [ebx + 8]
push 0
push ecx
mov ecx, ebx
call fcn.00401b40
mov eax, dword [ebx + 4]
test eax, eax
je 0x748db3
mov byte [eax - 1], 0xff
mov ebx, dword [ebx + 4]
jmp 0x748dbd
mov ebx, 0x7e5658
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x18]
push 0
push edx
push eax
push ebx
jmp 0x748de5
lea edx, [esp + 0x18]
push 0
push edx
push 4
jmp 0x748de0
lea edx, [esp + 0x18]
push 0
push edx
push 8
mov eax, dword [esp + 0x28]
push eax
mov ecx, dword [esp + 0x24]
push ecx
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
pop edi
pop esi
xor eax, eax
pop ebx
pop ecx
ret 0xc
Function at 0x749080
Capabilities:
Read file on windows

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
push ebx
dec eax
push esi
cmp eax, 8
push edi
ja case.default.0x749092
jmp dword [eax*4 + 0x749288]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 1
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 2
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 4
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov eax, dword [esp + 0x14]
push ebp
lea ecx, [esp + 0x1c]
push 0
push ecx
lea edx, [esp + 0x18]
push 4
push edx
push eax
mov dword [esp + 0x24], 0
call dword [sym.imp.kernel32.dll_ReadFile]
mov edi, 0x870c08
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x20]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
mov ecx, ebx
push ebp
call fcn.00401b40
test al, al
je 0x74916f
mov edi, dword [ebx + 4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x870c08
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ebp
mov byte [eax + ebp], 0
mov esi, dword [esp + 0x10]
pop ebp
test esi, esi
jle 0x749270
cmp esi, 0xffffffff
jne 0x749186
call fcn.007a02eb
mov ecx, ebx
call fcn.00405090
cmp eax, esi
jae 0x749196
call fcn.007a02eb
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x7491bb
mov al, byte [ecx - 1]
test al, al
je 0x7491bb
cmp al, 0xff
je 0x7491bb
test esi, esi
jne 0x7491df
dec al
push esi
mov byte [ecx - 1], al
mov ecx, ebx
call fcn.00404e60
jmp 0x749209
test esi, esi
jne 0x7491ca
push 1
mov ecx, ebx
call fcn.00404e60
jmp 0x749209
mov eax, dword [ebx + 0xc]
cmp eax, 0x1f
ja 0x7491d6
cmp eax, esi
jae 0x7491e7
push 1
mov ecx, ebx
call fcn.00404e60
push esi
mov ecx, ebx
call fcn.00401c60
mov edi, dword [ebx + 4]
mov ecx, esi
mov edx, ecx
mov eax, 0x20202020
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx + 4]
mov dword [ebx + 8], esi
mov byte [eax + esi], 0
mov eax, dword [ebx + 4]
test eax, eax
je 0x749238
mov al, byte [eax - 1]
test al, al
je 0x749228
cmp al, 0xff
je 0x749228
mov ecx, dword [ebx + 8]
push 0
push ecx
mov ecx, ebx
call fcn.00401b40
mov eax, dword [ebx + 4]
test eax, eax
je 0x749233
mov byte [eax - 1], 0xff
mov ebx, dword [ebx + 4]
jmp 0x74923d
mov ebx, 0x7e5658
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x18]
push 0
push edx
push eax
push ebx
jmp 0x749265
lea edx, [esp + 0x18]
push 0
push edx
push 4
jmp 0x749260
lea edx, [esp + 0x18]
push 0
push edx
push 8
mov eax, dword [esp + 0x28]
push eax
mov ecx, dword [esp + 0x24]
push ecx
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
pop edi
pop esi
xor eax, eax
pop ebx
pop ecx
ret 0xc
Function at 0x749500
Capabilities:
Read file on windows

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
push ebx
dec eax
push esi
cmp eax, 8
push edi
ja case.default.0x749512
jmp dword [eax*4 + 0x749708]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 1
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 2
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 4
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov eax, dword [esp + 0x14]
push ebp
lea ecx, [esp + 0x1c]
push 0
push ecx
lea edx, [esp + 0x18]
push 4
push edx
push eax
mov dword [esp + 0x24], 0
call dword [sym.imp.kernel32.dll_ReadFile]
mov edi, 0x870c08
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x20]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
mov ecx, ebx
push ebp
call fcn.00401b40
test al, al
je 0x7495ef
mov edi, dword [ebx + 4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x870c08
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ebp
mov byte [eax + ebp], 0
mov esi, dword [esp + 0x10]
pop ebp
test esi, esi
jle 0x7496f0
cmp esi, 0xffffffff
jne 0x749606
call fcn.007a02eb
mov ecx, ebx
call fcn.00405090
cmp eax, esi
jae 0x749616
call fcn.007a02eb
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x74963b
mov al, byte [ecx - 1]
test al, al
je 0x74963b
cmp al, 0xff
je 0x74963b
test esi, esi
jne 0x74965f
dec al
push esi
mov byte [ecx - 1], al
mov ecx, ebx
call fcn.00404e60
jmp 0x749689
test esi, esi
jne 0x74964a
push 1
mov ecx, ebx
call fcn.00404e60
jmp 0x749689
mov eax, dword [ebx + 0xc]
cmp eax, 0x1f
ja 0x749656
cmp eax, esi
jae 0x749667
push 1
mov ecx, ebx
call fcn.00404e60
push esi
mov ecx, ebx
call fcn.00401c60
mov edi, dword [ebx + 4]
mov ecx, esi
mov edx, ecx
mov eax, 0x20202020
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx + 4]
mov dword [ebx + 8], esi
mov byte [eax + esi], 0
mov eax, dword [ebx + 4]
test eax, eax
je 0x7496b8
mov al, byte [eax - 1]
test al, al
je 0x7496a8
cmp al, 0xff
je 0x7496a8
mov ecx, dword [ebx + 8]
push 0
push ecx
mov ecx, ebx
call fcn.00401b40
mov eax, dword [ebx + 4]
test eax, eax
je 0x7496b3
mov byte [eax - 1], 0xff
mov ebx, dword [ebx + 4]
jmp 0x7496bd
mov ebx, 0x7e5658
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x18]
push 0
push edx
push eax
push ebx
jmp 0x7496e5
lea edx, [esp + 0x18]
push 0
push edx
push 4
jmp 0x7496e0
lea edx, [esp + 0x18]
push 0
push edx
push 8
mov eax, dword [esp + 0x28]
push eax
mov ecx, dword [esp + 0x24]
push ecx
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
pop edi
pop esi
xor eax, eax
pop ebx
pop ecx
ret 0xc
Function at 0x749980
Capabilities:
Read file on windows

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
push ebx
dec eax
push esi
cmp eax, 8
push edi
ja case.default.0x749992
jmp dword [eax*4 + 0x749b88]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 1
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 2
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 4
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov eax, dword [esp + 0x14]
push ebp
lea ecx, [esp + 0x1c]
push 0
push ecx
lea edx, [esp + 0x18]
push 4
push edx
push eax
mov dword [esp + 0x24], 0
call dword [sym.imp.kernel32.dll_ReadFile]
mov edi, 0x870c08
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x20]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
mov ecx, ebx
push ebp
call fcn.00401b40
test al, al
je 0x749a6f
mov edi, dword [ebx + 4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x870c08
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ebp
mov byte [eax + ebp], 0
mov esi, dword [esp + 0x10]
pop ebp
test esi, esi
jle 0x749b70
cmp esi, 0xffffffff
jne 0x749a86
call fcn.007a02eb
mov ecx, ebx
call fcn.00405090
cmp eax, esi
jae 0x749a96
call fcn.007a02eb
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x749abb
mov al, byte [ecx - 1]
test al, al
je 0x749abb
cmp al, 0xff
je 0x749abb
test esi, esi
jne 0x749adf
dec al
push esi
mov byte [ecx - 1], al
mov ecx, ebx
call fcn.00404e60
jmp 0x749b09
test esi, esi
jne 0x749aca
push 1
mov ecx, ebx
call fcn.00404e60
jmp 0x749b09
mov eax, dword [ebx + 0xc]
cmp eax, 0x1f
ja 0x749ad6
cmp eax, esi
jae 0x749ae7
push 1
mov ecx, ebx
call fcn.00404e60
push esi
mov ecx, ebx
call fcn.00401c60
mov edi, dword [ebx + 4]
mov ecx, esi
mov edx, ecx
mov eax, 0x20202020
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx + 4]
mov dword [ebx + 8], esi
mov byte [eax + esi], 0
mov eax, dword [ebx + 4]
test eax, eax
je 0x749b38
mov al, byte [eax - 1]
test al, al
je 0x749b28
cmp al, 0xff
je 0x749b28
mov ecx, dword [ebx + 8]
push 0
push ecx
mov ecx, ebx
call fcn.00401b40
mov eax, dword [ebx + 4]
test eax, eax
je 0x749b33
mov byte [eax - 1], 0xff
mov ebx, dword [ebx + 4]
jmp 0x749b3d
mov ebx, 0x7e5658
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x18]
push 0
push edx
push eax
push ebx
jmp 0x749b65
lea edx, [esp + 0x18]
push 0
push edx
push 4
jmp 0x749b60
lea edx, [esp + 0x18]
push 0
push edx
push 8
mov eax, dword [esp + 0x28]
push eax
mov ecx, dword [esp + 0x24]
push ecx
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
pop edi
pop esi
xor eax, eax
pop ebx
pop ecx
ret 0xc
Function at 0x749e00
Capabilities:
Read file on windows

Disassembly:
push ecx
mov eax, dword [esp + 0xc]
push ebx
dec eax
push esi
cmp eax, 8
push edi
ja case.default.0x749e12
jmp dword [eax*4 + 0x74a008]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 1
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 2
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push 0
push ecx
push 4
push edx
push eax
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
mov eax, dword [esp + 0x14]
push ebp
lea ecx, [esp + 0x1c]
push 0
push ecx
lea edx, [esp + 0x18]
push 4
push edx
push eax
mov dword [esp + 0x24], 0
call dword [sym.imp.kernel32.dll_ReadFile]
mov edi, 0x870c08
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x20]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
mov ecx, ebx
push ebp
call fcn.00401b40
test al, al
je 0x749eef
mov edi, dword [ebx + 4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x870c08
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ebp
mov byte [eax + ebp], 0
mov esi, dword [esp + 0x10]
pop ebp
test esi, esi
jle 0x749ff0
cmp esi, 0xffffffff
jne 0x749f06
call fcn.007a02eb
mov ecx, ebx
call fcn.00405090
cmp eax, esi
jae 0x749f16
call fcn.007a02eb
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x749f3b
mov al, byte [ecx - 1]
test al, al
je 0x749f3b
cmp al, 0xff
je 0x749f3b
test esi, esi
jne 0x749f5f
dec al
push esi
mov byte [ecx - 1], al
mov ecx, ebx
call fcn.00404e60
jmp 0x749f89
test esi, esi
jne 0x749f4a
push 1
mov ecx, ebx
call fcn.00404e60
jmp 0x749f89
mov eax, dword [ebx + 0xc]
cmp eax, 0x1f
ja 0x749f56
cmp eax, esi
jae 0x749f67
push 1
mov ecx, ebx
call fcn.00404e60
push esi
mov ecx, ebx
call fcn.00401c60
mov edi, dword [ebx + 4]
mov ecx, esi
mov edx, ecx
mov eax, 0x20202020
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx + 4]
mov dword [ebx + 8], esi
mov byte [eax + esi], 0
mov eax, dword [ebx + 4]
test eax, eax
je 0x749fb8
mov al, byte [eax - 1]
test al, al
je 0x749fa8
cmp al, 0xff
je 0x749fa8
mov ecx, dword [ebx + 8]
push 0
push ecx
mov ecx, ebx
call fcn.00401b40
mov eax, dword [ebx + 4]
test eax, eax
je 0x749fb3
mov byte [eax - 1], 0xff
mov ebx, dword [ebx + 4]
jmp 0x749fbd
mov ebx, 0x7e5658
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x18]
push 0
push edx
push eax
push ebx
jmp 0x749fe5
lea edx, [esp + 0x18]
push 0
push edx
push 4
jmp 0x749fe0
lea edx, [esp + 0x18]
push 0
push edx
push 8
mov eax, dword [esp + 0x28]
push eax
mov ecx, dword [esp + 0x24]
push ecx
call dword [sym.imp.kernel32.dll_ReadFile]
pop edi
pop esi
mov eax, 1
pop ebx
pop ecx
ret 0xc
pop edi
pop esi
xor eax, eax
pop ebx
pop ecx
ret 0xc