Function at 0x45d920
Capabilities:
Terminate process

Disassembly:
sub esp, 0x74
mov eax, dword [0x4a1298]
push ebx
push ebp
mov ebp, dword [esp + 0x80]
xor ebx, ebx
test al, 0x20
push esi
push edi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x18], ebx
jne 0x45d946
cmp eax, 0x20
jne 0x45d953
push str._nReading_Master_Database:
call fcn.00437260
add esp, 4
push str.User_Id
mov eax, ebp
mov esi, 0x4a3290
call fcn.0045aa90
mov esi, dword [esp + 0xa0]
push esi
push 0x4a3290
call fcn.0043c3d0
mov edi, eax
mov eax, dword [0x4a1298]
add esp, 0xc
test al, 0x20
jne 0x45d989
cmp eax, 0x20
jne 0x45d9a0
push 0x4a3290
push 0x478550
call fcn.00437260
mov eax, dword [0x4a1298]
add esp, 8
cmp dword [esi], 0xe
jne 0x45d9bb
test al, 0x20
jne 0x45d9ae
cmp eax, 0x20
jne 0x45d9bb
push str._n___Note:_Redefining_existing_master_database.
call fcn.00437260
add esp, 4
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x90]
push eax
push ecx
push edx
push edi
call fcn.0043b9d0
mov eax, dword [str.5.2.0]
add esp, 0x10
cmp eax, ebx
jne 0x45d9ea
mov dword [edi + 0x14], ebx
jmp 0x45da1a
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x45d9f0
sub eax, edx
inc eax
push eax
call fcn.0040c100
mov dword [edi + 0x14], eax
mov ecx, dword [str.5.2.0]
add esp, 4
mov edx, eax
mov edi, edi
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x45da10
mov eax, dword [esp + 0x98]
mov dword [edi + 0x20], eax
cmp dword [esi], 0xe
lea ebx, [esp + 0x28]
je 0x45da2f
mov ebx, edi
lea esi, [ebx + 0xc]
push str.Master_Flags
mov eax, ebp
mov dword [esp + 0x18], ebx
call fcn.0045aa20
push str.User_Id
mov eax, ebp
mov esi, 0x4a3290
call fcn.0045aa90
mov eax, dword [0x4a1298]
add esp, 8
cmp eax, 1
jle 0x45da6e
push esi
push str._n___Generated_by:__s
call fcn.00437260
add esp, 8
push str.Host_Name
mov eax, ebp
mov esi, 0x4a3290
call fcn.0045aa90
mov eax, dword [0x4a1298]
add esp, 4
cmp eax, 1
jle 0x45da9a
push esi
push str._n___On_host:__s
call fcn.00437260
add esp, 8
push str.Created
mov eax, ebp
lea esi, [esp + 0x28]
call fcn.0045a9b0
mov eax, dword [0x4a1298]
add esp, 4
cmp eax, 1
jle 0x45dad4
mov ecx, dword [esp + 0x24]
push ecx
call fcn.00452da0
push eax
push str._n___Created:__s_n
call fcn.00437260
mov eax, dword [0x4a1298]
add esp, 0xc
lea edx, [esp + 0x28]
cmp ebx, edx
jne 0x45dae0
mov dword [esp + 0x14], edi
test al, 0x20
jne 0x45dae9
cmp eax, 0x20
jne 0x45daf6
push str._nReading_File_List...
call fcn.00437260
add esp, 4
mov eax, ebp
lea esi, [esp + 0x10]
mov edi, str.File_Count
call fcn.0045a930
mov eax, dword [esp + 0x10]
test eax, eax
mov dword [esp + 0x1c], 0
jle 0x45db90
mov eax, dword [esp + 0x14]
push 0
push 0
push 0
push 0
push eax
call fcn.0043b820
mov ebx, eax
add esp, 0x14
test ebx, ebx
je 0x45db77
mov eax, ebp
mov ecx, ebx
mov edi, str.File_Path
call fcn.0045ab10
lea ecx, [ebx + 4]
mov eax, ebp
mov edi, str.File_VP_Ver
call fcn.0045ab10
lea esi, [ebx + 8]
mov eax, ebp
mov edi, str.File_Ver
call fcn.0045a930
lea esi, [ebx + 0xc]
push str.File_Timestamp
mov eax, ebp
call fcn.0045a9b0
add esp, 4
mov dword [esp + 0x20], 1
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
inc eax
cmp eax, ecx
mov dword [esp + 0x1c], eax
jl 0x45db16
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x45db9c
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret
mov eax, dword [0x4a1298]
test al, 0x20
jne 0x45dbaa
cmp eax, 0x20
jne 0x45dbb7
push str._nReading_Class_Table...
call fcn.00437260
add esp, 4
mov eax, ebp
lea esi, [esp + 0x10]
mov edi, str.Class_Count
call fcn.0045a930
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
xor esi, esi
test eax, eax
jle 0x45dc00
mov edi, dword [esp + 0x9c]
lea esp, [esp]
push ebx
mov eax, ebp
call fcn.0045d4f0
push edi
push eax
lea ecx, [esp + 0x24]
push ecx
call fcn.0043ccf0
mov eax, dword [esp + 0x20]
add esp, 0x10
inc esi
cmp esi, eax
jl 0x45dbe0
mov eax, dword [0x4a1298]
test al, 0x20
jne 0x45dc0e
cmp eax, 0x20
jne 0x45dc1b
push str._nReading_Class_Lists...
call fcn.00437260
add esp, 4
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
xor edi, edi
test eax, eax
jle 0x45dc4b
lea esp, [esp]
mov edx, dword [esi + 0x14]
push edx
push ebx
mov eax, ebp
call fcn.0045d130
mov eax, dword [esp + 0x18]
mov esi, dword [esi + 0x18]
add esp, 8
inc edi
cmp edi, eax
jl 0x45dc30
mov eax, dword [esp + 0x18]
push eax
call fcn.0043b410
mov eax, dword [0x4a1298]
add esp, 4
test al, 0x20
jne 0x45dc66
cmp eax, 0x20
jne 0x45dc73
push str._nReading_Stor_Mgr_Table:
call fcn.00437260
add esp, 4
push 1
push 2
push 1
lea ecx, [esp + 0x1c]
push ecx
push ebp
call fcn.00413250
mov eax, dword [0x4a129c]
add esp, 0x14
test al, 1
jne 0x45dc95
cmp eax, 1
jne 0x45dcb1
mov edx, dword [esp + 0x10]
push edx
push str.Stor_Mgr_Count
push str._nRead_Int___________:__s:__d
call fcn.00437260
mov eax, dword [0x4a129c]
add esp, 0xc
test al, 2
mov edi, dword [0x4781fc]
jne 0x45dcc0
cmp eax, 2
jne 0x45dce7
push 0x47fbf8
call fcn.00437260
add esp, 4
call edi
cmp al, 0x78
je 0x45dcdf
cmp al, 0x58
je 0x45dcdf
cmp al, 0x71
je 0x45dcdf
cmp al, 0x51
jne 0x45dce7
push 0
call dword [0x4781e0]
mov eax, dword [esp + 0x10]
xor esi, esi
test eax, eax
jle 0x45dd05
push ebx
mov eax, ebp
call fcn.0045d7a0
mov eax, dword [esp + 0x14]
add esp, 4
inc esi
cmp esi, eax
jl 0x45dcf1
mov eax, dword [0x4a1298]
test al, 0x20
jne 0x45dd13
cmp eax, 0x20
jne 0x45dd20
push str._nReading_Schema_Table...
call fcn.00437260
add esp, 4
push 1
push 2
push 1
lea eax, [esp + 0x1c]
push eax
push ebp
call fcn.00413250
mov eax, dword [0x4a129c]
add esp, 0x14
test al, 1
jne 0x45dd42
cmp eax, 1
jne 0x45dd5e
mov ecx, dword [esp + 0x10]
push ecx
push str.Schema_Count
push str._nRead_Int___________:__s:__d
call fcn.00437260
mov eax, dword [0x4a129c]
add esp, 0xc
test al, 2
jne 0x45dd67
cmp eax, 2
jne 0x45dd8e
push 0x47fbf8
call fcn.00437260
add esp, 4
call edi
cmp al, 0x78
je 0x45dd86
cmp al, 0x58
je 0x45dd86
cmp al, 0x71
je 0x45dd86
cmp al, 0x51
jne 0x45dd8e
push 0
call dword [0x4781e0]
mov eax, dword [esp + 0x10]
xor esi, esi
test eax, eax
jle 0x45ddac
push ebx
mov eax, ebp
call fcn.0045d870
mov eax, dword [esp + 0x14]
add esp, 4
inc esi
cmp esi, eax
jl 0x45dd98
mov eax, dword [0x4a1298]
test al, 0x20
jne 0x45ddba
cmp eax, 0x20
jne 0x45ddc7
push str._nReading_Database_Table...
call fcn.00437260
add esp, 4
push 1
push 2
push 1
lea edx, [esp + 0x1c]
push edx
push ebp
call fcn.00413250
mov eax, dword [0x4a129c]
add esp, 0x14
test al, 1
jne 0x45dde9
cmp eax, 1
jne 0x45de05
mov eax, dword [esp + 0x10]
push eax
push str.Database_Count
push str._nRead_Int___________:__s:__d
call fcn.00437260
mov eax, dword [0x4a129c]
add esp, 0xc
test al, 2
jne 0x45de0e
cmp eax, 2
jne 0x45de35
push 0x47fbf8
call fcn.00437260
add esp, 4
call edi
cmp al, 0x78
je 0x45de2d
cmp al, 0x58
je 0x45de2d
cmp al, 0x71
je 0x45de2d
cmp al, 0x51
jne 0x45de35
push 0
call dword [0x4781e0]
mov eax, dword [esp + 0x10]
xor esi, esi
test eax, eax
jle 0x45de54
nop
push ebx
mov eax, ebp
call fcn.0045d610
mov eax, dword [esp + 0x14]
add esp, 4
inc esi
cmp esi, eax
jl 0x45de40
mov esi, dword [esp + 0x14]
lea ecx, [esi + 4]
push ecx
mov ebx, ebp
call fcn.0045d460
mov eax, dword [0x4a1298]
add esp, 4
test al, 0x20
jne 0x45de74
cmp eax, 0x20
jne 0x45de81
push 0x4786c0
call fcn.00437260
add esp, 4
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x74
ret