Function at 0x40e9b0
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x467f8f
mov eax, dword fs:[0]
push eax
sub esp, 0x428
mov eax, dword [0x48706c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x414], ebx
mov dword [ebp - 0x418], ebx
mov dword [ebp - 0x434], ebx
lea eax, [ebp + 8]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebx + 4]
mov dword [ebx], vtable.Exploit.0
call fcn.00403fc0
mov eax, dword [ebp + 0x20]
lea edi, [ebx + 0x28]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp + 0x24]
mov dword [ebx + 0x20], eax
mov al, byte [ebp + 0x28]
mov byte [ebx + 0x24], al
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
sub esp, 0x18
mov byte [ebp - 4], 2
mov ecx, esp
push 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
push 0x47a2d9
mov byte [ecx], 0
call fcn.00405f60
lea ecx, [ebp - 0x430]
call fcn.00417b00
add esp, 0x18
mov ecx, edi
push eax
call fcn.00403ec0
mov edx, dword [ebp - 0x41c]
cmp edx, 0x10
jb 0x40eaa7
mov ecx, dword [ebp - 0x430]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40ea9d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40ed1f
push edx
push ecx
call fcn.0042bb0b
add esp, 8
mov eax, dword [ebx + 0x1c]
lea ecx, [ebp - 0x430]
mov esi, dword [ebx + 0x20]
push edi
mov dword [ebp - 0x418], eax
call fcn.00403fc0
push 0x48a7c0
mov byte [ebp - 4], 3
call fcn.0042a854
add esp, 4
test eax, eax
je 0x40eadd
push eax
call fcn.0042a3d4
add esp, 4
push 0x400
lea eax, [ebp - 0x410]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
jne 0x40eb56
push 0x48a7c0
mov byte [ebp - 4], 4
call fcn.0042a879
add esp, 4
test eax, eax
je 0x40eb13
push eax
call fcn.0042a3d4
add esp, 4
mov edx, dword [ebp - 0x41c]
cmp edx, 0x10
jb 0x40eccf
mov ecx, dword [ebp - 0x430]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40eb47
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40ed24
push edx
push ecx
call fcn.0042bb0b
add esp, 8
jmp 0x40eccf
lea eax, [ebp - 0x410]
push 0x47b39c
push eax
call fcn.0044b7c1
cmp dword [ebp - 0x41c], 0x10
lea ecx, [ebp - 0x430]
push 0x47b3a0
cmovae ecx, dword [ebp - 0x430]
mov edi, eax
push ecx
call fcn.0044b7c1
add esp, 0x10
mov ebx, eax
test edi, edi
je 0x40ec75
test ebx, ebx
je 0x40ec75
push 0
push dword [ebp - 0x418]
push edi
call fcn.0044aaab
add esp, 0xc
test eax, eax
je 0x40ec0d
push 0x48a7c0
mov byte [ebp - 4], 6
call fcn.0042a879
add esp, 4
test eax, eax
je 0x40ebd0
push eax
call fcn.0042a3d4
add esp, 4
mov edx, dword [ebp - 0x41c]
cmp edx, 0x10
jb 0x40ecc9
mov ecx, dword [ebp - 0x430]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40ecbf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40ed29
jmp 0x40ecbf
test esi, esi
je 0x40ec4b
mov eax, 0x400
cmp esi, eax
push edi
cmovb eax, esi
push eax
lea eax, [ebp - 0x410]
push 1
push eax
call fcn.0044a6a5
add esp, 0x10
test eax, eax
je 0x40ec4b
push ebx
push eax
sub esi, eax
lea eax, [ebp - 0x410]
push 1
push eax
call fcn.00449ec1
add esp, 0x10
test esi, esi
jne 0x40ec11
push edi
call fcn.00446ba3
push ebx
call fcn.00446ba3
push 0x48a7c0
mov byte [ebp - 4], 7
call fcn.0042a879
add esp, 0xc
test eax, eax
je 0x40ebd0
jmp 0x40ebc7
push 0x48a7c0
mov byte [ebp - 4], 5
call fcn.0042a879
add esp, 4
test eax, eax
je 0x40ec93
push eax
call fcn.0042a3d4
add esp, 4
mov edx, dword [ebp - 0x41c]
cmp edx, 0x10
jb 0x40ecc9
mov ecx, dword [ebp - 0x430]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40ecbf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40ed29
push edx
push ecx
call fcn.0042bb0b
add esp, 8
mov ebx, dword [ebp - 0x414]
mov edx, dword [ebp + 0x1c]
cmp edx, 0x10
jb 0x40ecff
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40ecf5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40ed29
push edx
push ecx
call fcn.0042bb0b
add esp, 8
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042bac5
mov esp, ebp
pop ebp
ret 0x24
call fcn.0044acd1
call fcn.0044acd1
call fcn.0044acd1
int3