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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x810
push ebx
push esi
mov esi, dword [sym.imp.USER32.dll_FindWindowA]
push edi
mov edi, str.Hello_World
push edi
xor ebx, ebx
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push ebx
push ebx
push 2
push ebx
push 1
push 0x40000000
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
mov dword [ebp - 4], eax
je 0x100045c9
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [ebp + 0x10]
mov eax, 0x800
cmp ecx, eax
mov dword [ebp - 8], ecx
jb 0x10004475
mov dword [ebp - 8], eax
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push ebx
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
lea eax, [ebp - 0x810]
push eax
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_ReadFile]
push ebx
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0xc]
lea eax, [ebp - 0x810]
push eax
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, dword [ebp - 0xc]
sub dword [ebp + 0x10], eax
cmp eax, 0x800
je 0x10004463
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push ebx
call esi
push ebx
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp + 0x10], ebx
jne 0x100045c9
xor eax, eax
inc eax
jmp 0x100045cb
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret