Function at 0x4152ec
Capabilities:
Get file size

Disassembly:
push ebp
xor edx, edx
mov ebp, esp
push edi
push esi
lea eax, [ebp - 0x2d8]
push ebx
sub esp, 0x33c
mov dword [ebp - 0x30c], ecx
mov ebx, dword [ecx + 0x3c]
mov ecx, 0x2c0
call fcn.00413aff
mov eax, dword [ebp - 0x30c]
push ecx
push ecx
push str.htfcdg
push dword [eax + 0x58]
call fcn.0041520e
pop esi
pop edi
push 0x443593
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0x30c]
push dword [eax + 0x58]
call fcn.0042d220
and eax, 3
mov dword [ebp - 0x310], eax
pop eax
mov eax, dword [ebp - 0x30c]
pop edx
push 0x443595
push dword [eax + 0x58]
call fcn.0042d220
pop ecx
pop esi
push 0x443597
mov dword [ebp - 0x2d0], eax
mov eax, dword [ebp - 0x30c]
push dword [eax + 0x58]
call fcn.0042d220
pop edi
mov dword [ebp - 0x324], eax
pop eax
mov eax, dword [ebp - 0x30c]
push 0x443599
push dword [eax + 0x58]
call fcn.0042d220
mov dword [ebp - 0x2d8], eax
pop eax
mov eax, dword [ebp - 0x30c]
pop edx
push 0x44359b
push dword [eax + 0x58]
call fcn.0042d220
add esp, 0xc
push dword [ebp - 0x314]
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
mov dword [ebp - 0x320], eax
xor eax, eax
cmp dword [ebp - 0x310], 3
sete al
push dword [eax*4 + 0x438c04]
xor eax, eax
cmp dword [ebp - 0x310], 2
sete al
push dword [eax*4 + 0x438c04]
xor eax, eax
cmp dword [ebp - 0x310], 1
sete al
push dword [eax*4 + 0x438c04]
xor eax, eax
cmp dword [ebp - 0x310], 0
sete al
push dword [eax*4 + 0x438c04]
push 0x44359d
push ebx
call edi
add eax, ebx
add esp, 0x1c
push 0x66
push dword [ebp - 0x2d0]
push eax
call fcn.00415142
add esp, 0xc
push 0x64
push dword [ebp - 0x2d8]
push eax
call fcn.004151a3
pop ecx
pop edx
push str._To:
push eax
mov esi, eax
call edi
add esi, eax
add esp, 0xc
push 0x63
push dword [ebp - 0x324]
push esi
call fcn.00415142
add esp, 0xc
push 0x67
push dword [ebp - 0x320]
push eax
call fcn.004151a3
pop ecx
pop edx
push str._br__br__input_typesubmit_valueShow___input_typereset___form__hr_
mov esi, eax
push eax
call edi
pop ecx
pop edi
add esi, eax
mov ecx, dword [ebp - 0x30c]
sub esi, ebx
push esi
push ebx
call fcn.0042d3ac
pop eax
pop edx
test byte [0x46c97a], 0x80
jne 0x4154b0
push eax
mov ecx, dword [ebp - 0x30c]
push eax
push 3
push dword [0x433074]
call fcn.0042d3ac
pop eax
pop edx
mov eax, dword [ebp - 0x314]
cmp byte [eax], 0
je 0x415916
sub esp, 0xc
mov dword [ebp - 0x2fc], eax
lea eax, [ebp - 0x2fc]
push eax
call fcn.004125ec
pop edi
mov edi, 0xc0c0e0
mov dword [ebp - 0x334], eax
mov eax, dword [ebp - 0x310]
mov eax, dword [eax*4 + 0x438bd0]
mov dword [ebp - 0x328], eax
mov eax, dword [ebp - 0x310]
mov eax, dword [eax*4 + 0x438bc0]
mov dword [ebp - 0x338], eax
pop eax
push str._table_bgcolorf8f8ff_border1__tr__td_Date__td_
push ebx
call dword [sym.imp.USER32.dll_wsprintfA]
mov edx, str._td_Total__td_
lea esi, [ebx + eax]
lea eax, [ebx + 0x9000]
mov dword [ebp - 0x32c], eax
call fcn.00413ae7
lea eax, [ebx + 0x8000]
mov edx, str._td__2.2u_c__2.2u_c__td_
mov dword [ebp - 0x330], eax
call fcn.00413ae7
lea eax, [ebx + 0x900e]
add esp, 0x10
mov dword [ebp - 0x31c], 0
mov dword [ebp - 0x318], eax
lea eax, [ebx + 0x8018]
mov dword [ebp - 0x2fc], eax
mov eax, dword [ebp - 0x338]
mov ecx, dword [ebp - 0x31c]
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x415615
mov edx, dword [sym.imp.USER32.dll_wsprintfA]
push eax
push edi
push str._td_bgcolor_x__font_size1_classf3__s__font___td_
push esi
mov dword [ebp - 0x33c], edx
call edx
mov edx, dword [ebp - 0x33c]
add esi, eax
mov eax, edi
add esp, 0xc
and eax, 0xf0f8ff
push eax
push str._td_bgcolor_x___u__c__td_
push dword [ebp - 0x2fc]
call edx
mov edx, dword [ebp - 0x33c]
add dword [ebp - 0x2fc], eax
add esp, 0xc
push edi
push str._td_bgcolor_x__b___u__c__b___td_
push dword [ebp - 0x318]
call edx
add dword [ebp - 0x318], eax
mov ecx, 3
mov eax, dword [ebp - 0x31c]
inc dword [ebp - 0x31c]
add esp, 0x10
cdq
idiv ecx
mov eax, 0x301020
lea ecx, [edx*8]
sar eax, cl
xor edi, eax
add edi, 0x10101
and edi, 0x3c3c3c
or edi, 0xc3c3c3
jmp 0x415567
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
push ecx
push ecx
push str.__tr__tr_aligncenter_
push esi
call edi
add esi, eax
pop eax
pop edx
push str.__tr__tr_aligncenter_
sub esi, ebx
push dword [ebp - 0x2fc]
call edi
pop ecx
add dword [ebp - 0x2fc], eax
pop eax
push str.__tr___table__hr_
push dword [ebp - 0x318]
call edi
pop eax
pop edx
mov ecx, dword [ebp - 0x30c]
push esi
push ebx
call fcn.0042d3ac
pop ecx
xor ecx, ecx
pop esi
mov eax, dword [ebp - 0x328]
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x41570d
sub esp, 0xc
push eax
call fcn.0041511f
add esp, 0x10
mov byte [ebp + ecx - 0x2f8], al
inc ecx
jmp 0x415660
lea esi, [ebp - 0x2d8]
push eax
push eax
push 0x2a
push esi
call fcn.004152a6
add esp, 0xc
push esi
push dword [ebp - 0x330]
push ebx
call dword [sym.imp.USER32.dll_wvsprintfA]
mov ecx, dword [ebp - 0x30c]
push edx
push eax
push ebx
call fcn.0042d3ac
mov eax, dword [ebp - 0x2fc]
pop ecx
pop esi
test eax, eax
je 0x4156d3
push esi
push eax
push 0
push dword [0x451048]
call dword [sym.imp.KERNEL32.dll_HeapFree]
pop edi
sub esp, 0xc
push dword [ebp - 0x318]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
add esp, 0xc
mov eax, dword [ebp - 0x2d0]
inc eax
mov dword [ebp - 0x2d0], eax
cmp eax, 0x1f
jg 0x4158a0
mov eax, dword [ebp - 0x320]
cmp dword [ebp - 0x2d8], eax
je 0x415902
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
push esi
push dword [0x46c99c]
push 0x4431b5
push ebx
call edi
mov esi, eax
pop eax
pop edx
push 0x2e
push ebx
add esi, ebx
call fcn.00403476
add esp, 0x10
push dword [ebp - 0x2d0]
test eax, eax
push dword [ebp - 0x2d8]
cmovne esi, eax
push str._2.2u_2.2u
mov dword [ebp - 0x2fc], esi
push esi
call edi
pop ecx
pop esi
push 0
push ebx
call fcn.0040357d
pop edi
pop edx
mov dword [ebp - 0x318], eax
test eax, eax
jle 0x4156e5
push edx
push edx
push 0
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov esi, eax
lea eax, [eax + 0x14]
push ecx
push eax
call fcn.0042d128
add esp, 0x10
mov dword [ebp - 0x2fc], eax
test eax, eax
je 0x4156d3
push ecx
push esi
push eax
push dword [ebp - 0x318]
call fcn.00403603
mov edx, dword [ebp - 0x2fc]
mov ecx, 0x144
mov byte [edx + eax], 0
xor edx, edx
pop esi
lea eax, [ebp - 0x2cc]
call fcn.00413aff
push edi
push edi
push 0
push dword [ebp - 0x2fc]
mov dword [ebp - 0x2d4], 0
call fcn.0041522d
add esp, 0x10
mov edi, eax
test edi, edi
je 0x415687
xor esi, esi
mov eax, dword [ebp - 0x328]
mov eax, dword [eax + esi*4]
test eax, eax
je 0x415899
push edx
push edx
push ebx
push edi
call eax
mov edx, eax
add esp, 0x10
test eax, eax
je 0x415817
cmp byte [ebp + esi - 0x2f8], 0
mov eax, 1
cmove edx, eax
cmp dword [ebp - 0x310], 0
jne 0x41584c
mov eax, dword [ebp - 0x334]
cmp dword [edi + 8], eax
jne 0x415893
mov eax, edx
cdq
add dword [ebp + esi*8 - 0x2c8], eax
adc dword [ebp + esi*8 - 0x2c4], edx
add dword [ebp + esi*8 - 0x188], eax
adc dword [ebp + esi*8 - 0x184], edx
jmp 0x415893
cmp dword [ebp - 0x310], 3
mov dword [ebp - 0x31c], edx
jne 0x415878
push eax
push eax
push dword [ebp - 0x314]
push ebx
call fcn.004034dd
add esp, 0x10
mov edx, dword [ebp - 0x31c]
test eax, eax
jne 0x41582b
jmp 0x415893
push eax
push eax
push ebx
push dword [ebp - 0x314]
call fcn.0040341a
add esp, 0x10
mov edx, dword [ebp - 0x31c]
test eax, eax
jmp 0x415829
inc esi
jmp 0x4157e7
mov edi, dword [edi]
jmp 0x4157dd
mov dword [ebp - 0x2d0], 1
mov eax, dword [ebp - 0x2d8]
cmp dword [ebp - 0x320], eax
jne 0x4158eb
lea esi, [ebp - 0x188]
push eax
push eax
push 0x28
push esi
call fcn.004152a6
add esp, 0xc
push esi
push dword [ebp - 0x32c]
push ebx
call dword [sym.imp.USER32.dll_wvsprintfA]
mov ecx, dword [ebp - 0x30c]
push edx
push eax
push ebx
call fcn.0042d3ac
pop ecx
pop ebx
jmp 0x415916
inc eax
mov edx, 1
cmp eax, 0xc
cmovg eax, edx
mov dword [ebp - 0x2d8], eax
jmp 0x4156fb
mov eax, dword [ebp - 0x324]
cmp dword [ebp - 0x2d0], eax
jle 0x41570d
jmp 0x4158b8
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret