Function at 0x4067d5
Capabilities:
Get common file path
Get graphical window text
Set current directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1f8
mov eax, dword [0x4294a4]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
movzx esi, word [ebp + 8]
mov ebx, ecx
push edi
push ebx
mov dword [ebp - 0x19c], ebx
call dword [sym.imp.USER32.dll_GetParent]
mov edi, 0x7d3
mov dword [ebp - 0x198], eax
cmp esi, edi
jl 0x406b5b
cmp esi, 0x7d4
jle 0x406932
cmp esi, 0x7d8
je 0x406907
cmp esi, 0x7de
jne 0x406b5b
lea eax, [ebp - 0x194]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push 0x58
pop edi
push edi
xor esi, esi
lea eax, [ebp - 0x1f4]
push esi
push eax
call fcn.00414720
xor eax, eax
mov word [ebp - 0x1bc], ax
mov word [ebp - 0x1ba], ax
add esp, 0xc
mov dword [ebp - 0x1f4], edi
lea eax, [ebp - 0x1f4]
mov edi, 0x434549
push eax
mov dword [ebp - 0x1f0], ebx
mov dword [ebp - 0x1ec], esi
mov dword [ebp - 0x1e8], esi
mov dword [ebp - 0x1e4], esi
mov dword [ebp - 0x1e0], esi
mov dword [ebp - 0x1dc], esi
mov dword [ebp - 0x1d8], edi
mov dword [ebp - 0x1d4], 0x100
mov dword [ebp - 0x1c8], esi
mov dword [ebp - 0x1c4], str.Select_file
mov dword [ebp - 0x1b8], 0x42dd94
mov dword [ebp - 0x1b4], esi
mov dword [ebp - 0x1c0], esi
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameA]
test eax, eax
je 0x4068f5
push edi
push 0x7d6
push dword [ebp - 0x198]
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
lea eax, [ebp - 0x194]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
jmp 0x406b5b
push 0
push 0
push ebx
push dword [0x43c8e4]
mov dword [0x43c918], 1
call dword [sym.imp.WS2_32.dll_WSAAsyncSelect]
push str.Transfer_cancelled_by_user
call fcn.00405f04
pop ecx
jmp 0x406b5b
push 0x43c900
call fcn.00412615
or dword [0x43c8e4], 0xffffffff
or dword [0x43c8ec], 0xffffffff
xor eax, eax
pop ecx
mov dword [0x43c8f8], 0xbb8
mov dword [0x43c918], eax
mov dword [0x43c91c], eax
mov dword [0x43c8f4], eax
mov dword [0x43c8f0], eax
mov dword [0x43c8e0], eax
mov dword [0x43c8dc], eax
mov dword [0x43c910], eax
cmp dword [0x43c920], eax
jne 0x406987
mov dword [0x43c914], eax
push 0x43c930
call fcn.004107d4
pop ecx
mov ebx, 0x100
push ebx
cmp esi, edi
mov esi, dword [sym.imp.USER32.dll_GetDlgItemTextA]
push 0x434749
setne al
push 0x7d5
push dword [ebp - 0x198]
inc al
mov byte [0x434548], al
call esi
push ebx
push 0x434549
push 0x7d6
push dword [ebp - 0x198]
call esi
push ebx
mov ebx, 0x434649
push ebx
push 0x7e1
push dword [ebp - 0x198]
call esi
push 0x25
push 0x434549
call fcn.004129a0
pop ecx
pop ecx
test eax, eax
jne 0x406b41
push 0x25
push ebx
call fcn.004129a0
pop ecx
pop ecx
test eax, eax
jne 0x406b41
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x80
lea eax, [ebp - 0x8c]
push eax
push 0x7dd
push dword [ebp - 0x198]
call esi
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
xor ebx, ebx
push ebx
push ebx
push 0x7db
push dword [ebp - 0x198]
call dword [sym.imp.USER32.dll_GetDlgItemInt]
mov dword [0x43c8d8], eax
mov dword [0x43c91c], 0x200
cmp byte [0x434749], bl
je 0x406b33
cmp byte [0x434549], bl
je 0x406b33
call fcn.00406621
test eax, eax
je 0x406b25
push ebx
push ebx
push 0xf0
push 0x7df
push dword [ebp - 0x198]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
dec eax
neg eax
sbb eax, eax
inc eax
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.0040627b
pop ecx
pop ecx
test eax, eax
je 0x406b25
push ebx
push 0x7d4
push dword [ebp - 0x198]
call esi
mov ebx, dword [sym.imp.USER32.dll_EnableWindow]
push eax
call ebx
push 0
push edi
push dword [ebp - 0x198]
call esi
push eax
call ebx
push 1
push 0x7d8
push dword [ebp - 0x198]
call esi
push eax
call ebx
movzx eax, word [ebp + 8]
xor ecx, ecx
cmp eax, edi
setne cl
push 0
push dword [0x43c8f8]
lea esi, [ecx + 0x659]
push esi
push dword [ebp - 0x19c]
call dword [sym.imp.USER32.dll_SetTimer]
push 1
push esi
push dword [ebp - 0x19c]
push dword [0x43c8e4]
call dword [sym.imp.WS2_32.dll_WSAAsyncSelect]
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x406b5b
push dword [0x43c8ec]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x406b5b
push 0x10
push 0x42dd3c
push str.Fields_Host_and_File_should_be_given.
jmp 0x406b4d
push 0x10
push 0x42dd0c
push str.Character____not_supported_by_Tftpd32
push dword [ebp - 0x19c]
call fcn.0040fb1c
add esp, 0x10
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
xor eax, eax
pop ebx
call fcn.00411a98
leave
ret