Function at 0x1000234d
Capabilities:
Check if file exists
Get file attributes
Get file size
Write file on windows

Disassembly:
push ebp
lea ebp, [esp - 0xd8]
sub esp, 0x158
mov eax, dword [0x1002b0a0]
xor eax, ebp
mov dword [ebp + 0xd4], eax
mov eax, dword [ebp + 0xe4]
push ebx
mov ebx, dword [ebp + 0xe0]
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp + 0xe8]
push ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], eax
call edi
cmp eax, 0xffffffff
je 0x10002706
xor esi, esi
cmp dword [ebp - 0x70], esi
je 0x100023ad
push dword [ebp - 0x70]
call edi
cmp eax, 0xffffffff
je 0x10002706
push esi
push esi
push 3
push esi
push 1
mov edi, connect
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x64], eax
cmp eax, 0xffffffff
je 0x10002706
mov ebx, dword [sym.imp.KERNEL32.dll_GetFileSize]
push esi
push eax
call ebx
push dword [ebp - 0x64]
mov dword [ebp - 0x68], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x70], esi
je 0x10002412
push esi
push esi
push 3
push esi
push 1
push edi
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, eax
cmp edi, 0xffffffff
je 0x10002706
push esi
push edi
call ebx
add dword [ebp - 0x68], eax
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x68]
push esi
push dword [ebp - 0x74]
add eax, eax
mov dword [ebp - 0x68], eax
call fcn.1000bea2
mov edi, eax
pop ecx
pop ecx
cmp edi, esi
jne 0x10002435
mov eax, 0x800
jmp 0x1000270b
push esi
push dword [ebp - 0x68]
push esi
call fcn.1000e800
add esp, 0xc
mov dword [ebp - 0x5c], eax
cmp eax, esi
jne 0x1000246c
push edi
call fcn.1000a453
pop ecx
push edi
test al, al
je 0x1000245c
call fcn.1000bf0c
jmp 0x10002461
call fcn.1000f96a
pop ecx
mov eax, 0x400
jmp 0x1000270b
lea eax, [ebp - 0x58]
push eax
push 0xffffffffffffffff
push edi
mov dword [ebp - 0x60], esi
call fcn.1000a414
mov ebx, eax
mov eax, dword [ebp - 0x58]
add esp, 0xc
mov dword [ebp - 0x7c], eax
cmp ebx, esi
je 0x100024c7
push edi
call fcn.1000a453
pop ecx
push edi
test al, al
je 0x1000249d
call fcn.1000bf0c
jmp 0x100024a2
call fcn.1000f96a
pop ecx
push dword [ebp - 0x5c]
call fcn.1000a453
pop ecx
push dword [ebp - 0x5c]
test al, al
je 0x100024ba
call fcn.1000bf0c
jmp 0x100024bf
call fcn.1000f96a
pop ecx
mov eax, ebx
jmp 0x1000270b
cmp eax, esi
mov dword [ebp - 0x64], esi
jle 0x100025be
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x12c
lea eax, [ebp - 0x58]
push esi
push eax
xor ebx, ebx
call fcn.1000f9c0
lea eax, [ebp - 0x58]
push eax
push dword [ebp - 0x64]
push edi
call fcn.1000a414
add esp, 0x18
mov dword [ebp - 0x6c], eax
cmp eax, esi
jne 0x10002601
push dword [ebp - 0x78]
lea eax, [ebp - 0x54]
push eax
call fcn.10020300
pop ecx
pop ecx
test eax, eax
je 0x100025af
test byte [ebp + 0xb0], 0x10
je 0x10002555
mov ebx, dword [ebp - 0x5c]
lea eax, [ebp - 0x54]
push eax
push ebx
call fcn.1000f90b
pop ecx
pop ecx
mov dword [ebp - 0x6c], eax
cmp eax, esi
je 0x100025af
push edi
call fcn.1000a453
pop ecx
push edi
test al, al
je 0x1000263f
call fcn.1000bf0c
jmp 0x10002644
cmp dword [ebp + 0xd0], esi
jle 0x1000257b
cmp dword [ebp - 0x60], esi
je 0x1000256b
push dword [ebp - 0x60]
call fcn.100129c6
pop ecx
mov ebx, dword [ebp + 0xd0]
push ebx
call fcn.100129bb
pop ecx
mov dword [ebp - 0x60], eax
push ebx
push dword [ebp - 0x60]
push dword [ebp - 0x64]
push edi
call fcn.1000bef1
add esp, 0x10
mov dword [ebp - 0x6c], eax
cmp eax, esi
jne 0x10002601
push ebx
push dword [ebp - 0x60]
lea eax, [ebp - 0x54]
push eax
push dword [ebp - 0x5c]
call fcn.1000f8f0
mov ebx, eax
add esp, 0x10
cmp ebx, esi
jne 0x1000248a
inc dword [ebp - 0x64]
mov eax, dword [ebp - 0x64]
cmp eax, dword [ebp - 0x7c]
jl 0x100024d2
cmp dword [ebp - 0x60], esi
je 0x100025cc
push dword [ebp - 0x60]
call fcn.100129c6
pop ecx
mov ebx, dword [ebp - 0x5c]
cmp dword [ebp - 0x70], esi
je 0x100025ee
push dword [ebp - 0x70]
push dword [ebp - 0x78]
push ebx
call fcn.1000f8d7
add esp, 0xc
mov dword [ebp - 0x6c], eax
cmp eax, esi
jne 0x1000253b
push edi
call fcn.1000a453
pop ecx
push edi
test al, al
je 0x1000264f
call fcn.1000bf0c
jmp 0x10002654
push edi
call fcn.1000a453
pop ecx
push edi
test al, al
je 0x10002614
call fcn.1000bf0c
jmp 0x10002619
call fcn.1000f96a
pop ecx
push dword [ebp - 0x5c]
call fcn.1000a453
pop ecx
push dword [ebp - 0x5c]
test al, al
je 0x10002631
call fcn.1000bf0c
jmp 0x10002636
call fcn.1000f96a
mov eax, dword [ebp - 0x6c]
pop ecx
jmp 0x1000270b
call fcn.1000f96a
pop ecx
push ebx
call fcn.1000a453
pop ecx
push ebx
jmp 0x10002626
call fcn.1000f96a
mov edi, eax
pop ecx
cmp edi, esi
je 0x1000267b
push ebx
call fcn.1000a453
pop ecx
push ebx
test al, al
je 0x1000266e
call fcn.1000bf0c
jmp 0x10002673
call fcn.1000f96a
pop ecx
mov eax, edi
jmp 0x1000270b
push dword [ebp - 0x68]
call fcn.100129bb
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x60]
push eax
push ebx
call fcn.1000f922
mov edi, eax
add esp, 0x10
cmp edi, esi
jne 0x1000265b
push esi
push 0x80
push 2
push esi
push esi
push 0x40000000
push dword [ebp - 0x74]
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, eax
cmp edi, 0xffffffff
jne 0x100026c9
push ebx
call fcn.1000a453
pop ecx
push ebx
jmp 0x10002451
push esi
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x68]
push dword [ebp - 0x60]
push edi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x60]
call fcn.100129c6
push ebx
call fcn.1000a453
pop ecx
pop ecx
push ebx
test al, al
je 0x100026fe
call fcn.1000bf0c
jmp 0x10002703
call fcn.1000f96a
pop ecx
jmp 0x1000270b
mov eax, 0x200
mov ecx, dword [ebp + 0xd4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10011586
add ebp, 0xd8
leave
ret