Function at 0x59a6f0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x688
mov eax, dword [0x6fb448]
xor eax, ebp
mov dword [ebp - 8], eax
mov byte [ebp - 0x220], 0
push 0x103
push 0
lea eax, [ebp - 0x21f]
push eax
call fcn.005b02a0
add esp, 0xc
mov dword [ebp - 0x114], 0
mov byte [ebp - 0x110], 0
push 0x103
push 0
lea ecx, [ebp - 0x10f]
push ecx
call fcn.005b02a0
add esp, 0xc
mov byte [ebp - 0x328], 0
push 0x103
push 0
lea edx, [ebp - 0x327]
push edx
call fcn.005b02a0
add esp, 0xc
mov byte [ebp - 0x558], 0
push 0x103
push 0
lea eax, [ebp - 0x557]
push eax
call fcn.005b02a0
add esp, 0xc
mov byte [ebp - 0x430], 0
push 0x103
push 0
lea ecx, [ebp - 0x42f]
push ecx
call fcn.005b02a0
add esp, 0xc
mov word [ebp - 0x450], 0
xor edx, edx
mov dword [ebp - 0x44e], edx
mov dword [ebp - 0x44a], edx
mov dword [ebp - 0x446], edx
mov word [ebp - 0x442], dx
mov word [ebp - 0x440], 0
xor eax, eax
mov dword [ebp - 0x43e], eax
mov dword [ebp - 0x43a], eax
mov dword [ebp - 0x436], eax
mov word [ebp - 0x432], ax
mov dword [ebp - 4], 0
push str.ApplUdt.lck
lea ecx, [ebp - 0x220]
push ecx
call fcn.00401474
add esp, 8
cmp dword [ebp + 8], 0
jne 0x59a87c
call fcn.0040323d
sub eax, dword [0x835054]
cmp eax, 0x493e0
jae 0x59a820
xor eax, eax
jmp 0x59b38b
call fcn.0040323d
mov dword [0x835054], eax
xor edx, edx
je 0x59a835
xor eax, eax
jmp 0x59b38b
push 0x7530
push 0
lea eax, [ebp - 0x220]
push eax
call fcn.00402ad6
add esp, 0xc
mov dword [ebp - 4], eax
call fcn.00402c16
test eax, eax
jne 0x59a87a
cmp dword [ebp - 4], 0
je 0x59a873
lea ecx, [ebp - 0x220]
push ecx
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
xor eax, eax
jmp 0x59b38b
jmp 0x59a887
xor edx, edx
je 0x59a887
xor eax, eax
jmp 0x59b38b
call fcn.0040323d
mov dword [0x835054], eax
push 0x92
push 0x6f10f4
push 0x20
call fcn.0040312f
add esp, 0xc
push 0x94
push 0x6f1108
push 0x20
call fcn.004016ae
add esp, 0xc
test eax, eax
jne 0x59a932
mov dword [ebp - 0x55c], 0
push 0x97
push 0x6f111c
push 0
call fcn.0040312f
add esp, 0xc
mov dword [ebp - 0x55c], eax
cmp dword [ebp - 0x55c], 0
je 0x59a923
mov eax, dword [ebp - 0x55c]
push eax
push str.:7:ApplyUpdates___FAILED:_Could_not_logon_to_the_TAMS_server:_LogonToTAMS_NO_SYNC__returned__d
call fcn.00401014
add esp, 8
cmp dword [ebp - 4], 0
je 0x59a91a
lea ecx, [ebp - 0x220]
push ecx
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
xor eax, eax
jmp 0x59b38b
push str.:9:ApplyUpdates___encountered_something_strange:_LockTAMSServer_LTS_UPDATEFILES__FAILED__but_LogonToTAMS_NO_SYNC__succeeded_
call fcn.004018ca
add esp, 4
jmp 0x59a93c
mov dword [ebp - 0x114], 1
push 0x104
push 0x6f1210
lea edx, [ebp - 0x430]
push edx
call fcn.00402725
add esp, 0xc
push 1
call fcn.0059b9b0
add esp, 4
test eax, eax
jne 0x59a9b1
cmp dword [ebp + 8], 0
jne 0x59a998
push 0x20
call fcn.004020ef
add esp, 4
cmp dword [ebp - 4], 0
je 0x59a98f
lea eax, [ebp - 0x220]
push eax
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
xor eax, eax
jmp 0x59b38b
push 0x104
push str.LiveBranch2.ark
lea ecx, [ebp - 0x430]
push ecx
call fcn.00402725
add esp, 0xc
lea edx, [ebp - 0x430]
push edx
lea eax, [ebp - 0x110]
push eax
call fcn.0040311b
add esp, 8
lea ecx, [ebp - 0x430]
push ecx
lea edx, [ebp - 0x328]
push edx
call fcn.005b4720
add esp, 8
push 0
push 0
call fcn.00401474
add esp, 8
push eax
lea eax, [ebp - 0x328]
push eax
call fcn.00402293
add esp, 8
push 1
push 0
lea ecx, [ebp - 0x328]
push ecx
lea edx, [ebp - 0x110]
push edx
call fcn.00401d66
add esp, 0x10
test eax, eax
jne 0x59ab1e
cmp dword [ebp - 0x114], 0
je 0x59aa2e
push 0x20
call fcn.004020ef
add esp, 4
mov dword [ebp - 0x114], 0
push 0x190
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x110]
push eax
call fcn.004028ab
add esp, 4
test eax, eax
je 0x59ab1e
push 0x2710
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0xc2
push 0x6f122c
push 0x20
call fcn.004016ae
add esp, 0xc
test eax, eax
jne 0x59aa8c
push str.:5:ApplyUpdates___encountered_a_problem:_LockTAMSServer_LTS_UPDATEFILES__FAILED_to_relock_while_retrying_update_archive_copy.
call fcn.004018ca
add esp, 4
jmp 0x59aa96
mov dword [ebp - 0x114], 1
push 1
push 0
lea ecx, [ebp - 0x328]
push ecx
lea edx, [ebp - 0x110]
push edx
call fcn.00401d66
add esp, 0x10
test eax, eax
jne 0x59ab11
lea eax, [ebp - 0x328]
push eax
lea ecx, [ebp - 0x110]
push ecx
push str.:9:ApplyUpdates___has_encountered_a_problem:_The_servers_update_archive___s__exists_but_cannot_be_copied_to___s_.__The_PAULA_Update_cannot_be_applied_
call fcn.00401014
add esp, 0xc
cmp dword [ebp - 0x114], 0
je 0x59aae2
push 0x20
call fcn.004020ef
add esp, 4
mov dword [ebp - 0x114], 0
cmp dword [ebp - 4], 0
je 0x59ab08
lea edx, [ebp - 0x220]
push edx
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
xor eax, eax
jmp 0x59b38b
push str.:7:ApplyUpdates___failed_to_copy_the_TAMS_servers_update_archive_on_the_first_attempt_but_succeeded_on_the_second_backup_attempt.
call fcn.004018ca
add esp, 4
cmp dword [ebp - 0x114], 0
je 0x59ab31
push 0x20
call fcn.004020ef
add esp, 4
mov dword [ebp - 0x114], 0
lea eax, [ebp - 0x328]
push eax
call fcn.004028ab
add esp, 4
test eax, eax
je 0x59b186
mov byte [ebp - 0x668], 0
push 0x103
push 0
lea ecx, [ebp - 0x667]
push ecx
call fcn.005b02a0
add esp, 0xc
push 0
push 0
call fcn.00401474
add esp, 8
push eax
push str._sUpdtTest_
lea edx, [ebp - 0x558]
push edx
call fcn.005b6660
add esp, 0xc
lea eax, [ebp - 0x558]
push eax
call fcn.004028ab
add esp, 4
test eax, eax
je 0x59abbd
lea ecx, [ebp - 0x558]
push ecx
call fcn.00401505
add esp, 4
push 0x96
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
lea edx, [ebp - 0x558]
push edx
call fcn.004023ec
add esp, 8
lea eax, [ebp - 0x558]
push eax
call fcn.00401b77
add esp, 4
test eax, eax
jne 0x59abf5
lea ecx, [ebp - 0x558]
push ecx
push str.:7:ApplyUpdates___encountered_a_problem:_CreateDirectorySuper___s___has_FAILED:_The_directory_does_not_exist.
call fcn.00401014
add esp, 8
push 0
push 1
push 0
lea edx, [ebp - 0x558]
push edx
lea eax, [ebp - 0x328]
push eax
call fcn.00402eb9
add esp, 0x14
test eax, eax
jne 0x59acf9
push 0x2710
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0xf3
push 0x6f1458
push 0x20
call fcn.004016ae
add esp, 0xc
test eax, eax
jne 0x59ac4b
push str.:5:ApplyUpdates___encountered_a_problem:_LockTAMSServer_LTS_UPDATEFILES__FAILED_to_relock_while_retrying_update_archive_copy_2.
call fcn.004018ca
add esp, 4
jmp 0x59ac55
mov dword [ebp - 0x114], 1
push 1
push 0
lea ecx, [ebp - 0x328]
push ecx
lea edx, [ebp - 0x110]
push edx
call fcn.00401d66
add esp, 0x10
cmp dword [ebp - 0x114], 0
je 0x59ac82
push 0x20
call fcn.004020ef
add esp, 4
mov dword [ebp - 0x114], 0
push 0
push 1
push 0
lea eax, [ebp - 0x558]
push eax
lea ecx, [ebp - 0x328]
push ecx
call fcn.00402eb9
add esp, 0x14
test eax, eax
jne 0x59acec
lea edx, [ebp - 0x558]
push edx
lea eax, [ebp - 0x328]
push eax
push str.:9:ApplyUpdates___has_encountered_a_serious_problem:_The_update_archive_on_the_TAMS_server_is_corrupt:_ExpandArchive___s_____s___1__0__FAILED_
call fcn.00401014
add esp, 0xc
cmp dword [ebp - 4], 0
je 0x59ace3
lea ecx, [ebp - 0x220]
push ecx
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
xor eax, eax
jmp 0x59b38b
push str.:7:ApplyUpdates___encountered_a_problem.__The_first_time_the_update_archive_was_copied_from_the_TAMS_server__it_was_corrupt.__But_when_the_file_was_recopied_a_second_time__it_was_OK.
call fcn.004018ca
add esp, 4
push 0x6f1640
lea edx, [ebp - 0x558]
push edx
push 0x6f1650
lea eax, [ebp - 0x668]
push eax
call fcn.005b6660
add esp, 0x10
push 0
lea ecx, [ebp - 0x450]
push ecx
lea edx, [ebp - 0x668]
push edx
call fcn.004021b2
add esp, 0xc
test eax, eax
jne 0x59adc4
push 0x6f1658
lea eax, [ebp - 0x558]
push eax
push 0x6f1664
lea ecx, [ebp - 0x668]
push ecx
call fcn.005b6660
add esp, 0x10
push 0
lea edx, [ebp - 0x450]
push edx
lea eax, [ebp - 0x668]
push eax
call fcn.004021b2
add esp, 0xc
test eax, eax
jne 0x59adc4
mov ecx, dword [0x835058]
add ecx, 1
mov dword [0x835058], ecx
cmp dword [0x835058], 5
jg 0x59ada1
mov edx, dword [0x835058]
push edx
push str.:7:__d_of_5:_ApplyUpdates___FAILED:_The_update_is_invalid_because_it_does_not_contain_a_revision_date_
call fcn.00401014
add esp, 8
cmp dword [ebp - 4], 0
je 0x59adbd
lea eax, [ebp - 0x220]
push eax
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
xor eax, eax
jmp 0x59b38b
push 0x6f16d8
push 0
push 0
call fcn.004022b6
add esp, 8
push eax
push 0x6f16e4
lea ecx, [ebp - 0x668]
push ecx
call fcn.005b6660
add esp, 0x10
push 0
lea edx, [ebp - 0x440]
push edx
lea eax, [ebp - 0x668]
push eax
call fcn.004021b2
add esp, 0xc
test eax, eax
jne 0x59ae13
push str.:7:ApplyUpdates___encountered_a_problem:_Could_not_determine_the_revision_date_of_the_current_PAULA_installation.__The_update_will_be_applied.
call fcn.004018ca
add esp, 4
sub esp, 0x10
mov ecx, esp
mov edx, dword [ebp - 0x440]
mov dword [ecx], edx
mov eax, dword [ebp - 0x43c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x438]
mov dword [ecx + 8], edx
mov eax, dword [ebp - 0x434]
mov dword [ecx + 0xc], eax
sub esp, 0x10
mov ecx, esp
mov edx, dword [ebp - 0x450]
mov dword [ecx], edx
mov eax, dword [ebp - 0x44c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x448]
mov dword [ecx + 8], edx
mov eax, dword [ebp - 0x444]
mov dword [ecx + 0xc], eax
call fcn.00401a00
add esp, 0x20
test eax, eax
jge 0x59af15
movzx ecx, word [ebp - 0x434]
push ecx
movzx edx, word [ebp - 0x436]
push edx
movzx eax, word [ebp - 0x438]
push eax
movzx ecx, word [ebp - 0x440]
push ecx
movzx edx, word [ebp - 0x43a]
push edx
movzx eax, word [ebp - 0x43e]
push eax
movzx ecx, word [ebp - 0x444]
push ecx
movzx edx, word [ebp - 0x446]
push edx
movzx eax, word [ebp - 0x448]
push eax
movzx ecx, word [ebp - 0x450]
push ecx
movzx edx, word [ebp - 0x44a]
push edx
movzx eax, word [ebp - 0x44e]
push eax
push str.:3:ApplyUpdates___did_not_apply_the_update_from_the_TAMS_server_because_it_is_outdated.__The_update_was_revised__02d__02d__04d____02d:_02d._02d_but_the_current_revision_is__02d__02d__04d____02d:_02d._02d.
call fcn.004018ca
add esp, 0x34
lea ecx, [ebp - 0x328]
push ecx
call fcn.0059c280
add esp, 4
cmp dword [ebp - 4], 0
je 0x59af0b
lea edx, [ebp - 0x220]
push edx
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
mov eax, 1
jmp 0x59b38b
sub esp, 0x10
mov eax, esp
mov ecx, dword [ebp - 0x440]
mov dword [eax], ecx
mov edx, dword [ebp - 0x43c]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x438]
mov dword [eax + 8], ecx
mov edx, dword [ebp - 0x434]
mov dword [eax + 0xc], edx
sub esp, 0x10
mov eax, esp
mov ecx, dword [ebp - 0x450]
mov dword [eax], ecx
mov edx, dword [ebp - 0x44c]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x448]
mov dword [eax + 8], ecx
mov edx, dword [ebp - 0x444]
mov dword [eax + 0xc], edx
call fcn.00402d65
add esp, 0x20
test eax, eax
jne 0x59b06b
mov word [ebp - 0x678], 0
xor eax, eax
mov dword [ebp - 0x676], eax
mov dword [ebp - 0x672], eax
mov dword [ebp - 0x66e], eax
mov word [ebp - 0x66a], ax
push 0x6f1850
push 0
push 0
call fcn.00401474
add esp, 8
push eax
push 0x6f1860
lea ecx, [ebp - 0x668]
push ecx
call fcn.005b6660
add esp, 0x10
push 0
lea edx, [ebp - 0x678]
push edx
lea eax, [ebp - 0x668]
push eax
call fcn.004021b2
add esp, 0xc
test eax, eax
je 0x59b06b
sub esp, 0x10
mov ecx, esp
mov edx, dword [ebp - 0x678]
mov dword [ecx], edx
mov eax, dword [ebp - 0x674]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x670]
mov dword [ecx + 8], edx
mov eax, dword [ebp - 0x66c]
mov dword [ecx + 0xc], eax
sub esp, 0x10
mov ecx, esp
mov edx, dword [ebp - 0x450]
mov dword [ecx], edx
mov eax, dword [ebp - 0x44c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x448]
mov dword [ecx + 8], edx
mov eax, dword [ebp - 0x444]
mov dword [ecx + 0xc], eax
call fcn.00402d65
add esp, 0x20
test eax, eax
je 0x59b06b
mov ecx, dword [ebp - 0x678]
mov dword [ebp - 0x440], ecx
mov edx, dword [ebp - 0x674]
mov dword [ebp - 0x43c], edx
mov eax, dword [ebp - 0x670]
mov dword [ebp - 0x438], eax
mov ecx, dword [ebp - 0x66c]
mov dword [ebp - 0x434], ecx
sub esp, 0x10
mov edx, esp
mov eax, dword [ebp - 0x440]
mov dword [edx], eax
mov ecx, dword [ebp - 0x43c]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x438]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x434]
mov dword [edx + 0xc], ecx
sub esp, 0x10
mov edx, esp
mov eax, dword [ebp - 0x450]
mov dword [edx], eax
mov ecx, dword [ebp - 0x44c]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x448]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x444]
mov dword [edx + 0xc], ecx
call fcn.00402d65
add esp, 0x20
test eax, eax
je 0x59b186
call fcn.00402dab
test eax, eax
je 0x59b179
mov word [ebp - 0x688], 0
xor edx, edx
mov dword [ebp - 0x686], edx
mov dword [ebp - 0x682], edx
mov dword [ebp - 0x67e], edx
mov word [ebp - 0x67a], dx
push 0x142
push 0x6f1868
lea eax, [ebp - 0x688]
push eax
call fcn.00402036
add esp, 0xc
movzx ecx, word [ebp - 0x684]
test ecx, ecx
je 0x59b144
movzx edx, word [ebp - 0x684]
cmp edx, 6
je 0x59b144
movzx eax, word [ebp - 0x680]
cmp eax, 0xe
jge 0x59b144
movzx ecx, word [ebp - 0x680]
cmp ecx, 6
jge 0x59b179
lea edx, [ebp - 0x328]
push edx
call fcn.0059c280
add esp, 4
cmp dword [ebp - 4], 0
je 0x59b16f
lea eax, [ebp - 0x220]
push eax
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
mov eax, 1
jmp 0x59b38b
push str.:1:FYI:_An_update_is_about_to_be_reapplied.__This_may_not_be_necessary_but_has_been_left_for_safety.__Return_at_this_point_to_disable_this__feature_.
call fcn.004018ca
add esp, 4
lea ecx, [ebp - 0x328]
push ecx
call fcn.004028ab
add esp, 4
test eax, eax
je 0x59b36d
push 0x59b3a0
push 1
push 1
push 0xea60
push 0
push 0
call fcn.004022b6
add esp, 8
push eax
lea edx, [ebp - 0x558]
push edx
call fcn.00402716
add esp, 0x18
test eax, eax
jge 0x59b20f
push 0
push 0
call fcn.004022b6
add esp, 8
push eax
lea eax, [ebp - 0x558]
push eax
push str.:9:ApplyUpdates___encountered_an_IMPOSSIBLE_EXCEPTION:_CopyNewerFiles___s_____s___FAILED_to_apply_an_already_tested_update_
call fcn.00401014
add esp, 0xc
cmp dword [ebp - 4], 0
je 0x59b208
lea ecx, [ebp - 0x220]
push ecx
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
xor eax, eax
jmp 0x59b38b
call fcn.00401893
lea edx, [ebp - 0x328]
push edx
call fcn.0059c280
add esp, 4
lea eax, [ebp - 0x328]
push eax
call fcn.0040255e
add esp, 4
lea ecx, [ebp - 0x558]
push ecx
call fcn.004028ab
add esp, 4
test eax, eax
je 0x59b254
lea edx, [ebp - 0x558]
push edx
call fcn.00401505
add esp, 4
push 0x6f1994
push 0
push 0
call fcn.004022b6
add esp, 8
push eax
push 0x6f19a4
lea eax, [ebp - 0x110]
push eax
call fcn.005b6660
add esp, 0x10
lea ecx, [ebp - 0x110]
push ecx
call fcn.004028ab
add esp, 4
test eax, eax
je 0x59b2bd
push 0
push str.Revision.dat
push 0
call fcn.00401474
add esp, 8
push eax
lea edx, [ebp - 0x110]
push edx
call fcn.004013a2
add esp, 0xc
lea eax, [ebp - 0x110]
push eax
call fcn.0040255e
add esp, 4
push 1
call fcn.004029f5
add esp, 4
movzx ecx, word [ebp - 0x434]
push ecx
movzx edx, word [ebp - 0x436]
push edx
movzx eax, word [ebp - 0x438]
push eax
movzx ecx, word [ebp - 0x440]
push ecx
movzx edx, word [ebp - 0x43a]
push edx
movzx eax, word [ebp - 0x43e]
push eax
movzx ecx, word [ebp - 0x444]
push ecx
movzx edx, word [ebp - 0x446]
push edx
movzx eax, word [ebp - 0x448]
push eax
movzx ecx, word [ebp - 0x450]
push ecx
movzx edx, word [ebp - 0x44a]
push edx
movzx eax, word [ebp - 0x44e]
push eax
push str.:0:_FYI:_An_update_has_been_processed.__Update_Revision____02d__02d__04d____02d:_02d._02d__Previous_Revision____02d__02d__04d____02d:_02d._02d.
call fcn.004018ca
add esp, 0x34
push str.UpdtFileLst.txt
push 0
call fcn.004022b6
add esp, 8
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [ebp - 4], 0
je 0x59b366
lea ecx, [ebp - 0x220]
push ecx
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
mov eax, 1
jmp 0x59b38b
cmp dword [ebp - 4], 0
je 0x59b389
lea edx, [ebp - 0x220]
push edx
call fcn.00402824
add esp, 4
mov dword [ebp - 4], 0
xor eax, eax
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005b0290
mov esp, ebp
pop ebp
ret