Function at 0x447b60
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x508
push ebx
push edi
mov ecx, 0xe6
xor eax, eax
lea edi, [esp + 0x178]
xor ebx, ebx
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x524]
mov ecx, dword [esp + 0x528]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], ecx
mov ecx, 0xa
xor eax, eax
lea edi, [esp + 0x10]
mov dword [esp + 8], 1
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x52c]
mov dword [esp + 0x178], 0x898a
cmp eax, ebx
mov dword [esp + 0x10], 0x899e
jne 0x447bd4
pop edi
xor eax, eax
pop ebx
add esp, 0x508
ret
mov eax, dword [esp + 0x518]
push ebp
lea edx, [esp + 0x3c]
push esi
push edx
push eax
mov dword [esp + 0x1c], ebx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov edi, eax
cmp edi, ebx
je 0x447bf8
cmp edi, 0xffffffff
jne 0x447c13
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp edi, 0xffffffff
mov dword [esp + 0x184], eax
jne 0x447c13
mov dword [esp + 0x10], ebx
jmp 0x448055
cmp edi, ebx
je 0x447c23
cmp edi, 0xffffffff
je 0x447c23
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ebp, dword [esp + 0x51c]
mov ecx, ebp
call fcn.00408650
test eax, eax
jne 0x447c46
pop esi
pop ebp
mov dword [esp + 8], ebx
mov eax, ebx
pop edi
pop ebx
add esp, 0x508
ret
mov ecx, 0x50
lea esi, [esp + 0x40]
lea edi, [esp + 0x294]
push ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
call fcn.00411b60
cmp dword [esp + 0x524], ebx
je 0x447d13
mov edx, dword [esp + 0x528]
mov eax, dword [esp + 0x520]
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x447c94
sub edx, eax
cmp cl, bl
je 0x447c94
cmp byte [eax], bl
je 0x447cae
mov cl, byte [edx + eax + 1]
inc eax
cmp cl, byte [eax]
je 0x447c83
cmp byte [eax], bl
je 0x447cae
push 0x104
lea ecx, [esp + 0x194]
push eax
push ecx
call fcn.0042f1a0
add esp, 0xc
test byte [esp + 0x40], 0x10
jne 0x447d13
lea edx, [esp + 0x6c]
lea eax, [esp + 0x190]
push edx
push eax
call fcn.00452b10
add esp, 8
test eax, eax
je 0x447d13
lea ecx, [esp + 0x190]
push 0x4695f4
push ecx
call fcn.00452b10
add esp, 8
test eax, eax
je 0x447d13
lea edx, [esp + 0x190]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov cl, byte [esp + eax + 0x18f]
lea eax, [esp + eax + 0x18f]
cmp cl, 0x5c
je 0x447d11
mov cl, byte [eax - 1]
dec eax
cmp cl, 0x5c
jne 0x447d08
mov byte [eax], bl
lea eax, [esp + 0x180]
push 0x398
push eax
mov ecx, ebp
call fcn.00411a90
test eax, eax
jne 0x447d3c
pop esi
pop ebp
mov dword [esp + 8], ebx
mov eax, ebx
pop edi
pop ebx
add esp, 0x508
ret
mov eax, dword [ebp + 0x5294]
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
xor esi, esi
cmp eax, ebx
jne 0x447d7a
cmp dword [ebp + 0x2074], ebx
je 0x447dee
push 0x14
call edi
cmp dword [ebp + 0x5010], ebx
jne 0x447d72
mov eax, dword [0x482c90]
mov ecx, esi
inc esi
cmp ecx, eax
jg 0x447dee
cmp dword [ebp + 0x5294], ebx
je 0x447d4e
cmp dword [ebp + 0x529c], ebx
je 0x447d93
pop esi
pop ebp
mov dword [esp + 8], ebx
mov eax, ebx
pop edi
pop ebx
add esp, 0x508
ret
mov eax, dword [ebp + 0x5010]
cmp eax, ebx
je 0x447de6
cmp eax, 0xb7
je 0x447dc7
cmp eax, 0x50
je 0x447dc7
mov eax, dword [ebp + 0x5298]
xor edx, edx
cmp eax, ebx
pop esi
setne dl
pop ebp
pop edi
mov dword [esp + 4], edx
mov eax, edx
pop ebx
add esp, 0x508
ret
cmp dword [ebp + 0x5298], ebx
jne 0x447dff
pop esi
mov dword [esp + 0xc], 1
mov eax, dword [esp + 0xc]
pop ebp
pop edi
pop ebx
add esp, 0x508
ret
cmp dword [ebp + 0x5298], ebx
jne 0x447dff
pop esi
pop ebp
mov dword [esp + 8], ebx
mov eax, ebx
pop edi
pop ebx
add esp, 0x508
ret
test byte [esp + 0x40], 0x10
je 0x447e1d
pop esi
mov dword [esp + 0xc], 1
mov eax, dword [esp + 0xc]
pop ebp
pop edi
pop ebx
add esp, 0x508
ret
mov eax, dword [esp + 0x520]
push ebx
push ebx
push 3
push ebx
push 1
push accept
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, eax
cmp edi, ebx
je 0x447fbb
cmp edi, 0xffffffff
je 0x447fbb
push ebx
push ebx
push ebx
call fcn.00435640
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 0xc
mov dword [esp + 0x3c], eax
push ebx
call esi
cmp dword [ebp + 0x529c], ebx
jne 0x447f5d
mov edx, dword [esp + 0x53c]
mov eax, dword [esp + 0x534]
lea ecx, [esp + 0x14]
push ebx
push ecx
push edx
push eax
push edi
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x447f6a
mov eax, dword [esp + 0x14]
mov dword [esp + 0x2c], ebx
cmp eax, ebx
mov esi, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], ebx
je 0x447ecd
mov ecx, dword [esp + 0x534]
mov edx, dword [esp + 0x3c]
push eax
push ecx
push edx
mov dword [esp + 0x40], ebx
call fcn.00435640
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x20]
add esp, 0xc
jmp 0x447edd
mov dword [esp + 0x34], 1
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], ebx
cmp dword [ebp + 0x5744], ebx
je 0x447f0d
push eax
mov ecx, ebp
call fcn.0040d290
mov edx, dword [esp + 0x534]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x2c]
mov dword [esp + 0x2c], eax
push ecx
push edx
mov ecx, ebp
call fcn.0040ce70
mov esi, dword [esp + 0x2c]
lea eax, [esp + 0x18]
push 0x28
push eax
mov ecx, ebp
mov dword [esp + 0x28], ebx
call fcn.00411a90
test eax, eax
je 0x447fdc
cmp dword [esp + 0x14], ebx
je 0x447f45
mov ecx, dword [esp + 0x534]
push esi
push ecx
mov ecx, ebp
call fcn.00411a90
test eax, eax
je 0x447fdc
cmp dword [esp + 0x34], ebx
jne 0x448051
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
call esi
jmp 0x447e5f
mov dword [esp + 0x10], 1
jmp 0x448051
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
mov dword [esp + 0x20], eax
jne 0x447f80
mov dword [esp + 0x20], 0x1e
mov ecx, ebp
call fcn.00408650
test eax, eax
jne 0x447f94
mov dword [esp + 0x10], ebx
jmp 0x448051
push ebx
mov ecx, ebp
call fcn.00411b60
lea edx, [esp + 0x18]
push 0x28
push edx
mov ecx, ebp
call fcn.00411a90
test eax, eax
jne 0x448051
mov dword [esp + 0x10], ebx
jmp 0x448051
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
mov dword [esp + 0x20], eax
jne 0x447fd1
mov dword [esp + 0x20], 2
mov ecx, ebp
call fcn.00408650
test eax, eax
jne 0x447fe2
mov dword [esp + 0x10], ebx
jmp 0x448051
push ebx
mov ecx, ebp
call fcn.00411b60
lea eax, [esp + 0x18]
push 0x28
push eax
mov ecx, ebp
call fcn.00411a90
test eax, eax
jne 0x448002
mov dword [esp + 0x10], ebx
jmp 0x448051
mov eax, dword [ebp + 0x5294]
xor esi, esi
cmp eax, ebx
jne 0x448032
cmp dword [ebp + 0x2074], ebx
je 0x447fdc
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x482c90]
mov ecx, esi
inc esi
cmp ecx, eax
jg 0x447fdc
cmp dword [ebp + 0x5294], ebx
je 0x44800e
cmp dword [ebp + 0x529c], ebx
je 0x448040
mov dword [esp + 0x10], ebx
jmp 0x448051
mov eax, dword [ebp + 0x5298]
xor edx, edx
cmp eax, ebx
setne dl
mov dword [esp + 0x10], edx
cmp edi, ebx
je 0x44805c
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esp + 0x10]
pop esi
pop ebp
pop edi
pop ebx
add esp, 0x508
ret