Function at 0x4294f0
Capabilities:
Check if file exists
Delete file
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x473672
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x458
mov eax, dword [0x48fb24]
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x2c], eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], ebx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x40], eax
push 0xffffffffffffffff
push ebx
mov ecx, 0x4c5c88
mov byte [ebp - 4], 5
call fcn.00461f8c
mov esi, dword [ebp + 8]
push ecx
mov ecx, esp
mov dword [ebp - 0x20], esp
lea eax, [esi + 0x74]
mov dword [0x4c5c84], ebx
push eax
mov dword [ebp - 0x44], 1
call fcn.0046260d
call fcn.00438ad0
add esp, 4
mov byte [ebp - 0x25], al
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x14
mov dword [esi + 0x60], ebx
call fcn.00463d8c
mov edi, eax
add esp, 4
mov dword [ebp - 0x20], edi
cmp edi, ebx
mov byte [ebp - 4], 6
je 0x4295a8
call fcn.0046c38b
mov eax, dword [eax + 0x10]
push ebx
push ebx
push ebx
push ebx
push 1
push eax
mov ecx, edi
call fcn.0046afc4
jmp 0x4295aa
xor eax, eax
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.Connect_FTP
mov dword [esi + 0x5c], eax
mov byte [ebp - 4], 7
call fcn.00462906
mov ecx, esi
call fcn.004089b0
mov ecx, dword [0x4c5c38]
mov edx, dword [0x4c5c58]
mov eax, dword [0x4c5c5c]
push ecx
mov ecx, dword [0x4c5c60]
push 0x15
push edx
push eax
push ecx
mov ecx, dword [esi + 0x5c]
call fcn.0046b0bf
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.Connect_FTP_PASS
mov dword [esi + 0x60], eax
call fcn.00462906
mov ecx, esi
call fcn.004089b0
mov edx, dword [0x4c5c60]
lea eax, [ebp - 0x14]
push edx
push str.Connect__s_Success__
push eax
call fcn.00461a66
add esp, 8
lea edx, [ebp - 0x14]
mov ecx, esp
mov dword [ebp - 0x20], esp
push edx
call fcn.0046260d
mov ecx, esi
call fcn.00403ee0
push str.connect_success__
lea ecx, [esi + 0x41c]
call fcn.004672ef
push ebx
mov ecx, esi
call fcn.004668c5
mov al, byte [ebp - 0x25]
mov dword [ebp - 4], 5
test al, al
je 0x429e79
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push str.Update_Bad_Block_Log_File
call fcn.00462906
mov ecx, esi
call fcn.00403ee0
mov eax, dword [0x4c5c90]
mov dword [ebp - 0x3c], ebx
cmp eax, ebx
jle 0x429e79
jmp 0x429696
xor ebx, ebx
mov eax, dword [ebp - 0x44]
inc eax
cmp eax, 0x32
mov dword [ebp - 0x44], eax
jg 0x429e79
mov eax, dword [0x491f50]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push eax
push ebx
push str.Enable
push str.CloseAP
call edi
cmp eax, 1
je 0x429e48
mov ecx, dword [0x491f50]
push ecx
push ebx
push str.Enable
push str.SeachNoSendFile
call edi
cmp eax, 1
je 0x429e55
mov edx, dword [0x491f50]
push edx
push ebx
push str.Enable
push str.LinkTest
call edi
cmp eax, 1
je 0x429e62
push str..BadBlockLog_
lea ecx, [esi + 0x3e0]
call fcn.004672ef
mov eax, dword [esi + 0x74]
lea ebx, [esi + 0x74]
push eax
lea ecx, [esi + 0x68]
push str._s.
push ecx
call fcn.00461a66
mov edx, dword [ebp - 0x3c]
add esp, 0xc
lea eax, [ebp - 0x58]
mov ecx, 0x4c5c88
push edx
push eax
call fcn.00407870
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xf
call fcn.004629d1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 5
call fcn.00462898
push 0
push ecx
lea edx, [ebp - 0x18]
mov ecx, esp
mov dword [ebp + 8], esp
push edx
push str.Process_Test_Log_File_:
push ecx
call fcn.00462ba1
mov ecx, esi
call fcn.004089b0
push str.DG1__DS_DIR_HDR
lea ecx, [ebp - 0x18]
call fcn.00461725
cmp eax, 0xffffffff
jne 0x429e31
push ecx
lea eax, [ebp - 0x18]
mov ecx, esp
mov dword [ebp + 8], esp
push eax
call fcn.0046260d
call fcn.004390b0
add esp, 4
test al, al
push ecx
mov ecx, esp
je 0x4297c5
lea edx, [ebp - 0x18]
mov dword [ebp + 8], esp
push edx
push str.Check_File_is_Lock_Time_out_:
push ecx
call fcn.00462ba1
mov ecx, esi
call fcn.00403ee0
jmp 0x429e31
lea eax, [ebp - 0x18]
mov dword [ebp + 8], esp
push eax
call fcn.0046260d
call fcn.00439170
mov edi, eax
add esp, 4
test edi, edi
mov dword [ebp - 0x38], edi
jne 0x42981b
push ecx
lea edx, [ebp - 0x18]
mov ecx, esp
mov dword [ebp + 8], esp
push edx
push str.Check_File_Size_not_Available_:
push ecx
call fcn.00462ba1
mov ecx, esi
call fcn.00403ee0
push ecx
lea eax, [ebp - 0x18]
mov ecx, esp
mov dword [ebp + 8], esp
push eax
call fcn.0046260d
push esi
call fcn.00439c60
add esp, 8
jmp 0x429e31
lea ecx, [ebp - 0x48]
push 4
push ecx
lea ecx, [ebp - 0x1c]
call fcn.0046160f
mov eax, dword [eax]
push 4
push str..Tmp
push eax
call fcn.0044c9de
add esp, 0xc
lea ecx, [ebp - 0x48]
test eax, eax
sete byte [ebp + 0xb]
call fcn.00462898
mov al, byte [ebp + 0xb]
test al, al
je 0x429871
push ecx
lea eax, [ebp - 0x18]
mov edx, esp
mov dword [ebp + 8], esp
push eax
push str.Check_File_is_Temp_:
push edx
call fcn.00462ba1
mov ecx, esi
call fcn.00403ee0
jmp 0x429e31
push 0x2e
lea ecx, [ebp - 0x1c]
call fcn.00461703
push 0x491f08
lea ecx, [ebp - 0x14]
call fcn.00462a21
push str._LEN
lea ecx, [ebp - 0x1c]
call fcn.00461725
cmp eax, 0xffffffff
je 0x42992b
push str._LEN
lea ecx, [ebp - 0x1c]
call fcn.00461725
push eax
push 0x48da34
lea ecx, [ebp - 0x1c]
call fcn.00461733
cmp eax, 0xffffffff
je 0x42992b
push str._LEN
lea ecx, [ebp - 0x1c]
call fcn.00461725
push eax
push 0x48da34
lea ecx, [ebp - 0x1c]
call fcn.00461733
push str._LEN
lea ecx, [ebp - 0x1c]
mov edi, eax
call fcn.00461725
mov ecx, 0xfffffffc
sub ecx, eax
add edi, ecx
lea ecx, [ebp - 0x1c]
push edi
push str._LEN
call fcn.00461725
add eax, 4
lea edx, [ebp - 0x50]
push eax
push edx
lea ecx, [ebp - 0x1c]
call fcn.00461579
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x10
call fcn.004629d1
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 5
call fcn.00462898
mov edi, dword [ebp - 0x38]
mov eax, dword [ebp - 0x14]
push 0x491f08
push eax
call fcn.0044bf3e
add esp, 8
test eax, eax
je 0x429981
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.0044bf39
add esp, 4
cmp edi, eax
je 0x429981
mov edx, dword [ebp - 0x18]
push edx
push eax
push edi
lea eax, [ebp - 0x14]
push str.Check_File_Size_is_not_match__d_vs__d:_s
push eax
call fcn.00461a66
add esp, 0x10
lea edx, [ebp - 0x14]
mov ecx, esp
mov dword [ebp + 8], esp
push edx
call fcn.0046260d
mov ecx, esi
call fcn.00403ee0
jmp 0x429e31
push 0x5c
lea ecx, [ebp - 0x18]
call fcn.00461703
mov edi, eax
lea eax, [ebp - 0x60]
inc edi
lea ecx, [ebp - 0x18]
push edi
push eax
call fcn.0046168b
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x11
call fcn.004629d1
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 5
call fcn.00462898
lea ecx, [ebp - 0x14]
call fcn.00462d9a
push ebx
lea ecx, [ebp - 0x24]
call fcn.004629d1
lea ecx, [ebp - 0x24]
call fcn.00462d9a
mov ecx, dword [ebp - 0x18]
lea edx, [ebp - 0x5c]
mov eax, dword [ecx - 8]
lea ecx, [ebp - 0x18]
sub eax, edi
push eax
push edx
call fcn.0046160f
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x12
call fcn.004629d1
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00462898
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebx]
mov edx, dword [ebp - 0x1c]
mov eax, dword [eax - 8]
mov ecx, dword [ecx - 8]
mov edx, dword [edx - 8]
sub eax, ecx
sub eax, edx
push eax
lea eax, [ebp - 0x54]
push ecx
push eax
lea ecx, [ebp - 0x18]
call fcn.00461579
push eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x13
call fcn.004629d1
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 5
call fcn.00462898
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, dword [esi + 0x60]
call fcn.0046b3a2
mov edx, dword [ebp - 0x2c]
lea ecx, [ebp - 0x2c]
mov eax, dword [edx - 8]
dec eax
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.0046160f
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x14
call fcn.004629d1
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x64]
call fcn.00462898
mov eax, dword [0x4c5c48]
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call fcn.0044bf3e
add esp, 8
test eax, eax
je 0x429b94
mov edx, dword [0x4c5c48]
lea eax, [ebp - 0x14]
push edx
push 0x48c84c
push eax
call fcn.00461a66
mov ecx, dword [ebp - 0x14]
add esp, 0xc
push ecx
mov ecx, dword [esi + 0x60]
call fcn.0046b392
test eax, eax
jne 0x429b94
mov edx, dword [ebp - 0x14]
mov ecx, dword [esi + 0x60]
push edx
call fcn.0046b382
mov eax, dword [ebp - 0x14]
mov ecx, dword [esi + 0x60]
push eax
call fcn.0046b392
test eax, eax
jne 0x429b94
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
mov ecx, dword [0x4c5c48]
push eax
push ecx
lea edx, [ebp - 0x14]
push str.SetCurrentDirectory_to__s_fail__GetLastError_d
push edx
call fcn.00461a66
add esp, 0xc
lea eax, [ebp - 0x14]
mov ecx, esp
mov dword [ebp + 8], esp
push eax
call fcn.0046260d
mov ecx, esi
call fcn.00403ee0
push 0x4c5c48
lea ecx, [ebp - 0x20]
push 0x48c818
push ecx
call fcn.00462ba1
push 0x48c818
lea edx, [ebp - 0x4c]
push eax
push edx
mov byte [ebp - 4], 0x15
call fcn.00462b2d
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x16
call fcn.004629d1
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x15
call fcn.00462898
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 5
call fcn.00462898
mov eax, dword [ebp - 0x24]
mov ecx, dword [esi + 0x60]
push eax
call fcn.0046b392
test eax, eax
jne 0x429b94
call edi
mov ecx, dword [ebp - 0x24]
push eax
push ecx
lea edx, [ebp - 0x14]
push str.SetCurrentDirectory_to__s_fail__GetLastError_d
push edx
call fcn.00461a66
add esp, 0xc
lea eax, [ebp - 0x14]
mov ecx, esp
mov dword [ebp + 8], esp
push eax
call fcn.0046260d
mov ecx, esi
call fcn.00403ee0
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
push 1
push 2
push ecx
mov ecx, dword [esi + 0x60]
push edx
call fcn.0046b3e4
push 0x5dc
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, 1
test ebx, ebx
jne 0x429bed
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
push 1
push 2
push eax
push ecx
mov ecx, dword [esi + 0x60]
call fcn.0046b3e4
push 0x5dc
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_Sleep]
inc edi
cmp edi, 3
jbe 0x429bba
test ebx, ebx
je 0x429d6e
push 0
push ecx
lea eax, [ebp - 0x18]
mov edx, esp
mov dword [ebp + 8], esp
push eax
push str.Upload_Test_Log_File_:
push edx
call fcn.00462ba1
mov ecx, esi
call fcn.004089b0
mov ecx, dword [ebp - 0x1c]
lea edx, [ebp - 0x14]
push ecx
push str.Send__s_ok.
push edx
call fcn.00461a66
add esp, 8
lea eax, [ebp - 0x14]
mov ecx, esp
mov dword [ebp + 8], esp
push eax
call fcn.0046260d
mov ecx, esi
call fcn.00403ee0
mov ecx, dword [0x4c5c14]
push ecx
push 0
push str.Total
push str.BadBlockLog
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
inc eax
lea edx, [ebp - 0x14]
push eax
push 0x48bdc8
push edx
call fcn.00461a66
add esp, 8
mov ecx, esp
mov dword [ebp + 8], esp
push 0x4c5c14
call fcn.0046260d
push ecx
lea eax, [ebp - 0x14]
mov ecx, esp
mov dword [ebp - 0x38], esp
push eax
mov byte [ebp - 4], 0x17
call fcn.0046260d
push ecx
mov byte [ebp - 4], 0x18
mov ecx, esp
mov dword [ebp - 0x30], esp
push str.Total
call fcn.00462906
push ecx
mov byte [ebp - 4], 0x19
mov ecx, esp
mov dword [ebp - 0x34], esp
push str.BadBlockLog
call fcn.00462906
mov byte [ebp - 4], 5
call fcn.0040b2a0
add esp, 0xc
mov ecx, esp
mov dword [ebp + 8], esp
push 0x4c5c34
call fcn.0046260d
push ecx
mov byte [ebp - 4], 0x1a
mov ecx, esp
mov dword [ebp - 0x34], esp
push 0x48bd8c
call fcn.00462906
mov byte [ebp - 4], 0x1b
push ecx
mov ecx, esp
mov dword [ebp - 0x30], esp
push str.Status
call fcn.00462906
push ecx
mov byte [ebp - 4], 0x1c
mov ecx, esp
mov dword [ebp - 0x38], esp
push str.ClientStatus
call fcn.00462906
mov byte [ebp - 4], 5
call fcn.0040b2a0
add esp, 0x10
lea edx, [ebp - 0x18]
push 0
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push edx
push str.Delete_BadBlock_Log_File_:
push ecx
call fcn.00462ba1
mov ecx, esi
call fcn.004089b0
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x429e31
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x429e31
push ecx
lea edx, [ebp - 0x18]
mov ecx, esp
mov dword [ebp + 8], esp
push edx
push str._27_Delete_Log_File_Fail_:
push ecx
call fcn.00462ba1
mov ecx, esi
call fcn.00403ee0
jmp 0x429e31
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov eax, dword [ebp - 0x1c]
push edi
push eax
lea ecx, [ebp - 0x14]
push str.Error__File__s_wasnt_sent____GetLastError_d
push ecx
call fcn.00461a66
add esp, 0xc
lea edx, [ebp - 0x14]
mov ecx, esp
mov dword [ebp + 8], esp
push edx
call fcn.0046260d
mov ecx, esi
call fcn.00403ee0
push edi
lea eax, [ebp - 0x14]
push 0x48bdc8
push eax
call fcn.00461a66
add esp, 8
mov ecx, esp
mov dword [ebp + 8], esp
push 0x4c5c34
call fcn.0046260d
push ecx
lea edx, [ebp - 0x14]
mov ecx, esp
mov dword [ebp - 0x34], esp
push edx
mov byte [ebp - 4], 0x1d
call fcn.0046260d
push ecx
mov byte [ebp - 4], 0x1e
mov ecx, esp
mov dword [ebp - 0x30], esp
push str.Status
call fcn.00462906
push ecx
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x38], esp
push str.ClientStatus
call fcn.00462906
mov byte [ebp - 4], 5
call fcn.0040b2a0
add esp, 0x10
cmp edi, 0x2ee2
je 0x429e79
cmp edi, 0x2ee3
je 0x429e79
cmp edi, 0x2f4f
je 0x429e79
cmp edi, 0x2efe
je 0x429e79
cmp edi, 0x2eff
je 0x429e79
mov eax, dword [ebp - 0x3c]
mov ecx, dword [0x4c5c90]
inc eax
cmp eax, ecx
mov dword [ebp - 0x3c], eax
jl 0x429694
jmp 0x429e79
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push str.Close_AP_Event...
jmp 0x429e6d
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push str.Get_SeachNoSendFile_Event...
jmp 0x429e6d
push ecx
mov ecx, esp
mov dword [ebp + 8], esp
push str.Get_LinkTest_Event...
call fcn.00462906
mov ecx, esi
call fcn.00403ee0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
call fcn.00462898
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call fcn.00462898
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 2
call fcn.00462898
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 1
call fcn.00462898
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0
call fcn.00462898
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.00462898
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret