Function at 0x4b47c6
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x15c
mov eax, dword [0x5385d0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
push 6
mov esi, ecx
pop ecx
xor eax, eax
push 0x103
lea edi, [ebp - 0x3b]
push eax
mov byte [ebp - 0x3c], 0
rep stosd dword es:[edi], eax
mov byte [ebp - 0x148], al
lea eax, [ebp - 0x147]
push eax
mov dword [ebp - 0x150], esi
call fcn.004b7880
add esp, 0xc
xor eax, eax
and dword [ebp - 0x14c], eax
and dword [ebp - 0x158], eax
push 6
pop ecx
lea edi, [ebp - 0x1f]
mov byte [ebp - 0x20], 0
mov edx, esi
rep stosd dword es:[edi], eax
call fcn.0047ebaf
test eax, eax
je 0x4b4838
xor eax, eax
jmp 0x4b4bad
test ebx, ebx
je 0x4b4831
push esi
mov ecx, 0x104
lea eax, [ebp - 0x148]
call fcn.0047ebe1
pop ecx
mov edx, eax
call fcn.0047f68c
mov eax, edx
push eax
mov esi, 0x4d69b8
call fcn.0047ecf0
neg eax
sbb eax, eax
inc eax
xor edi, edi
cmp eax, edi
pop ecx
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x154], edi
je 0x4b48ba
push edi
push edi
push edi
push edi
push edi
lea eax, [ebp - 0x3c]
push eax
push 0x19
pop eax
call fcn.00441fbf
add esp, 0x18
lea edx, [ebp - 0x3c]
call fcn.0047ebaf
test eax, eax
jne 0x4b48ba
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x148]
push eax
call fcn.0047f83d
test eax, eax
pop ecx
pop ecx
je 0x4b48ba
mov dword [ebp - 0x154], 1
push edi
mov esi, ebx
call fcn.004b5bfd
pop ecx
lea edx, [ebx + 0x6c]
call fcn.0047ebaf
test eax, eax
jne 0x4b48d4
cmp dword [ebx + 0x24], edi
je 0x4b48df
push 0x19
lea ecx, [ebp - 0x20]
call fcn.0044249a
pop ecx
cmp dword [ebx + 0x88], edi
je 0x4b48ec
cmp dword [ebx + 0x24], edi
je 0x4b48fe
call fcn.004426d3
mov ecx, eax
call fcn.00444193
mov dword [ebp - 0x14c], eax
cmp dword [ebx + 0x2f8c], edi
jle 0x4b490b
cmp dword [ebx + 0x24], edi
je 0x4b4914
call fcn.0044258c
mov esi, eax
jmp 0x4b491a
mov esi, dword [ebp - 0x158]
lea edx, [ebp - 0x20]
call fcn.0047ebaf
test eax, eax
jne 0x4b4936
lea eax, [ebp - 0x20]
push eax
push 0x19
pop ecx
lea eax, [ebx + 0x6c]
call fcn.0047ebe1
pop ecx
mov eax, dword [ebp - 0x14c]
cmp eax, edi
je 0x4b4946
mov dword [ebx + 0x88], eax
cmp esi, edi
jle 0x4b4950
mov dword [ebx + 0x2f8c], esi
cmp dword [ebx + 0x90], 0
mov dword [ebx + 0x24], edi
mov edi, 0x300c
mov dword [ebx + 0x2f90], 1
mov dword [ebx], edi
jne 0x4b4974
and dword [ebx + 0x8c], 0
mov eax, dword [ebx + 0x8c]
mov esi, 0x1f4
cmp eax, esi
jle 0x4b4998
push esi
push eax
push str.:8:SaveSales___FAILED:_The_max_number_of_employees_has_been_exceeded___ld__ld
call fcn.00418e96
add esp, 0xc
mov dword [ebx + 0x8c], esi
cmp dword [ebp - 0x15c], 0
je 0x4b49c7
call fcn.004b7d0d
push eax
push 0
push 0
call fcn.004610ab
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x148]
push str._stemp_d.sls
push eax
call fcn.004b77ce
add esp, 0x10
xor edx, edx
xor eax, eax
cmp eax, 4
jb 0x4b49d5
cmp eax, 8
jb 0x4b49e9
cmp eax, 0x90
jl 0x4b49e3
cmp eax, 0x94
jl 0x4b49e9
movzx ecx, byte [ebx + eax]
add edx, ecx
inc eax
cmp eax, edi
jb 0x4b49cb
mov eax, dword [ebx + 0x8c]
add edx, edi
test eax, eax
jle 0x4b4a29
shl eax, 6
xor ecx, ecx
test eax, eax
jle 0x4b4a27
mov eax, dword [ebx + 0x8c]
shl eax, 6
mov dword [ebp - 0x158], eax
mov eax, dword [ebx + 0x90]
movzx esi, byte [eax + ecx]
add edx, esi
inc ecx
cmp ecx, dword [ebp - 0x158]
jl 0x4b4a18
add edx, ecx
mov dword [ebx + 4], edx
push 0x10c
push str..GetSalesSa7.c
mov edx, 0x4d57c8
lea ecx, [ebp - 0x148]
call fcn.0041e477
mov esi, eax
test esi, esi
pop ecx
pop ecx
je 0x4b4831
push esi
push 1
push edi
push ebx
call fcn.004b6868
add esp, 0x10
cmp eax, 1
je 0x4b4a9e
mov ecx, esi
call fcn.0041e8bf
cmp dword [ebp - 0x15c], 0
je 0x4b4a7f
lea eax, [ebp - 0x148]
call fcn.0041bfc0
push dword [ebp - 0x150]
lea eax, [ebp - 0x148]
push eax
push str.:6:SaveSales___FAILED_to_fwrite_to___s__for___s_
call fcn.00418e96
add esp, 0xc
jmp 0x4b4831
mov eax, dword [ebx + 0x8c]
xor edi, edi
cmp eax, edi
jle 0x4b4aec
mov dword [ebp - 0x14c], edi
mov eax, dword [ebx + 0x90]
add eax, dword [ebp - 0x14c]
push esi
push 1
push 0x40
push eax
call fcn.004b6868
add esp, 0x10
cmp eax, 1
je 0x4b4adc
push edi
push str.:7:SaveSales___FAILED:_fwrite___FAILED_to_write_cashier_index__d.
call fcn.00418e96
pop ecx
pop ecx
add dword [ebp - 0x14c], 0x40
inc edi
cmp edi, dword [ebx + 0x8c]
jl 0x4b4ab0
mov ecx, esi
call fcn.0041e8bf
xor edi, edi
cmp dword [ebp - 0x15c], edi
je 0x4b4baa
cmp dword [ebp - 0x154], edi
je 0x4b4b22
cmp dword [ebp + 8], edi
je 0x4b4b22
push 0x132
push str..GetSalesSa7.c
push 0x40
call fcn.00448320
add esp, 0xc
call fcn.004a6bcb
mov edx, dword [ebp - 0x150]
push edi
lea ecx, [ebp - 0x148]
mov esi, eax
call fcn.0041c06b
cmp eax, edi
pop ecx
jne 0x4b4b8a
call fcn.004a6bcb
sub eax, esi
cmp eax, 0x1388
jae 0x4b4b70
push 0xfa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [ebp - 0x150]
push edi
lea ecx, [ebp - 0x148]
call fcn.0041c06b
cmp eax, edi
pop ecx
jne 0x4b4b8a
push dword [ebp - 0x150]
lea eax, [ebp - 0x148]
push eax
push str.:7:SaveSales___FAILED_to_CopyFileSafe___s_____s___0__
call fcn.0041936e
add esp, 0xc
cmp dword [ebp - 0x154], edi
je 0x4b4b9f
cmp dword [ebp + 8], edi
je 0x4b4b9f
push 0x40
call fcn.004491a9
pop ecx
lea eax, [ebp - 0x148]
call fcn.0041bfc0
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.004b7140
leave
ret