.text:00000000 ; .text:00000000 ; +-------------------------------------------------------------------------+ .text:00000000 ; ¦ This file is generated by The Interactive Disassembler (IDA) ¦ .text:00000000 ; ¦ Copyright (c) 2006 by DataRescue sa/nv, ¦ .text:00000000 ; ¦ Licensed to: University of Wisconsin, 5 users std, edu, 09/2004 ¦ .text:00000000 ; +-------------------------------------------------------------------------+ .text:00000000 ; .text:00000000 ; File Name : C:\Junghee\TSL_HOME\TSL.clean\TSL\analyzer\TSLFiles\DASH\regression\cert\underflow.obj .text:00000000 ; Format : COFF (X386MAGIC) .text:00000000 ; includelib "MSVCRTD" .text:00000000 ; includelib "OLDNAMES" .text:00000000 .text:00000000 .686p .text:00000000 .mmx .text:00000000 .model flat .text:00000000 .text:00000000 ; --------------------------------------------------------------------------- .text:00000000 .text:00000000 ; Segment type: Pure code .text:00000000 _text segment para public 'CODE' use32 .text:00000000 assume cs:_text .text:00000000 assume es:nothing, ss:nothing, ds:nothing, fs:nothing, gs:nothing .text:00000000 .text:00000000 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ .text:00000000 .text:00000000 ; Attributes: bp-based frame .text:00000000 .text:00000000 public _reachable .text:00000000 _reachable proc near ; CODE XREF: _func+5Ep .text:00000000 push ebp .text:00000001 mov ebp, esp .text:00000003 sub esp, 40h .text:00000006 push ebx .text:00000007 push esi .text:00000008 push edi .text:00000009 pop edi .text:0000000A pop esi .text:0000000B pop ebx .text:0000000C mov esp, ebp .text:0000000E pop ebp .text:0000000F retn .text:0000000F _reachable endp .text:0000000F .text:0000000F _text ends .text:0000000F .text:00000010 ; --------------------------------------------------------------------------- .text:00000010 .text:00000010 ; Segment type: Pure code .text:00000010 _text segment para public 'CODE' use32 .text:00000010 assume cs:_text .text:00000010 ;org 10h .text:00000010 assume es:nothing, ss:nothing, ds:nothing, fs:nothing, gs:nothing .text:00000010 .text:00000010 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ .text:00000010 .text:00000010 ; Attributes: bp-based frame .text:00000010 .text:00000010 public _func .text:00000010 _func proc near ; CODE XREF: _main+9p .text:00000010 .text:00000010 var_48 = dword ptr -48h .text:00000010 var_44 = dword ptr -44h .text:00000010 var_40 = dword ptr -40h .text:00000010 var_21 = byte ptr -21h .text:00000010 var_20 = dword ptr -20h .text:00000010 .text:00000010 push ebp .text:00000011 mov ebp, esp .text:00000013 sub esp, 88h .text:00000019 push ebx .text:0000001A push esi .text:0000001B push edi .text:0000001C push 2Fh ; '/' .text:0000001E lea eax, [ebp+var_20] .text:00000021 push eax .text:00000022 call _strchr .text:00000027 add esp, 8 .text:0000002A mov [ebp+var_48], eax .text:0000002D cmp [ebp+var_48], 0 .text:00000031 jnz short loc_4B .text:00000033 push 1Fh .text:00000035 lea eax, [ebp+var_20] .text:00000038 push eax .text:00000039 lea ecx, [ebp+var_40] .text:0000003C push ecx .text:0000003D call _strncpy .text:00000042 add esp, 0Ch .text:00000045 mov [ebp+var_21], 0 .text:00000049 jmp short loc_92 .text:0000004B ; --------------------------------------------------------------------------- .text:0000004B .text:0000004B loc_4B: ; CODE XREF: _func+21j .text:0000004B mov eax, [ebp+var_48] .text:0000004E lea ecx, [ebp+var_20] .text:00000051 sub eax, ecx .text:00000053 mov [ebp+var_44], eax .text:00000056 cmp [ebp+var_44], 1Fh .text:0000005A jbe short loc_63 .text:0000005C mov [ebp+var_44], 1Fh .text:00000063 .text:00000063 loc_63: ; CODE XREF: _func+4Aj .text:00000063 mov eax, [ebp+var_44] .text:00000066 sub eax, 1 .text:00000069 cmp eax, 20h ; ' ' .text:0000006C jbe short loc_73 .text:0000006E call _reachable .text:00000073 .text:00000073 loc_73: ; CODE XREF: _func+5Cj .text:00000073 mov eax, [ebp+var_44] .text:00000076 sub eax, 1 .text:00000079 push eax .text:0000007A lea ecx, [ebp+var_20] .text:0000007D push ecx .text:0000007E lea edx, [ebp+var_40] .text:00000081 push edx .text:00000082 call _strncpy .text:00000087 add esp, 0Ch .text:0000008A mov eax, [ebp+var_44] .text:0000008D mov byte ptr [ebp+eax+var_40], 0 .text:00000092 .text:00000092 loc_92: ; CODE XREF: _func+39j .text:00000092 pop edi .text:00000093 pop esi .text:00000094 pop ebx .text:00000095 mov esp, ebp .text:00000097 pop ebp .text:00000098 retn .text:00000098 _func endp .text:00000098 .text:00000098 _text ends .text:00000098 .text:0000009A ; --------------------------------------------------------------------------- .text:0000009A .text:0000009A ; Segment type: Pure code .text:0000009A _text segment para public 'CODE' use32 .text:0000009A assume cs:_text .text:0000009A ;org 9Ah .text:0000009A assume es:nothing, ss:nothing, ds:nothing, fs:nothing, gs:nothing .text:0000009A .text:0000009A ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ .text:0000009A .text:0000009A ; Attributes: bp-based frame .text:0000009A .text:0000009A public _main .text:0000009A _main proc near .text:0000009A push ebp .text:0000009B mov ebp, esp .text:0000009D sub esp, 40h .text:000000A0 push ebx .text:000000A1 push esi .text:000000A2 push edi .text:000000A3 call _func .text:000000A8 xor eax, eax .text:000000AA pop edi .text:000000AB pop esi .text:000000AC pop ebx .text:000000AD mov esp, ebp .text:000000AF pop ebp .text:000000B0 retn .text:000000B0 _main endp .text:000000B0 .text:000000B0 _text ends .text:000000B0 UNDEF:000000C0 ; --------------------------------------------------------------------------- UNDEF:000000C0 UNDEF:000000C0 ; Segment type: Externs UNDEF:000000C0 ; UNDEF UNDEF:000000C0 extrn _strncpy:near ; CODE XREF: _func+2Dp UNDEF:000000C0 ; _func+72p UNDEF:000000C4 extrn _strchr:near ; CODE XREF: _func+12p UNDEF:000000C4 UNDEF:000000C4 UNDEF:000000C4 end