Function at 0x4a7e71
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x744
mov eax, dword [0x5c4e68]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov esi, 0x103
xor ebx, ebx
push esi
lea eax, [ebp - 0x4a7]
push ebx
push eax
mov byte [ebp - 0x4a8], bl
call fcn.005117f0
add esp, 0xc
push esi
lea eax, [ebp - 0x18f]
push ebx
push eax
mov byte [ebp - 0x190], bl
call fcn.005117f0
add esp, 0xc
push esi
lea eax, [ebp - 0x297]
push ebx
push eax
mov byte [ebp - 0x298], bl
call fcn.005117f0
add esp, 0xc
push 0x3f
lea eax, [ebp - 0x47]
push ebx
push eax
mov byte [ebp - 0x48], bl
call fcn.005117f0
add esp, 0xc
push 0x3f
lea eax, [ebp - 0x87]
push ebx
push eax
mov byte [ebp - 0x88], bl
call fcn.005117f0
add esp, 0xc
push 0x138
lea eax, [ebp - 0x5e4]
push ebx
push eax
mov dword [ebp - 0x740], ebx
mov dword [ebp - 0x73c], ebx
mov dword [ebp - 0x5e8], ebx
call fcn.005117f0
mov edi, dword [ebp + 8]
add esp, 0xc
lea eax, [ebp - 0x48]
push ebx
push eax
mov eax, edi
mov dword [ebp - 0x72c], ebx
mov dword [ebp - 0x744], edi
call fcn.0049cfc1
test eax, eax
pop ecx
pop ecx
jne 0x4a7fbc
lea eax, [ebp - 0x48]
call fcn.004c3ab2
cmp edi, 0xffffffff
je 0x4a7fbc
xor eax, eax
call fcn.004a7ca9
push eax
lea eax, [ebp - 0x48]
push eax
push dword [ebp + 0xc]
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:7:GetPayments__s___d__EAP:_GetStoreIdFromPamentDB___s_____s___FAILED.
call fcn.004265da
add esp, 0x14
call fcn.0048a53c
test eax, eax
je 0x4a7fbc
call fcn.00415e85
test eax, eax
jne 0x4a7fb5
push 0x50000
push ebx
push str.STORE_NOT_FOUND
mov ecx, edi
call fcn.00467c17
push eax
push str.The_store_with_ip_address___s__does_NOT_exist_
push ebx
call fcn.004c5467
add esp, 0xc
push eax
push ebx
call fcn.004160fd
add esp, 0x14
xor eax, eax
jmp 0x4a8877
mov ebx, 0x144
xor eax, eax
call fcn.004a88a1
test eax, eax
mov dword [ebp - 0x734], eax
jne 0x4a7feb
push 0x1b
mov ecx, edi
call fcn.00467c17
push eax
push str.:5:GetPayments__s__FAILED:_AllocatePaymentNodeArray__d__FAILED.
call fcn.004265da
add esp, 0xc
jmp 0x4a7fb5
call fcn.0048a53c
test eax, eax
mov esi, 0x104
mov ebx, str.c_config.lcg
je 0x4a825d
call fcn.00415e85
test eax, eax
jne 0x4a825d
cmp edi, 0xffffffff
je 0x4a8262
call fcn.0042ce8f
mov edx, eax
call fcn.004c3b34
test eax, eax
jne 0x4a825d
push esi
mov byte [ebp - 0x3a0], al
xor edi, edi
lea eax, [ebp - 0x39f]
push edi
push eax
call fcn.005117f0
add esp, 0xc
push 0x13c
lea eax, [ebp - 0x724]
push edi
push eax
mov dword [ebp - 0x728], edi
call fcn.005117f0
mov ecx, dword [ebp + 8]
add esp, 0xc
xor eax, eax
call fcn.00467c17
push eax
lea eax, [ebp - 0x48]
push eax
push str._PUT_SERVER_IP_HERE_COMMONUpload_Decompositions_
push str._s_s__s
lea edi, [esi + 1]
lea eax, [ebp - 0x3a0]
push edi
push eax
call fcn.004c53b7
lea eax, [ebp - 0x728]
push 1
push eax
lea ecx, [ebp - 0x3a0]
call fcn.0042ba68
mov dword [ebp - 0x730], eax
add esp, 0x20
lea eax, [ebp - 0x3a0]
call fcn.004c3ab2
cmp dword [ebp - 0x730], 0xffffffff
je 0x4a8125
jmp 0x4a80dc
lea eax, [ebp - 0x6fc]
call fcn.004c3ab2
mov ecx, dword [ebp - 0x730]
lea eax, [ebp - 0x728]
call fcn.0042bde5
test eax, eax
je 0x4a80e5
test byte [ebp - 0x728], 0x10
je 0x4a80bc
lea edx, [ebp - 0x6fc]
call fcn.004c3b34
test eax, eax
jne 0x4a811a
mov ecx, dword [ebp - 0x730]
lea eax, [ebp - 0x728]
call fcn.0042be60
lea eax, [ebp - 0x6fc]
push eax
mov ecx, edi
lea eax, [ebp - 0x3a0]
call fcn.004c3b66
pop ecx
mov eax, dword [ebp - 0x730]
call fcn.0042bea8
lea edx, [ebp - 0x3a0]
call fcn.004c3b34
test eax, eax
je 0x4a815c
push 0x251000
push str.NOT_SETUP_FOR_PAYMENT
push str.This_store_has_not_been_setup_for_payment_yet_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push dword [ebp - 0x734]
call fcn.00511758
pop ecx
jmp 0x4a7fb5
lea eax, [ebp - 0x3a0]
call fcn.004c425f
push ebx
push str.Misc_Files_
lea eax, [ebp - 0x3a0]
push eax
mov edi, 0x530490
push edi
lea eax, [ebp - 0x190]
push esi
push eax
call fcn.004c53b7
add esp, 0x18
xor eax, eax
push eax
push ebx
push str.ServerSync_
push eax
push eax
call fcn.00489f49
pop ecx
pop ecx
push eax
push edi
xor edi, edi
push edi
call fcn.004c5467
add esp, 0x14
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.0042a5f2
add esp, 0xc
push edi
push ebx
push 0x5304c0
push str.empty
push edi
call fcn.004c5467
pop ecx
pop ecx
mov edi, eax
call fcn.004682da
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x190]
push eax
call fcn.0042a5f2
add esp, 0xc
test eax, eax
jne 0x4a821c
lea edi, [ebp - 0x190]
call fcn.0042ad00
test eax, eax
push 0x251000
push str.No_Payment_Archive
je 0x4a820a
push str.FAILED_to_copy_this_stores_payment_archive_
jmp 0x4a820f
push str.This_store_does_NOT_have_a_payment_archive_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x4a8871
push 1
push ebx
push 0x5304c0
push str.empty
push 0
call fcn.004c5467
pop ecx
pop ecx
mov edi, eax
call fcn.004682da
pop ecx
pop ecx
push eax
call fcn.0042a7bf
mov eax, dword [ebp + 8]
pop ecx
pop ecx
mov dword [ebp - 0x744], eax
call fcn.0046297d
mov ecx, eax
call fcn.00467c70
mov dword [ebp + 8], eax
mov edi, eax
cmp edi, 0xffffffff
jne 0x4a828c
lea eax, [ebp - 0x298]
call fcn.004c3ab2
xor eax, eax
call fcn.004a7ca9
push eax
mov ecx, esi
lea eax, [ebp - 0x4a8]
call fcn.004c3b66
and dword [ebp + 8], 0
mov edi, dword [ebp + 8]
pop ecx
jmp 0x4a8303
test edi, edi
jne 0x4a82bd
push edi
lea edi, [ebp - 0x298]
call fcn.004683e7
pop ecx
push ebx
push str.P2_DC001
mov eax, edi
push eax
push 0x581670
lea eax, [ebp - 0x4a8]
push esi
push eax
call fcn.004c53b7
mov edi, dword [ebp + 8]
jmp 0x4a8300
push 0x5c7330
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push 0x569ce8
lea eax, [ebp - 0x298]
push esi
push eax
call fcn.004c53b7
add esp, 0x14
push ebx
push str.P2_DC001
lea eax, [ebp - 0x298]
push eax
push 0x581670
lea eax, [ebp - 0x4a8]
push esi
push eax
call fcn.004c53b7
add esp, 0x18
lea edx, [ebp - 0x298]
call fcn.004c3b34
test eax, eax
jne 0x4a8389
call fcn.004629bb
push eax
call fcn.0046299c
push eax
lea ecx, [ebp - 0x298]
call fcn.0046eb9d
test eax, eax
pop ecx
pop ecx
jge 0x4a8358
push str._GetLastError_
call fcn.004629bb
push eax
call fcn.0046299c
push eax
lea eax, [ebp - 0x298]
push eax
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:5:GetPayments__s_:_LogonToServer__s___s___s__failed_because_of_invalid_user_name_and_password:__s
jmp 0x4a8381
jle 0x4a8389
push str._GetLastError_
call fcn.004629bb
push eax
call fcn.0046299c
push eax
lea eax, [ebp - 0x298]
push eax
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:4:GetPayments__s_:_LogonToServer__s___s___s__failed:__s
call fcn.00426c01
add esp, 0x18
push 0xa
xor eax, eax
call fcn.004603fd
pop ecx
push eax
push ebx
push 0
push 0
call fcn.0048a119
pop ecx
pop ecx
push eax
push 0x58cba8
lea eax, [ebp - 0x190]
push esi
push eax
call fcn.004c53b7
push 0
lea eax, [ebp - 0x190]
push str.CCPAYCODE222
push eax
lea ecx, [ebp - 0x4a8]
call fcn.004033a2
add esp, 0x24
test eax, eax
jg 0x4a83fc
cmp dword [ebp + 0xc], 0
jne 0x4a8871
lea eax, [ebp - 0x4a8]
call fcn.004c3eab
push eax
call fcn.0042adad
test eax, eax
pop ecx
jne 0x4a8871
jmp 0x4a814b
mov ecx, ebx
lea ebx, [ebp - 0x190]
call fcn.004c42f0
push 0x1bb2
push str..ProcessCC.c
mov edx, 0x530488
mov ecx, ebx
call fcn.0042d2c6
mov esi, eax
xor ebx, ebx
cmp esi, ebx
pop ecx
pop ecx
mov dword [ebp - 0x738], esi
jne 0x4a8452
lea eax, [ebp - 0x190]
push eax
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:8:GetPayments__s__has_encountered_an_impossible_exception:_The_temp_local_file___s__could_not_be_read_accessed_
call fcn.004265da
add esp, 0xc
jmp 0x4a8871
push esi
push 1
lea eax, [ebp - 0x73c]
push 4
push eax
mov dword [ebp - 0x73c], ebx
call fcn.00511c63
add esp, 0x10
cmp dword [ebp - 0x73c], 0x1f4
jbe 0x4a84a1
push dword [ebp - 0x73c]
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:6:GetPayments__s__FAILED:_The_number_of_nodes_is_too_large:__u
call fcn.004265da
add esp, 0xc
mov ecx, esi
call fcn.0042d70e
jmp 0x4a8871
cmp dword [ebp - 0x73c], ebx
mov dword [ebp - 0x730], ebx
jle 0x4a881d
mov ebx, 0xc4
push 0x13c
lea eax, [ebp - 0x5e8]
push 0
push eax
call fcn.005117f0
add esp, 0xc
push dword [ebp - 0x738]
xor esi, esi
inc esi
push esi
lea eax, [ebp - 0x5e8]
push 4
push eax
call fcn.00511c63
push dword [ebp - 0x738]
lea eax, [ebp - 0x5e4]
push esi
push 4
push eax
call fcn.00511c63
push dword [ebp - 0x738]
lea eax, [ebp - 0x5e0]
push esi
push 4
push eax
call fcn.00511c63
mov eax, dword [ebp - 0x5e0]
add esp, 0x30
cmp eax, 0xa
jb 0x4a87ee
lea ecx, [eax + 0xa]
cmp dword [ebp - 0x5e8], ecx
jb 0x4a8800
cmp eax, 0x70
jbe 0x4a8539
push 0x70
pop eax
push dword [ebp - 0x738]
add eax, 0xfffffffc
push esi
push eax
lea eax, [ebp - 0x5dc]
push eax
call fcn.00511c63
add esp, 0x10
cmp dword [ebp - 0x5e0], 0x70
jbe 0x4a8591
push 0x70
push dword [ebp - 0x5e0]
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:8:GetPayments__s__EOP:_The_invoice_struct_size_has_DECREASED_from__d_to__d_bytes__
call fcn.00426c01
mov eax, dword [ebp - 0x5e0]
push esi
add eax, 0xffffff90
push eax
push dword [ebp - 0x738]
call fcn.005131f0
add esp, 0x1c
mov esi, dword [ebp - 0x5e8]
sub esi, dword [ebp - 0x5e0]
sub esi, 8
cmp esi, ebx
mov eax, esi
jb 0x4a85a8
mov eax, ebx
push dword [ebp - 0x738]
push 1
push eax
lea eax, [ebp - 0x570]
push eax
call fcn.00511c63
add esp, 0x10
cmp esi, ebx
jbe 0x4a85f1
push ebx
push esi
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:8:GetPayments__s__EOP:_The_struct_size_has_DECREASED_from__d_to__d_bytes__
call fcn.00426c01
push 1
add esi, 0xffffff3c
push esi
push dword [ebp - 0x738]
call fcn.005131f0
add esp, 0x1c
lea edx, [ebp - 0x5e8]
call fcn.004a8886
cmp eax, dword [ebp - 0x5e4]
je 0x4a8632
call fcn.004a8886
push eax
push dword [ebp - 0x5e4]
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:5:GetPayments__s__FAILED:_The_checksum_should_be__u_but_is__u.
call fcn.004265da
add esp, 0x10
inc dword [ebp - 0x72c]
jmp 0x4a87d4
push dword [ebp - 0x5dc]
call fcn.004f06e6
test eax, eax
pop ecx
je 0x4a865a
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:9:GetPayments__s__FAILED:_An_uninitialized_invoice_was_encountered_during_loading_
call fcn.004265da
pop ecx
pop ecx
jmp 0x4a8627
lea edx, [ebp - 0x48]
call fcn.004c3b34
test eax, eax
jne 0x4a8774
test edi, edi
je 0x4a8774
cmp edi, 0xffffffff
je 0x4a8774
cmp dword [ebp - 0x500], 0xa
mov esi, dword [ebp - 0x558]
jne 0x4a86de
test esi, esi
je 0x4a869d
lea edx, [ebp - 0x564]
call fcn.004c3b34
test eax, eax
je 0x4a86de
cmp dword [ebp - 0x740], 0
je 0x4a86fa
lea edx, [ebp - 0x88]
call fcn.004c3b34
test eax, eax
jne 0x4a86fa
mov eax, dword [ebp - 0x740]
mov dword [ebp - 0x558], eax
lea eax, [ebp - 0x88]
push eax
push 0xa
pop ecx
lea eax, [ebp - 0x564]
call fcn.004c3b66
mov esi, dword [ebp - 0x558]
jmp 0x4a86f9
lea eax, [ebp - 0x564]
push eax
push 0x40
pop ecx
lea eax, [ebp - 0x88]
mov dword [ebp - 0x740], esi
call fcn.004c3b66
pop ecx
lea edx, [ebp - 0x564]
call fcn.004c3b34
test eax, eax
jne 0x4a8774
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x564]
push eax
call fcn.004c48c1
test eax, eax
pop ecx
pop ecx
jne 0x4a8774
lea eax, [ebp - 0x564]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.004c48c1
test eax, eax
pop ecx
pop ecx
jne 0x4a8774
test esi, esi
je 0x4a8774
cmp esi, edi
je 0x4a8774
cmp esi, dword [ebp - 0x744]
je 0x4a8774
mov ecx, esi
call fcn.00467c17
push eax
lea eax, [ebp - 0x564]
push eax
lea eax, [ebp - 0x48]
push eax
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:7:GetPayments__s__EAP:_A_payment_from_another_store_has_been_detected_at__s:__s__s
call fcn.00426c01
add esp, 0x14
jmp 0x4a8627
mov eax, dword [ebp - 0x73c]
cmp eax, 0x1b
jb 0x4a878e
add eax, 0xffffffe5
cmp dword [ebp - 0x730], eax
jle 0x4a8627
lea eax, [ebp - 0x5e8]
push eax
call fcn.0049f116
test eax, eax
pop ecx
je 0x4a8627
mov edi, dword [ebp - 0x730]
sub edi, dword [ebp - 0x72c]
mov eax, dword [ebp - 0x734]
mov ecx, dword [eax + 0x78]
imul edi, edi, 0x13c
mov dword [ebp - 0x570], ecx
push 0x4f
add edi, eax
pop ecx
lea esi, [ebp - 0x5e8]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp + 8]
inc dword [ebp - 0x730]
mov eax, dword [ebp - 0x730]
cmp eax, dword [ebp - 0x73c]
jl 0x4a84b8
jmp 0x4a881d
push eax
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:9:GetPayments__s__FAILED:_The_invoice_struct_size___d__could_not_be_loaded_
jmp 0x4a8815
push dword [ebp - 0x5e8]
xor eax, eax
mov ecx, edi
call fcn.00467c17
push eax
push str.:9:GetPayments__s__FAILED:_The_struct_size___d__could_not_be_loaded_
call fcn.004265da
add esp, 0xc
mov ecx, dword [ebp - 0x730]
sub ecx, dword [ebp - 0x72c]
xor edx, edx
test ecx, ecx
jle 0x4a8849
mov eax, dword [ebp - 0x734]
add eax, 0x80
mov dword [eax], edx
mov dword [eax - 4], ecx
inc edx
add eax, 0x13c
cmp edx, ecx
jl 0x4a883a
mov ecx, dword [ebp - 0x738]
call fcn.0042d70e
lea eax, [ebp - 0x190]
call fcn.0042a76b
lea eax, [ebp - 0x190]
call fcn.004c3eab
mov ecx, eax
call fcn.00429cd6
mov eax, dword [ebp - 0x734]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0051291c
leave
ret