All pastes #977922 Raw Edit

Mine

public text v1 · immutable
·published 2008-04-09 05:02 UTC
rendered paste body
.text:005A72C0 sub_5A72C0      proc near               ; CODE XREF: sub_6FF2D0+4A4p
.text:005A72C0
.text:005A72C0 dataStore       = CDataStore ptr -24h
.text:005A72C0 var_4           = dword ptr -4
.text:005A72C0 arg_0           = dword ptr  8
.text:005A72C0 value           = byte ptr  0Ch
.text:005A72C0 arg_8           = dword ptr  10h
.text:005A72C0 arg_C           = dword ptr  14h
.text:005A72C0 arg_10          = dword ptr  18h
.text:005A72C0
.text:005A72C0                 push    ebp
.text:005A72C1                 mov     ebp, esp
.text:005A72C3                 sub     esp, 24h
.text:005A72C6                 mov     eax, dword_DF8ED8
.text:005A72CB                 mov     [ebp+dataStore.field_18], eax
.text:005A72CE                 push    ebx
.text:005A72CF                 mov     ebx, dword ptr [ebp+value]
.text:005A72D2                 mov     eax, 5397829Dh
.text:005A72D7                 mul     ebx
.text:005A72D9                 push    esi
.text:005A72DA                 push    edi
.text:005A72DB                 mov     edi, ecx
.text:005A72DD                 mov     ecx, dword_DF8EDC
.text:005A72E3                 mov     eax, edx
.text:005A72E5                 shr     eax, 5
.text:005A72E8                 mov     [ebp+dataStore.field_1C], ecx
.text:005A72EB                 mov     cl, al
.text:005A72ED                 mov     dl, 62h
.text:005A72EF                 imul    dl
.text:005A72F1                 xor     esi, esi
.text:005A72F3                 sub     bl, al
.text:005A72F5                 cmp     cl, 6
.text:005A72F8                 mov     [ebp+dataStore.vTable], offset off_889A74
.text:005A72FF                 mov     [ebp+dataStore.dataSize], esi
.text:005A7302                 mov     [ebp+dataStore.m_base], esi
.text:005A7305                 mov     [ebp+dataStore.m_alloc], esi
.text:005A7308                 mov     [ebp+dataStore.m_size], esi
.text:005A730B                 mov     [ebp+dataStore.m_pos], 0FFFFFFFFh
.text:005A7312                 mov     [ebp+value], cl
.text:005A7315                 mov     byte ptr [ebp+var_4], bl
.text:005A7318                 jnb     short loc_5A733B
.text:005A731A                 mov     eax, [edi+1198h]
.text:005A7320                 mov     eax, [eax+10h]
.text:005A7323                 lea     edx, ds:0[eax*8]
.text:005A732A                 sub     edx, eax
.text:005A732C                 movzx   eax, cl
.text:005A732F                 lea     ecx, [eax+edx*2]
.text:005A7332                 cmp     dword_DE9E40[ecx*4], esi
.text:005A7339                 jnz     short loc_5A7347
.text:005A733B
.text:005A733B loc_5A733B:                             ; CODE XREF: sub_5A72C0+58j
.text:005A733B                 push    59h
.text:005A733D                 call    sub_6CA380
.text:005A7342                 jmp     loc_5A73D4
.text:005A7347 ; ---------------------------------------------------------------------------
.text:005A7347
.text:005A7347 loc_5A7347:                             ; CODE XREF: sub_5A72C0+79j
.text:005A7347                 push    3E8h            ; int
.text:005A734C                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A734F                 call    CDataStore_WriteInt32
.text:005A7354                 mov     edx, [ebp+dataStore.field_1C]
.text:005A7357                 mov     eax, [ebp+dataStore.field_18]
.text:005A735A                 push    edx             ; highPart
.text:005A735B                 push    eax             ; lowPart
.text:005A735C                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A735F                 call    CDataStore_WriteInt64Parts
.text:005A7364                 push    esi             ; value
.text:005A7365                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A7368                 call    CDataStore_WriteInt8
.text:005A736D                 mov     ecx, dword ptr [ebp+value]
.text:005A7370                 push    ecx             ; value
.text:005A7371                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A7374                 call    CDataStore_WriteInt8
.text:005A7379                 mov     edx, [ebp+var_4]
.text:005A737C                 push    edx             ; value
.text:005A737D                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A7380                 call    CDataStore_WriteInt8
.text:005A7385                 mov     eax, [ebp+arg_0]
.text:005A7388                 push    eax             ; int
.text:005A7389                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A738C                 call    CDataStore_WriteInt32
.text:005A7391                 push    esi             ; value
.text:005A7392                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A7395                 call    CDataStore_WriteInt8
.text:005A739A                 mov     ecx, [ebp+arg_8]
.text:005A739D                 push    ecx             ; value
.text:005A739E                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A73A1                 call    CDataStore_WriteInt8
.text:005A73A6                 mov     edx, [ebp+arg_C]
.text:005A73A9                 push    edx             ; value
.text:005A73AA                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A73AD                 call    CDataStore_WriteInt8
.text:005A73B2                 push    1               ; value
.text:005A73B4                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A73B7                 call    CDataStore_WriteInt8
.text:005A73BC                 mov     eax, [ebp+arg_10]
.text:005A73BF                 push    eax             ; value
.text:005A73C0                 lea     ecx, [ebp+dataStore] ; dataStore
.text:005A73C3                 call    CDataStore_WriteInt8
.text:005A73C8                 lea     ecx, [ebp+dataStore]
.text:005A73CB                 push    ecx             ; dataStore
.text:005A73CC                 mov     [ebp+dataStore.m_pos], esi
.text:005A73CF                 call    Services_SendPacket
.text:005A73D4
.text:005A73D4 loc_5A73D4:                             ; CODE XREF: sub_5A72C0+82j
.text:005A73D4                 add     esp, 4
.text:005A73D7                 cmp     [ebp+dataStore.m_alloc], 0FFFFFFFFh
.text:005A73DB                 mov     [ebp+dataStore.vTable], offset off_889A74
.text:005A73E2                 jz      short loc_5A73F9
.text:005A73E4                 lea     edx, [ebp+dataStore.m_alloc]
.text:005A73E7                 push    edx
.text:005A73E8                 lea     eax, [ebp+dataStore.m_base]
.text:005A73EB                 push    eax
.text:005A73EC                 lea     ecx, [ebp+dataStore.dataSize]
.text:005A73EF                 push    ecx
.text:005A73F0                 lea     ecx, [ebp+dataStore]
.text:005A73F3                 call    ds:off_889A78
.text:005A73F9
.text:005A73F9 loc_5A73F9:                             ; CODE XREF: sub_5A72C0+122j
.text:005A73F9                 pop     edi
.text:005A73FA                 pop     esi
.text:005A73FB                 pop     ebx
.text:005A73FC                 mov     esp, ebp
.text:005A73FE                 pop     ebp
.text:005A73FF                 retn    14h
.text:005A73FF sub_5A72C0      endp