Function at 0x487dff
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x40c
mov eax, dword [0x5345d0]
xor eax, esp
mov dword [esp + 0x408], eax
mov eax, dword [ebp + 0x18]
push ebx
push esi
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x1c]
xor ebx, ebx
push edi
mov dword [esp + 0x14], eax
xor eax, eax
mov esi, 0x103
lea edi, [esp + 0xf1]
push esi
mov byte [esp + 0xf4], bl
stosd dword es:[edi], eax
lea eax, [esp + 0xfd]
push ebx
push eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x44], ebx
mov byte [esp + 0x104], bl
call fcn.004b53e0
add esp, 0xc
push esi
lea eax, [esp + 0x205]
push ebx
push eax
mov byte [esp + 0x20c], bl
call fcn.004b53e0
add esp, 0xc
push esi
lea eax, [esp + 0x30d]
push ebx
push eax
mov byte [esp + 0x314], bl
call fcn.004b53e0
xor eax, eax
lea edi, [esp + 0x3a]
mov word [esp + 0x38], bx
stosw word es:[edi], ax
lea edi, [esp + 0x42]
add esp, 0xc
mov word [esp + 0x34], bx
xor ecx, ecx
stosw word es:[edi], ax
call fcn.00487df3
mov dword [esp + 0x48], eax
xor eax, eax
cmp dword [esp + 0x14], ebx
je 0x48869d
call fcn.00487cb0
lea ebx, [esp + 0x38]
lea esi, [esp + 0x3c]
call fcn.0040bd3e
call fcn.0040c04f
mov dword [esp + 0x4c], eax
call fcn.0040c0ad
call fcn.0041caca
mov edx, eax
call fcn.0047c3ca
test eax, eax
jne 0x487f47
push str.Counting_ArchiveRaw_Data_
call fcn.0041caca
push eax
push 0x4d5d50
mov esi, 0x104
lea eax, [esp + 0x314]
push esi
push eax
call fcn.0047da40
mov ebx, dword [esp + 0x28]
add esp, 0x14
cmp dword [ebx + 0x6c8a0], 0
je 0x487f57
push str.Z:INVALID_STORE_UP_PATH_
lea eax, [esp + 0x30c]
push esi
push eax
call fcn.0047da40
add esp, 0xc
jmp 0x487f57
lea eax, [esp + 0x308]
call fcn.0047c34d
mov ebx, dword [esp + 0x14]
push dword [esp + 0x28]
call fcn.0040c34e
pop ecx
push eax
lea eax, [esp + 0xf4]
push eax
call fcn.004b4780
mov edi, dword [ebp + 0xc]
inc edi
push str.Waiting_for_till_sheet_access...
push edi
push dword [ebp + 8]
mov dword [esp + 0x3c], edi
call fcn.0040d7e9
add esp, 0x14
call fcn.0045eb51
test eax, eax
je 0x487fb0
call fcn.004a4ba8
push 0x7f3
push str..TillSheet.c
push 0x11
mov dword [esp + 0x28], eax
call fcn.00443703
add esp, 0xc
jmp 0x487fef
push 0x7f5
mov esi, str..TillSheet.c
push esi
push 1
call fcn.00443703
add esp, 0xc
push str.Waiting_for_till_sheet_lock...
push edi
push dword [ebp + 8]
call fcn.0040d7e9
add esp, 0xc
push 0x7f9
push esi
push 1
call fcn.004463fb
add esp, 0xc
call fcn.004a4ba8
mov dword [esp + 0x1c], eax
call fcn.0045eb51
test eax, eax
je 0x488001
call fcn.004a4ba8
mov dword [esp + 0xc], eax
push 0x5168bc
push edi
push dword [ebp + 8]
call fcn.0040d7e9
add esp, 0xc
push str._n_nLoading_Till_Sheets...
call fcn.0040decb
mov eax, dword [ebx]
and dword [esp + 0x14], 0
pop ecx
lea ecx, [eax + 2]
test ecx, ecx
jle 0x48857a
cmp dword [esp + 0x10], eax
jl 0x48803c
sub eax, dword [esp + 0x10]
dec eax
jmp 0x488040
mov eax, dword [esp + 0x10]
test eax, eax
mov dword [esp + 0x18], eax
jl 0x488056
mov ecx, dword [esp + 0x48]
cmp dword [ebx + eax*4 + 4], ecx
je 0x488567
lea ecx, [esp + 0xf8]
call fcn.0048a4ad
lea esi, [esp + 0xf8]
call fcn.0047c6f9
sub esp, 0x10
lea esi, [ebp + 8]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0043ea9f
lea ecx, [esp + 0x108]
mov dword [esp + 0x54], eax
call fcn.0047c355
lea eax, [esp + 0x108]
push eax
mov eax, dword [ebp + 0xc]
push 0x4d45f8
add eax, 2
push eax
push dword [ebp + 8]
call fcn.0040d7e9
add esp, 0x20
call fcn.0045eb51
test eax, eax
je 0x4880df
call fcn.0040eb6c
test eax, eax
jne 0x4880df
push dword [esp + 0x18]
mov ebx, dword [esp + 0x18]
lea eax, [esp + 0xfc]
call fcn.0048a519
xor ebx, ebx
mov byte [esp + 0x204], bl
jmp 0x488105
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
lea ecx, [esp + 0xf8]
call fcn.0048a4ad
push dword [esp + 0x18]
lea eax, [esp + 0x204]
call fcn.0048a519
xor ebx, ebx
pop ecx
call fcn.0045eb51
test eax, eax
jne 0x488150
call fcn.004a4ba8
sub eax, dword [esp + 0x1c]
cmp eax, 0x1388
jb 0x488150
push 1
call fcn.00447288
mov dword [esp], 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x827
push str..TillSheet.c
push 1
call fcn.004463fb
add esp, 0xc
call fcn.004a4ba8
mov dword [esp + 0x1c], eax
lea edx, [esp + 0x308]
call fcn.0047c3ca
test eax, eax
jne 0x48821a
call fcn.004a4ba8
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x30c]
push eax
push esi
mov ecx, edi
call fcn.00487461
add dword [esp + 0x2c], eax
add esp, 0xc
call fcn.0045eb51
test eax, eax
jne 0x4881b2
jmp 0x4881a4
push 0xf
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.004a4ba8
sub eax, dword [esp + 0xc]
cmp eax, 0x19
jb 0x48819c
lea eax, [edi + esi*4 + 0x4f4]
mov ecx, dword [eax]
cmp ecx, ebx
je 0x488519
cmp dword [ecx + 8], ebx
jle 0x488519
mov eax, ecx
mov ecx, dword [eax + 8]
imul ecx, ecx, 0x1234
sub esp, 0x10
lea esi, [ecx + eax - 0x1218]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004a3bac
mov esi, eax
push esi
push dword [esp + 0x40]
call fcn.004a3ec4
add esp, 0x18
test eax, eax
je 0x488519
push 0xffffffffffffffb8
push esi
mov dword [esp + 0x34], esi
call fcn.004a40a3
pop ecx
pop ecx
mov dword [esp + 0x34], eax
jmp 0x488519
call fcn.0045eb51
test eax, eax
jne 0x48822c
call fcn.004a4ba8
mov dword [esp + 0xc], eax
lea eax, [esp + 0xf8]
push eax
push dword [esp + 0x1c]
push dword [esp + 0x1c]
call fcn.004864a7
add esp, 0xc
cmp byte [esp + 0x200], bl
mov dword [esp + 0x24], eax
je 0x48835b
call fcn.0040eb6c
test eax, eax
je 0x48835b
lea eax, [esp + 0xf8]
push eax
lea esi, [esp + 0x94]
call fcn.0041bb69
mov esi, eax
lea edi, [esp + 0x74]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop ecx
lea eax, [esp + 0x200]
movsd dword es:[edi], dword [esi]
push eax
lea esi, [esp + 0xe4]
call fcn.0041bb69
mov esi, eax
lea edi, [esp + 0x54]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop ecx
push ebx
xor edx, edx
lea ecx, [esp + 0xfc]
movsd dword es:[edi], dword [esi]
call fcn.0041b6bd
pop ecx
push ebx
xor edx, edx
lea ecx, [esp + 0x204]
mov dword [esp + 0x44], eax
call fcn.0041b6bd
cmp dword [esp + 0x44], eax
pop ecx
mov dword [esp + 0x30], eax
jne 0x488300
sub esp, 0x10
mov edi, esp
lea esi, [esp + 0x60]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
lea esi, [esp + 0x90]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004a428c
push eax
call fcn.004b7159
add esp, 0x24
cmp eax, 0x493e0
jle 0x48835b
sub esp, 0x10
mov edi, esp
lea esi, [esp + 0x60]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x108]
push eax
movsd dword es:[edi], dword [esi]
push ebx
sub esp, 0x10
lea esi, [esp + 0x78]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004a4452
add esp, 0x14
push eax
push ebx
sub esp, 0x10
lea esi, [esp + 0x9c]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004a4452
add esp, 0x14
push eax
push dword [esp + 0x4c]
push dword [esp + 0x60]
push str.:9:TillSheet_Sync_Discrepancy:__ld____ld___s____s:__s:__s
call fcn.004178df
add esp, 0x28
cmp dword [esp + 0x24], ebx
jne 0x4884a0
cmp byte [esp + 0x200], bl
je 0x4884a0
lea eax, [esp + 0x200]
push eax
push dword [esp + 0x1c]
push dword [esp + 0x1c]
call fcn.004864a7
add esp, 0xc
cmp eax, ebx
mov dword [esp + 0x24], eax
jle 0x4884a0
lea eax, [esp + 0xf8]
push eax
lea esi, [esp + 0xb4]
call fcn.0041bb69
mov esi, eax
lea edi, [esp + 0x84]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop ecx
lea eax, [esp + 0x200]
movsd dword es:[edi], dword [esi]
push eax
lea esi, [esp + 0xc4]
call fcn.0041bb69
mov esi, eax
lea edi, [esp + 0x64]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop ecx
lea esi, [esp + 0xa0]
call fcn.004a57e9
push 0xffffffffffffffe2
sub esp, 0x10
mov esi, eax
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [esp + 0xe4]
push eax
movsd dword es:[edi], dword [esi]
call fcn.004a40f5
add esp, 8
mov edi, esp
lea esi, [esp + 0x70]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
mov esi, eax
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [esp + 0x50], eax
movsd dword es:[edi], dword [esi]
call fcn.004a3f09
add esp, 0x20
test eax, eax
jne 0x48844e
sub esp, 0x10
mov edi, esp
lea esi, [esp + 0x90]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x40]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004a3f09
add esp, 0x20
test eax, eax
je 0x4884a0
push ebx
sub esp, 0x10
lea esi, [esp + 0x74]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004a4452
add esp, 0x14
push eax
push ebx
sub esp, 0x10
lea esi, [esp + 0x98]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.004a4452
add esp, 0x14
push eax
push dword [esp + 0x2c]
lea eax, [esp + 0x20c]
push eax
lea eax, [esp + 0x108]
push eax
push str.:4:LoadTillSheets___failed:__s:_Trying_backup:__s:_iTillsLoaded_d____s____s
call fcn.004178df
add esp, 0x18
mov eax, dword [esp + 0x24]
add dword [esp + 0x20], eax
call fcn.0045eb51
test eax, eax
jne 0x488519
cmp dword [esp + 0x10], 2
jg 0x4884db
call fcn.004a4ba8
mov esi, 0xb6
jmp 0x4884d1
push 0xf
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.004a4ba8
sub eax, dword [esp + 0xc]
cmp eax, esi
jb 0x4884c4
jmp 0x488519
cmp dword [esp + 0x10], 7
jl 0x4884f3
cmp dword [esp + 0x10], 0xc
jge 0x488519
jmp 0x48850b
push 0xf
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.004a4ba8
sub eax, dword [esp + 0xc]
cmp eax, 0x5c
jb 0x4884eb
jmp 0x488519
push 0xf
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.004a4ba8
sub eax, dword [esp + 0xc]
cmp eax, 0x20
jb 0x488503
push 0x516988
call fcn.004b4450
pop ecx
mov ecx, dword [esp + 0x44]
sub ecx, eax
cmp dword [esp + 0x10], ecx
jge 0x488554
push 0x4d3b84
push dword [esp + 0x2c]
push str._Loading_till_sheets..
call fcn.004b4450
add eax, dword [ebp + 8]
pop ecx
add eax, dword [esp + 0x18]
push eax
call fcn.0040d7e9
add esp, 0xc
push 0x4d3b84
call fcn.0040decb
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x18]
pop ecx
mov eax, dword [ebx]
inc dword [esp + 0x10]
lea ecx, [eax + 2]
cmp dword [esp + 0x10], ecx
jl 0x48802f
push 0x4e58a4
call fcn.0040decb
mov dword [esp], str.Unlocking_server...
push edi
push dword [ebp + 8]
call fcn.0040d7e9
push ecx
lea esi, [ebp + 8]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0043ea9f
push eax
mov eax, dword [ebp + 0xc]
add eax, 2
push eax
push dword [ebp + 8]
mov ecx, 0x4d4cf4
call fcn.0040c709
add esp, 0x1c
call fcn.0045eb51
test eax, eax
je 0x48861e
call fcn.004a4ba8
mov esi, dword [esp + 0x1c]
sub eax, esi
cmp eax, 0x2710
jbe 0x4885ef
call fcn.004a4ba8
sub eax, dword [esp + 0xc]
push eax
call fcn.004a4ba8
sub eax, esi
push eax
push str.:2:LoadAllEmpTillSheets___took_too_long:__ldms____ldms.
jmp 0x488614
call fcn.004a4ba8
sub eax, esi
cmp eax, 0x7d0
jbe 0x48866d
call fcn.004a4ba8
sub eax, dword [esp + 0xc]
push eax
call fcn.004a4ba8
sub eax, esi
push eax
push str.:1:LoadAllEmpTillSheets___took__ldms____ldms.
call fcn.00417db7
add esp, 0xc
jmp 0x48866d
call fcn.004a4ba8
push 1
mov edi, eax
call fcn.00447288
pop ecx
call fcn.004a4ba8
mov esi, 0xfa
jmp 0x488646
push 0xf
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.004a4ba8
sub eax, edi
cmp eax, esi
jb 0x488639
call fcn.004a4ba8
mov esi, 0x7d0
jmp 0x488665
push 0x19
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.004a4ba8
sub eax, dword [esp + 0x1c]
cmp eax, esi
jb 0x488658
push dword [esp + 0x38]
push dword [esp + 0x40]
call fcn.0040bc78
cmp dword [esp + 0x54], 0
pop ecx
pop ecx
je 0x48868b
push 0x64
pop eax
call fcn.0040c1ae
lea eax, [esp + 0xf0]
push eax
call fcn.0040c34e
mov eax, dword [esp + 0x24]
pop ecx
mov ecx, dword [esp + 0x414]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004b4c95
mov esp, ebp
pop ebp
ret 0x18