rendered paste body.text:006F390A ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
.text:006F390A
.text:006F390A ; Attributes: library function bp-based frame
.text:006F390A
.text:006F390A __vsnprintf_l proc near ; CODE XREF: __vsnprintf+12p
.text:006F390A
.text:006F390A var_20 = FILE ptr -20h
.text:006F390A arg_0 = dword ptr 8
.text:006F390A arg_4 = dword ptr 0Ch
.text:006F390A arg_8 = dword ptr 10h
.text:006F390A arg_C = dword ptr 14h
.text:006F390A arg_10 = dword ptr 18h
.text:006F390A
.text:006F390A push ebp
.text:006F390B mov ebp, esp
.text:006F390D sub esp, 20h
.text:006F3910 push ebx
.text:006F3911 xor ebx, ebx
.text:006F3913 cmp [ebp+arg_8], ebx
.text:006F3916 jnz short loc_6F3938
.text:006F3918 call __errno
.text:006F391D push ebx
.text:006F391E push ebx
.text:006F391F push ebx
.text:006F3920 push ebx
.text:006F3921 push ebx
.text:006F3922 mov dword ptr [eax], 16h
.text:006F3928 call __invalid_parameter
.text:006F392D add esp, 14h
.text:006F3930 or eax, 0FFFFFFFFh
.text:006F3933 jmp loc_6F39B8
.text:006F3938 ; ---------------------------------------------------------------------------
.text:006F3938
.text:006F3938 loc_6F3938: ; CODE XREF: __vsnprintf_l+Cj
.text:006F3938 mov ecx, [ebp+arg_4]
.text:006F393B cmp ecx, ebx
.text:006F393D push esi
.text:006F393E mov esi, [ebp+arg_0]
.text:006F3941 jz short loc_6F3964
.text:006F3943 cmp esi, ebx
.text:006F3945 jnz short loc_6F3964
.text:006F3947 call __errno
.text:006F394C push ebx
.text:006F394D push ebx
.text:006F394E push ebx
.text:006F394F push ebx
.text:006F3950 push ebx
.text:006F3951 mov dword ptr [eax], 16h
.text:006F3957 call __invalid_parameter
.text:006F395C add esp, 14h
.text:006F395F or eax, 0FFFFFFFFh
.text:006F3962 jmp short loc_6F39B7
.text:006F3964 ; ---------------------------------------------------------------------------
.text:006F3964
.text:006F3964 loc_6F3964: ; CODE XREF: __vsnprintf_l+37j
.text:006F3964 ; __vsnprintf_l+3Bj
.text:006F3964 mov eax, 7FFFFFFFh
.text:006F3969 cmp ecx, eax
.text:006F396B mov [ebp+var_20._cnt], eax
.text:006F396E ja short loc_6F3973
.text:006F3970 mov [ebp+var_20._cnt], ecx
.text:006F3973
.text:006F3973 loc_6F3973: ; CODE XREF: __vsnprintf_l+64j
.text:006F3973 push edi
.text:006F3974 push [ebp+arg_10]
.text:006F3977 lea eax, [ebp+var_20]
.text:006F397A push [ebp+arg_C]
.text:006F397D mov [ebp+var_20._flag], 42h
.text:006F3984 push [ebp+arg_8]
.text:006F3987 mov [ebp+var_20._base], esi
.text:006F398A push eax
.text:006F398B mov [ebp+var_20._ptr], esi
.text:006F398E call __output_l
.text:006F3993 add esp, 10h
.text:006F3996 cmp esi, ebx
.text:006F3998 mov edi, eax
.text:006F399A jz short loc_6F39B6
.text:006F399C dec [ebp+var_20._cnt]
.text:006F399F js short loc_6F39A8
.text:006F39A1 mov eax, [ebp+var_20._ptr]
.text:006F39A4 mov [eax], bl
.text:006F39A6 jmp short loc_6F39B4
.text:006F39A8 ; ---------------------------------------------------------------------------
.text:006F39A8
.text:006F39A8 loc_6F39A8: ; CODE XREF: __vsnprintf_l+95j
.text:006F39A8 lea eax, [ebp+var_20]
.text:006F39AB push eax ; FILE *
.text:006F39AC push ebx ; int
.text:006F39AD call __flsbuf
.text:006F39B2 pop ecx
.text:006F39B3 pop ecx
.text:006F39B4
.text:006F39B4 loc_6F39B4: ; CODE XREF: __vsnprintf_l+9Cj
.text:006F39B4 mov eax, edi
.text:006F39B6
.text:006F39B6 loc_6F39B6: ; CODE XREF: __vsnprintf_l+90j
.text:006F39B6 pop edi
.text:006F39B7
.text:006F39B7 loc_6F39B7: ; CODE XREF: __vsnprintf_l+58j
.text:006F39B7 pop esi
.text:006F39B8
.text:006F39B8 loc_6F39B8: ; CODE XREF: __vsnprintf_l+29j
.text:006F39B8 pop ebx
.text:006F39B9 leave
.text:006F39BA retn
.text:006F39BA __vsnprintf_l endp