Function at 0x402830
Capabilities:
Read file on windows

Disassembly:
push ebp
lea ebp, [esp - 0xe1c]
sub esp, 0xe1c
push 0xfffffffffffffffe
push 0x44a340
push 0x428ab0
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
mov eax, dword [0x452440]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp + 0xe18], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov eax, dword [ebp + 0xe24]
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp + 0xe28]
cmp byte [0x4549b0], 1
jne 0x4028bf
push str.GetAttachFileInTempFolder:_Entry
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x3ad
mov edi, str..QHUnPack.cpp
push edi
mov esi, str.c:logsqhunpack.log
push esi
call fcn.004014fc
add esp, 0x18
jmp 0x4028c9
mov edi, str..QHUnPack.cpp
mov esi, str.c:logsqhunpack.log
cmp dword [ebp - 0x1c], 0
je 0x402e55
test ebx, ebx
je 0x402e55
cmp dword [0x45507c], 1
jne 0x4028ec
push 0x65
pop eax
jmp 0x402e74
cmp byte [0x4549b0], 1
jne 0x40291c
push str.GetAttachFileInTempFolder:_calling_ZeroMemory
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x3c2
push edi
push esi
call fcn.004014fc
add esp, 0x18
push 0x208
push 0
lea eax, [ebp + 0x208]
push eax
call fcn.00425220
push ebx
lea eax, [ebp + 0x208]
push eax
call fcn.0042541c
push str.QHDATA.7z
lea eax, [ebp + 0x208]
push eax
call fcn.004253ee
mov eax, dword [ebp + 0xe2c]
mov ecx, dword [ebp + 0xe30]
add eax, ecx
mov dword [ebp - 0x20], eax
mov ebx, 0x104
push ebx
lea eax, [ebp + 0x514]
push eax
push dword [ebp - 0x1c]
call fcn.004025e1
add esp, 0x28
cmp byte [0x4549b0], 1
jne 0x4029b0
lea eax, [ebp + 0x514]
push eax
push dword [ebp - 0x1c]
push str.GetAttachFileInTempFolder:_File_path_Widechar___s___UTF_8___S_
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x3d0
push edi
push esi
call fcn.004014fc
add esp, 0x20
push 0
push 0x8000
lea eax, [ebp + 0x514]
push eax
call fcn.004016d1
add esp, 0xc
mov dword [ebp - 0x24], eax
cmp eax, 0xffffffff
je 0x402e72
push eax
call fcn.0043b90c
pop ecx
mov dword [ebp - 0x1c], eax
cmp byte [0x4549b0], 1
jne 0x402a13
push dword [ebp - 0x20]
push eax
push str.GetAttachFileInTempFolder:_Actual_Len___d___Calculated_Len___d_
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x3e2
push edi
push esi
call fcn.004014fc
add esp, 0x20
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jge 0x402a4b
push 0x4504a0
push str.The_Installation_files_seems_to_be_corrupt._nPlease_contact_your_vendor.
push str._s_n_s
lea eax, [ebp]
push eax
call fcn.00426df4
add esp, 0x10
push 0x10
push 0x4500b0
lea eax, [ebp]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x402e72
cmp byte [0x4549b0], 1
jne 0x402a82
lea eax, [ebp + 0x208]
push eax
push str.GetAttachFileInTempFolder:_Opening_attch_file___s_
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x404
push edi
push esi
call fcn.004014fc
add esp, 0x1c
push ebx
lea eax, [ebp + 0x410]
push eax
lea eax, [ebp + 0x208]
push eax
call fcn.004025e1
push 0x180
push 0x8102
lea eax, [ebp + 0x410]
push eax
call fcn.004016d1
add esp, 0x18
mov dword [ebp - 0x20], eax
cmp eax, 0xffffffff
jne 0x402afc
cmp byte [0x4549b0], 1
jne 0x402aee
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.GetAttachFileInTempFolder:_Unpack_open_failed__Err_____u_
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x414
push edi
push esi
call fcn.004014fc
add esp, 0x1c
push dword [ebp - 0x24]
call fcn.00425a6a
pop ecx
jmp 0x402e72
mov ecx, dword [ebp + 0xe30]
mov eax, ecx
cdq
and edx, 0xfff
add eax, edx
sar eax, 0xc
mov dword [ebp - 0x2c], eax
and ecx, 0x80000fff
jns 0x402b23
dec ecx
or ecx, 0xfffff000
inc ecx
mov dword [ebp - 0x1c], ecx
cmp byte [0x4549b0], 1
jne 0x402b58
push ecx
push eax
push str.GetAttachFileInTempFolder:_NoOfPages___d___NoOfLines___d_
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x427
push edi
push esi
call fcn.004014fc
add esp, 0x20
xor ebx, ebx
push ebx
push dword [ebp + 0xe2c]
push dword [ebp - 0x24]
call fcn.004289cc
add esp, 0xc
cmp byte [0x4549b0], 1
jne 0x402ba3
lea eax, [ebp + 0x410]
push eax
push str.GetAttachFileInTempFolder:_szAttachFileName___S
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x433
push edi
push esi
call fcn.004014fc
add esp, 0x1c
mov dword [ebp - 4], ebx
mov dword [ebp - 0x28], ebx
mov ebx, 0x1000
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x2c]
jge 0x402c8b
cmp dword [0x45507c], 1
jne 0x402bcf
mov dword [ebp - 4], 0xfffffffe
jmp 0x4028e4
push ebx
push 0x4537a8
push dword [ebp - 0x24]
call fcn.0042885a
add esp, 0xc
cmp eax, ebx
je 0x402c3c
cmp byte [0x4549b0], 1
jne 0x402c1e
call fcn.00426dab
push dword [eax]
push dword [ebp - 0x28]
push str.GetAttachFileInTempFolder:_read_source__FAILED_i___d_dwError___u_closing_both_files
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x453
push edi
push esi
call fcn.004014fc
add esp, 0x20
push dword [ebp - 0x24]
call fcn.00425a6a
push dword [ebp - 0x20]
call fcn.00425a6a
pop ecx
pop ecx
mov dword [ebp - 4], 0xfffffffe
jmp 0x402e72
push ebx
push 0x4537a8
push dword [ebp - 0x20]
call fcn.0042626a
add esp, 0xc
cmp eax, ebx
je 0x402c83
cmp byte [0x4549b0], 1
jne 0x402c1e
call fcn.00426dab
push dword [eax]
push dword [ebp - 0x28]
push str.GetAttachFileInTempFolder:_write_dest_FAILED_i___d_Error___u_closing_both_files
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x466
jmp 0x402c14
inc dword [ebp - 0x28]
jmp 0x402bae
mov dword [ebp - 4], 0xfffffffe
jmp 0x402cc0
cmp byte [0x4549b0], 1
jne 0x402cf0
push str.GetAttachFileInTempFolder:_after_the_loop__calling_read
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x477
push edi
push esi
call fcn.004014fc
add esp, 0x18
push dword [ebp - 0x1c]
mov ebx, 0x4537a8
push ebx
push dword [ebp - 0x24]
call fcn.0042885a
add esp, 0xc
cmp eax, dword [ebp - 0x1c]
je 0x402d4f
cmp byte [0x4549b0], 1
jne 0x402d39
push str.GetAttachFileInTempFolder:_read_source_FAILED_2
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x480
push edi
push esi
call fcn.004014fc
add esp, 0x18
push dword [ebp - 0x24]
call fcn.00425a6a
push dword [ebp - 0x20]
call fcn.00425a6a
pop ecx
jmp 0x402af6
cmp byte [0x4549b0], 1
jne 0x402d82
push dword [ebp - 0x1c]
push str.GetAttachFileInTempFolder:_after_the_loop_calling_write_NoOfLines___d
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x48b
push edi
push esi
call fcn.004014fc
add esp, 0x1c
push dword [ebp - 0x1c]
push ebx
push dword [ebp - 0x20]
call fcn.0042626a
add esp, 0xc
cmp eax, dword [ebp - 0x1c]
je 0x402dc1
cmp byte [0x4549b0], 1
jne 0x402d39
push str.GetAttachFileInTempFolder:_read_dest_FAILED_2
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x494
jmp 0x402d2f
cmp byte [0x4549b0], 1
jne 0x402df1
push str.GetAttachFileInTempFolder:_Closing_dest_file
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x49f
push edi
push esi
call fcn.004014fc
add esp, 0x18
push dword [ebp - 0x20]
call fcn.00425a6a
pop ecx
cmp byte [0x4549b0], 1
jne 0x402e2a
push str.GetAttachFileInTempFolder:_Closing_Source_file
lea eax, [ebp + 0x618]
push eax
call fcn.00426df4
lea eax, [ebp + 0x618]
push eax
push 0x4a7
push edi
push esi
call fcn.004014fc
add esp, 0x18
push dword [ebp - 0x24]
call fcn.00425a6a
pop ecx
cmp byte [0x4549b0], 1
jne 0x402e50
push str.GetAttachFileInTempFolder:_Exit.
push 0x4ae
push edi
push esi
call fcn.004014fc
add esp, 0x10
xor eax, eax
inc eax
jmp 0x402e74
cmp byte [0x4549b0], 1
jne 0x402e72
push str.NULL_parameter_found.
push 0x3b4
push edi
push esi
call fcn.004014fc
add esp, 0x10
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0xe18]
xor ecx, ebp
call fcn.0042529a
add ebp, 0xe1c
leave
ret