[Info?] Some game mode information

Results 1 to 13 of 13
  1. #1
    Account Upgraded | Title Enabled! PenguinGuys is offline
    MemberRank
    Sep 2009 Join Date
    AlabamaLocation
    261Posts

    [Info?] Some game mode information

    ZRule::CreateRule( class* ZMatch, enum MMatch_GAMETYPE );

    ZMatch =
    Code:
    ZMatch::_ZMatch
    ZMatch::SetRound
    ZMatch::SetRoundStartTime
    ZMatch::GetRemaindTime
    ZMatch::ZMatch
    ZMatch::_scalar_deleting_destructor
    ZMatch::Create
    ZMatch::GetRoundCount
    ZMatch::GetRemainedSpawnTime
    ZMatch::SoloSpawn
    ZMatch::RespawnSolo
    ZMatch::ProcessRespawn
    ZMatch::Update
    ZMatch::InitCharactersPosition
    ZMatch::InitCharactersProperties
    ZMatch::GetTeamAliveCount
    ZMatch::InitRound
    ZMatch::SetRoundState
    ZMatch::OnForcedEntry
    ZRule::CreateRule
    It points to all the Game Modes
    Code:
    004B3220  /$ 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
    004B3226  |. 6A FF          PUSH -1
    004B3228  |. 68 09AA5D00    PUSH theduel.005DAA09
    004B322D  |. 50             PUSH EAX
    004B322E  |. 8B4424 14      MOV EAX,DWORD PTR SS:[ESP+14]
    004B3232  |. 83F8 0A        CMP EAX,0A                               ;  Switch (cases 0..A)
    004B3235  |. 64:8925 000000>MOV DWORD PTR FS:[0],ESP
    004B323C  |. 0F87 6A020000  JA theduel.004B34AC
    004B3242  |. FF2485 BC344B0>JMP DWORD PTR DS:[EAX*4+4B34BC]
    004B3249  |> 6A 08          PUSH 8                                   ;  Case 0 of switch 004B3232
    004B324B  |. E8 5FBD1100    CALL theduel.005CEFAF
    004B3250  |. 83C4 04        ADD ESP,4
    004B3253  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B3257  |. 85C0           TEST EAX,EAX
    004B3259  |. C74424 08 0000>MOV DWORD PTR SS:[ESP+8],0
    004B3261  |. 0F84 45020000  JE theduel.004B34AC
    004B3267  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B326B  |. 51             PUSH ECX
    004B326C  |. 8BC8           MOV ECX,EAX
    004B326E  |. E8 1D090000    CALL theduel.004B3B90
    004B3273  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B3276  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B327D  |. 83C4 0C        ADD ESP,0C
    004B3280  |. C3             RETN
    004B3281  |> 6A 08          PUSH 8                                   ;  Case 1 of switch 004B3232
    004B3283  |. E8 27BD1100    CALL theduel.005CEFAF
    004B3288  |. 83C4 04        ADD ESP,4
    004B328B  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B328F  |. 85C0           TEST EAX,EAX
    004B3291  |. C74424 08 0100>MOV DWORD PTR SS:[ESP+8],1
    004B3299  |. 0F84 0D020000  JE theduel.004B34AC
    004B329F  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B32A3  |. 52             PUSH EDX
    004B32A4  |. 8BC8           MOV ECX,EAX
    004B32A6  |. E8 15090000    CALL theduel.004B3BC0
    004B32AB  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B32AE  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B32B5  |. 83C4 0C        ADD ESP,0C
    004B32B8  |. C3             RETN
    004B32B9  |> 6A 08          PUSH 8                                   ;  Case 2 of switch 004B3232
    004B32BB  |. E8 EFBC1100    CALL theduel.005CEFAF
    004B32C0  |. 83C4 04        ADD ESP,4
    004B32C3  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B32C7  |. 85C0           TEST EAX,EAX
    004B32C9  |. C74424 08 0200>MOV DWORD PTR SS:[ESP+8],2
    004B32D1  |. 0F84 D5010000  JE theduel.004B34AC
    004B32D7  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B32DB  |. 51             PUSH ECX
    004B32DC  |. 8BC8           MOV ECX,EAX
    004B32DE  |. E8 3D0D0000    CALL theduel.004B4020
    004B32E3  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B32E6  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B32ED  |. 83C4 0C        ADD ESP,0C
    004B32F0  |. C3             RETN
    004B32F1  |> 6A 08          PUSH 8                                   ;  Case 3 of switch 004B3232
    004B32F3  |. E8 B7BC1100    CALL theduel.005CEFAF
    004B32F8  |. 83C4 04        ADD ESP,4
    004B32FB  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B32FF  |. 85C0           TEST EAX,EAX
    004B3301  |. C74424 08 0300>MOV DWORD PTR SS:[ESP+8],3
    004B3309  |. 0F84 9D010000  JE theduel.004B34AC
    004B330F  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B3313  |. 52             PUSH EDX
    004B3314  |. 8BC8           MOV ECX,EAX
    004B3316  |. E8 350D0000    CALL theduel.004B4050
    004B331B  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B331E  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B3325  |. 83C4 0C        ADD ESP,0C
    004B3328  |. C3             RETN
    004B3329  |> 6A 08          PUSH 8                                   ;  Case 4 of switch 004B3232
    004B332B  |. E8 7FBC1100    CALL theduel.005CEFAF
    004B3330  |. 83C4 04        ADD ESP,4
    004B3333  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B3337  |. 85C0           TEST EAX,EAX
    004B3339  |. C74424 08 0400>MOV DWORD PTR SS:[ESP+8],4
    004B3341  |. 0F84 65010000  JE theduel.004B34AC
    004B3347  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B334B  |. 51             PUSH ECX
    004B334C  |. 8BC8           MOV ECX,EAX
    004B334E  |. E8 BD010000    CALL theduel.004B3510
    004B3353  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B3356  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B335D  |. 83C4 0C        ADD ESP,0C
    004B3360  |. C3             RETN
    004B3361  |> 6A 08          PUSH 8                                   ;  Case 5 of switch 004B3232
    004B3363  |. E8 47BC1100    CALL theduel.005CEFAF
    004B3368  |. 83C4 04        ADD ESP,4
    004B336B  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B336F  |. 85C0           TEST EAX,EAX
    004B3371  |. C74424 08 0500>MOV DWORD PTR SS:[ESP+8],5
    004B3379  |. 0F84 2D010000  JE theduel.004B34AC
    004B337F  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B3383  |. 52             PUSH EDX
    004B3384  |. 8BC8           MOV ECX,EAX
    004B3386  |. E8 D50D0000    CALL theduel.004B4160
    004B338B  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B338E  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B3395  |. 83C4 0C        ADD ESP,0C
    004B3398  |. C3             RETN
    004B3399  |> 6A 08          PUSH 8                                   ;  Case 6 of switch 004B3232
    004B339B  |. E8 0FBC1100    CALL theduel.005CEFAF
    004B33A0  |. 83C4 04        ADD ESP,4
    004B33A3  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B33A7  |. 85C0           TEST EAX,EAX
    004B33A9  |. C74424 08 0600>MOV DWORD PTR SS:[ESP+8],6
    004B33B1  |. 0F84 F5000000  JE theduel.004B34AC
    004B33B7  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B33BB  |. 51             PUSH ECX
    004B33BC  |. 8BC8           MOV ECX,EAX
    004B33BE  |. E8 4D0D0000    CALL theduel.004B4110
    004B33C3  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B33C6  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B33CD  |. 83C4 0C        ADD ESP,0C
    004B33D0  |. C3             RETN
    004B33D1  |> 6A 0C          PUSH 0C                                  ;  Case 7 of switch 004B3232
    004B33D3  |. E8 D7BB1100    CALL theduel.005CEFAF
    004B33D8  |. 83C4 04        ADD ESP,4
    004B33DB  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B33DF  |. 85C0           TEST EAX,EAX
    004B33E1  |. C74424 08 0700>MOV DWORD PTR SS:[ESP+8],7
    004B33E9  |. 0F84 BD000000  JE theduel.004B34AC
    004B33EF  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B33F3  |. 52             PUSH EDX
    004B33F4  |. 8BC8           MOV ECX,EAX
    004B33F6  |. E8 C50C0000    CALL theduel.004B40C0
    004B33FB  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B33FE  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B3405  |. 83C4 0C        ADD ESP,0C
    004B3408  |. C3             RETN
    004B3409  |> 6A 14          PUSH 14                                  ;  Case 8 of switch 004B3232
    004B340B  |. E8 9FBB1100    CALL theduel.005CEFAF
    004B3410  |. 83C4 04        ADD ESP,4
    004B3413  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B3417  |. 85C0           TEST EAX,EAX
    004B3419  |. C74424 08 0800>MOV DWORD PTR SS:[ESP+8],8
    004B3421  |. 0F84 85000000  JE theduel.004B34AC
    004B3427  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B342B  |. 51             PUSH ECX
    004B342C  |. 8BC8           MOV ECX,EAX
    004B342E  |. E8 CD020000    CALL theduel.004B3700
    004B3433  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B3436  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B343D  |. 83C4 0C        ADD ESP,0C
    004B3440  |. C3             RETN
    004B3441  |> 6A 08          PUSH 8                                   ;  Case 9 of switch 004B3232
    004B3443  |. E8 67BB1100    CALL theduel.005CEFAF
    004B3448  |. 83C4 04        ADD ESP,4
    004B344B  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B344F  |. 85C0           TEST EAX,EAX
    004B3451  |. C74424 08 0900>MOV DWORD PTR SS:[ESP+8],9
    004B3459  |. 74 51          JE SHORT theduel.004B34AC
    004B345B  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B345F  |. 52             PUSH EDX
    004B3460  |. 8BC8           MOV ECX,EAX
    004B3462  |. E8 89070000    CALL theduel.004B3BF0
    004B3467  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B346A  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B3471  |. 83C4 0C        ADD ESP,0C
    004B3474  |. C3             RETN
    004B3475  |> 68 8C000000    PUSH 8C                                  ;  Case A of switch 004B3232
    004B347A  |. E8 30BB1100    CALL theduel.005CEFAF
    004B347F  |. 83C4 04        ADD ESP,4
    004B3482  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B3486  |. 85C0           TEST EAX,EAX
    004B3488  |. C74424 08 0A00>MOV DWORD PTR SS:[ESP+8],0A
    004B3490  |. 74 1A          JE SHORT theduel.004B34AC
    004B3492  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B3496  |. 51             PUSH ECX
    004B3497  |. 8BC8           MOV ECX,EAX
    004B3499  |. E8 320B0000    CALL theduel.004B3FD0
    004B349E  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B34A1  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B34A8  |. 83C4 0C        ADD ESP,0C
    004B34AB  |. C3             RETN
    004B34AC  |> 8B0C24         MOV ECX,DWORD PTR SS:[ESP]               ;  Default case of switch 004B3232
    004B34AF  |. 33C0           XOR EAX,EAX
    004B34B1  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B34B8  |. 83C4 0C        ADD ESP,0C
    004B34BB  \. C3             RETN
    004B34BC   . 49324B00       DD theduel.004B3249                      ;  Switch table used at 004B3242
    004B34C0   . 81324B00       DD theduel.004B3281
    004B34C4   . B9324B00       DD theduel.004B32B9
    004B34C8   . F1324B00       DD theduel.004B32F1
    004B34CC   . 29334B00       DD theduel.004B3329
    004B34D0   . 61334B00       DD theduel.004B3361
    004B34D4   . 99334B00       DD theduel.004B3399
    004B34D8   . D1334B00       DD theduel.004B33D1
    004B34DC   . 09344B00       DD theduel.004B3409
    004B34E0   . 41344B00       DD theduel.004B3441
    004B34E4   . 75344B00       DD theduel.004B3475
    Firstly:
    Code:
    004B3232  |. 83F8 0A        CMP EAX,0A                               ;  Switch (cases 0..A)
    0A = 10 - in HEX (There's 10 game modes)


    Let's take a look at this part:
    Code:
    004B3291  |. C74424 08 0100>MOV DWORD PTR SS:[ESP+8],1
    004B3299  |. 0F84 0D020000  JE theduel.004B34AC
    004B329F  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B32A3  |. 52             PUSH EDX
    004B32A4  |. 8BC8           MOV ECX,EAX
    004B32A6  |. E8 15090000    CALL theduel.004B3BC0
    004B32AB  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B32AE  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B32B5  |. 83C4 0C        ADD ESP,0C
    004B32B8  |. C3             RETN
    004B32B9  |> 6A 08          PUSH 8                                   ;  Case 2 of switch 004B3232
    004B32BB  |. E8 EFBC1100    CALL theduel.005CEFAF
    004B32C0  |. 83C4 04        ADD ESP,4
    004B32C3  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B32C7  |. 85C0           TEST EAX,EAX
    MOV DWORD PTR SS:[ESP+8],1

    1 = The game mode number

    GAMETYPE_DEATHMATCH_SOLO = 0
    GAMETYPE_DEATHMATCH_TEAM = 1
    GAMETYPE_GLADIATOR_SOLO = 2
    GAMETYPE_GLADIATOR_TEAM = 3
    GAMETYPE_ASSASSINATE = 4
    GAMETYPE_TRAINING = 5
    GAMETYPE_SURVIVAL = 6
    GAMETYPE_QUEST = 7
    GAMETYPE_BERSERKER = 8
    GAMETYPE_DEATHMATCH_TEAM2 = 9
    GAMETYPE_DEATHMATCH_DUEL = 10
    Mk, let's take a look at the call
    Code:
    004B32A6  |. E8 15090000    CALL theduel.004B3BC0
    Which is pointing to Team Death Match:
    Code:
    004B3BC0  /$ 8B4424 04      MOV EAX,DWORD PTR SS:[ESP+4]
    004B3BC4  |. 56             PUSH ESI
    004B3BC5  |. 50             PUSH EAX
    004B3BC6  |. 8BF1           MOV ESI,ECX
    004B3BC8  |. E8 13F6FFFF    CALL theduel.004B31E0
    004B3BCD  |. C706 00415F00  MOV DWORD PTR DS:[ESI],theduel.005F4100
    004B3BD3  |. 8BC6           MOV EAX,ESI
    004B3BD5  |. 5E             POP ESI
    004B3BD6  \. C2 0400        RETN 4
    --I'll edit this later. Can't remember what else.


  2. #2
    Alpha Member gregon13 is offline
    MemberRank
    Nov 2007 Join Date
    CanadaLocation
    1,945Posts

    Re: [Info?] Some game mode information

    Quote Originally Posted by PenguinGuy View Post
    ZRule::CreateRule( class* ZMatch, enum MMatch_GAMETYPE );

    ZMatch =
    Code:
    ZMatch::_ZMatch
    ZMatch::SetRound
    ZMatch::SetRoundStartTime
    ZMatch::GetRemaindTime
    ZMatch::ZMatch
    ZMatch::_scalar_deleting_destructor
    ZMatch::Create
    ZMatch::GetRoundCount
    ZMatch::GetRemainedSpawnTime
    ZMatch::SoloSpawn
    ZMatch::RespawnSolo
    ZMatch::ProcessRespawn
    ZMatch::Update
    ZMatch::InitCharactersPosition
    ZMatch::InitCharactersProperties
    ZMatch::GetTeamAliveCount
    ZMatch::InitRound
    ZMatch::SetRoundState
    ZMatch::OnForcedEntry
    ZRule::CreateRule
    It points to all the Game Modes
    Code:
    004B3220  /$ 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
    004B3226  |. 6A FF          PUSH -1
    004B3228  |. 68 09AA5D00    PUSH theduel.005DAA09
    004B322D  |. 50             PUSH EAX
    004B322E  |. 8B4424 14      MOV EAX,DWORD PTR SS:[ESP+14]
    004B3232  |. 83F8 0A        CMP EAX,0A                               ;  Switch (cases 0..A)
    004B3235  |. 64:8925 000000>MOV DWORD PTR FS:[0],ESP
    004B323C  |. 0F87 6A020000  JA theduel.004B34AC
    004B3242  |. FF2485 BC344B0>JMP DWORD PTR DS:[EAX*4+4B34BC]
    004B3249  |> 6A 08          PUSH 8                                   ;  Case 0 of switch 004B3232
    004B324B  |. E8 5FBD1100    CALL theduel.005CEFAF
    004B3250  |. 83C4 04        ADD ESP,4
    004B3253  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B3257  |. 85C0           TEST EAX,EAX
    004B3259  |. C74424 08 0000>MOV DWORD PTR SS:[ESP+8],0
    004B3261  |. 0F84 45020000  JE theduel.004B34AC
    004B3267  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B326B  |. 51             PUSH ECX
    004B326C  |. 8BC8           MOV ECX,EAX
    004B326E  |. E8 1D090000    CALL theduel.004B3B90
    004B3273  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B3276  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B327D  |. 83C4 0C        ADD ESP,0C
    004B3280  |. C3             RETN
    004B3281  |> 6A 08          PUSH 8                                   ;  Case 1 of switch 004B3232
    004B3283  |. E8 27BD1100    CALL theduel.005CEFAF
    004B3288  |. 83C4 04        ADD ESP,4
    004B328B  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B328F  |. 85C0           TEST EAX,EAX
    004B3291  |. C74424 08 0100>MOV DWORD PTR SS:[ESP+8],1
    004B3299  |. 0F84 0D020000  JE theduel.004B34AC
    004B329F  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B32A3  |. 52             PUSH EDX
    004B32A4  |. 8BC8           MOV ECX,EAX
    004B32A6  |. E8 15090000    CALL theduel.004B3BC0
    004B32AB  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B32AE  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B32B5  |. 83C4 0C        ADD ESP,0C
    004B32B8  |. C3             RETN
    004B32B9  |> 6A 08          PUSH 8                                   ;  Case 2 of switch 004B3232
    004B32BB  |. E8 EFBC1100    CALL theduel.005CEFAF
    004B32C0  |. 83C4 04        ADD ESP,4
    004B32C3  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B32C7  |. 85C0           TEST EAX,EAX
    004B32C9  |. C74424 08 0200>MOV DWORD PTR SS:[ESP+8],2
    004B32D1  |. 0F84 D5010000  JE theduel.004B34AC
    004B32D7  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B32DB  |. 51             PUSH ECX
    004B32DC  |. 8BC8           MOV ECX,EAX
    004B32DE  |. E8 3D0D0000    CALL theduel.004B4020
    004B32E3  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B32E6  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B32ED  |. 83C4 0C        ADD ESP,0C
    004B32F0  |. C3             RETN
    004B32F1  |> 6A 08          PUSH 8                                   ;  Case 3 of switch 004B3232
    004B32F3  |. E8 B7BC1100    CALL theduel.005CEFAF
    004B32F8  |. 83C4 04        ADD ESP,4
    004B32FB  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B32FF  |. 85C0           TEST EAX,EAX
    004B3301  |. C74424 08 0300>MOV DWORD PTR SS:[ESP+8],3
    004B3309  |. 0F84 9D010000  JE theduel.004B34AC
    004B330F  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B3313  |. 52             PUSH EDX
    004B3314  |. 8BC8           MOV ECX,EAX
    004B3316  |. E8 350D0000    CALL theduel.004B4050
    004B331B  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B331E  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B3325  |. 83C4 0C        ADD ESP,0C
    004B3328  |. C3             RETN
    004B3329  |> 6A 08          PUSH 8                                   ;  Case 4 of switch 004B3232
    004B332B  |. E8 7FBC1100    CALL theduel.005CEFAF
    004B3330  |. 83C4 04        ADD ESP,4
    004B3333  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B3337  |. 85C0           TEST EAX,EAX
    004B3339  |. C74424 08 0400>MOV DWORD PTR SS:[ESP+8],4
    004B3341  |. 0F84 65010000  JE theduel.004B34AC
    004B3347  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B334B  |. 51             PUSH ECX
    004B334C  |. 8BC8           MOV ECX,EAX
    004B334E  |. E8 BD010000    CALL theduel.004B3510
    004B3353  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B3356  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B335D  |. 83C4 0C        ADD ESP,0C
    004B3360  |. C3             RETN
    004B3361  |> 6A 08          PUSH 8                                   ;  Case 5 of switch 004B3232
    004B3363  |. E8 47BC1100    CALL theduel.005CEFAF
    004B3368  |. 83C4 04        ADD ESP,4
    004B336B  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B336F  |. 85C0           TEST EAX,EAX
    004B3371  |. C74424 08 0500>MOV DWORD PTR SS:[ESP+8],5
    004B3379  |. 0F84 2D010000  JE theduel.004B34AC
    004B337F  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B3383  |. 52             PUSH EDX
    004B3384  |. 8BC8           MOV ECX,EAX
    004B3386  |. E8 D50D0000    CALL theduel.004B4160
    004B338B  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B338E  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B3395  |. 83C4 0C        ADD ESP,0C
    004B3398  |. C3             RETN
    004B3399  |> 6A 08          PUSH 8                                   ;  Case 6 of switch 004B3232
    004B339B  |. E8 0FBC1100    CALL theduel.005CEFAF
    004B33A0  |. 83C4 04        ADD ESP,4
    004B33A3  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B33A7  |. 85C0           TEST EAX,EAX
    004B33A9  |. C74424 08 0600>MOV DWORD PTR SS:[ESP+8],6
    004B33B1  |. 0F84 F5000000  JE theduel.004B34AC
    004B33B7  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B33BB  |. 51             PUSH ECX
    004B33BC  |. 8BC8           MOV ECX,EAX
    004B33BE  |. E8 4D0D0000    CALL theduel.004B4110
    004B33C3  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B33C6  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B33CD  |. 83C4 0C        ADD ESP,0C
    004B33D0  |. C3             RETN
    004B33D1  |> 6A 0C          PUSH 0C                                  ;  Case 7 of switch 004B3232
    004B33D3  |. E8 D7BB1100    CALL theduel.005CEFAF
    004B33D8  |. 83C4 04        ADD ESP,4
    004B33DB  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B33DF  |. 85C0           TEST EAX,EAX
    004B33E1  |. C74424 08 0700>MOV DWORD PTR SS:[ESP+8],7
    004B33E9  |. 0F84 BD000000  JE theduel.004B34AC
    004B33EF  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B33F3  |. 52             PUSH EDX
    004B33F4  |. 8BC8           MOV ECX,EAX
    004B33F6  |. E8 C50C0000    CALL theduel.004B40C0
    004B33FB  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B33FE  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B3405  |. 83C4 0C        ADD ESP,0C
    004B3408  |. C3             RETN
    004B3409  |> 6A 14          PUSH 14                                  ;  Case 8 of switch 004B3232
    004B340B  |. E8 9FBB1100    CALL theduel.005CEFAF
    004B3410  |. 83C4 04        ADD ESP,4
    004B3413  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B3417  |. 85C0           TEST EAX,EAX
    004B3419  |. C74424 08 0800>MOV DWORD PTR SS:[ESP+8],8
    004B3421  |. 0F84 85000000  JE theduel.004B34AC
    004B3427  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B342B  |. 51             PUSH ECX
    004B342C  |. 8BC8           MOV ECX,EAX
    004B342E  |. E8 CD020000    CALL theduel.004B3700
    004B3433  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B3436  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B343D  |. 83C4 0C        ADD ESP,0C
    004B3440  |. C3             RETN
    004B3441  |> 6A 08          PUSH 8                                   ;  Case 9 of switch 004B3232
    004B3443  |. E8 67BB1100    CALL theduel.005CEFAF
    004B3448  |. 83C4 04        ADD ESP,4
    004B344B  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B344F  |. 85C0           TEST EAX,EAX
    004B3451  |. C74424 08 0900>MOV DWORD PTR SS:[ESP+8],9
    004B3459  |. 74 51          JE SHORT theduel.004B34AC
    004B345B  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B345F  |. 52             PUSH EDX
    004B3460  |. 8BC8           MOV ECX,EAX
    004B3462  |. E8 89070000    CALL theduel.004B3BF0
    004B3467  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B346A  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B3471  |. 83C4 0C        ADD ESP,0C
    004B3474  |. C3             RETN
    004B3475  |> 68 8C000000    PUSH 8C                                  ;  Case A of switch 004B3232
    004B347A  |. E8 30BB1100    CALL theduel.005CEFAF
    004B347F  |. 83C4 04        ADD ESP,4
    004B3482  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B3486  |. 85C0           TEST EAX,EAX
    004B3488  |. C74424 08 0A00>MOV DWORD PTR SS:[ESP+8],0A
    004B3490  |. 74 1A          JE SHORT theduel.004B34AC
    004B3492  |. 8B4C24 10      MOV ECX,DWORD PTR SS:[ESP+10]
    004B3496  |. 51             PUSH ECX
    004B3497  |. 8BC8           MOV ECX,EAX
    004B3499  |. E8 320B0000    CALL theduel.004B3FD0
    004B349E  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B34A1  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B34A8  |. 83C4 0C        ADD ESP,0C
    004B34AB  |. C3             RETN
    004B34AC  |> 8B0C24         MOV ECX,DWORD PTR SS:[ESP]               ;  Default case of switch 004B3232
    004B34AF  |. 33C0           XOR EAX,EAX
    004B34B1  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B34B8  |. 83C4 0C        ADD ESP,0C
    004B34BB  \. C3             RETN
    004B34BC   . 49324B00       DD theduel.004B3249                      ;  Switch table used at 004B3242
    004B34C0   . 81324B00       DD theduel.004B3281
    004B34C4   . B9324B00       DD theduel.004B32B9
    004B34C8   . F1324B00       DD theduel.004B32F1
    004B34CC   . 29334B00       DD theduel.004B3329
    004B34D0   . 61334B00       DD theduel.004B3361
    004B34D4   . 99334B00       DD theduel.004B3399
    004B34D8   . D1334B00       DD theduel.004B33D1
    004B34DC   . 09344B00       DD theduel.004B3409
    004B34E0   . 41344B00       DD theduel.004B3441
    004B34E4   . 75344B00       DD theduel.004B3475
    Firstly:
    Code:
    004B3232  |. 83F8 0A        CMP EAX,0A                               ;  Switch (cases 0..A)
    0A = 10 - in HEX (There's 10 game modes)


    Let's take a look at this part:
    Code:
    004B3291  |. C74424 08 0100>MOV DWORD PTR SS:[ESP+8],1
    004B3299  |. 0F84 0D020000  JE theduel.004B34AC
    004B329F  |. 8B5424 10      MOV EDX,DWORD PTR SS:[ESP+10]
    004B32A3  |. 52             PUSH EDX
    004B32A4  |. 8BC8           MOV ECX,EAX
    004B32A6  |. E8 15090000    CALL theduel.004B3BC0
    004B32AB  |. 8B0C24         MOV ECX,DWORD PTR SS:[ESP]
    004B32AE  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    004B32B5  |. 83C4 0C        ADD ESP,0C
    004B32B8  |. C3             RETN
    004B32B9  |> 6A 08          PUSH 8                                   ;  Case 2 of switch 004B3232
    004B32BB  |. E8 EFBC1100    CALL theduel.005CEFAF
    004B32C0  |. 83C4 04        ADD ESP,4
    004B32C3  |. 894424 14      MOV DWORD PTR SS:[ESP+14],EAX
    004B32C7  |. 85C0           TEST EAX,EAX
    MOV DWORD PTR SS:[ESP+8],1

    1 = The game mode number



    Mk, let's take a look at the call
    Code:
    004B32A6  |. E8 15090000    CALL theduel.004B3BC0
    Which is pointing to Team Death Match:
    Code:
    004B3BC0  /$ 8B4424 04      MOV EAX,DWORD PTR SS:[ESP+4]
    004B3BC4  |. 56             PUSH ESI
    004B3BC5  |. 50             PUSH EAX
    004B3BC6  |. 8BF1           MOV ESI,ECX
    004B3BC8  |. E8 13F6FFFF    CALL theduel.004B31E0
    004B3BCD  |. C706 00415F00  MOV DWORD PTR DS:[ESI],theduel.005F4100
    004B3BD3  |. 8BC6           MOV EAX,ESI
    004B3BD5  |. 5E             POP ESI
    004B3BD6  \. C2 0400        RETN 4
    --I'll edit this later. Can't remember what else.
    Very useful information thank you

  3. #3

    Re: [Info?] Some game mode information

    Very nice find.

  4. #4
    Account Upgraded | Title Enabled! purpleCRAYON is offline
    MemberRank
    Mar 2009 Join Date
    249Posts

    Re: [Info?] Some game mode information

    Very nice.

  5. #5
    Account Upgraded | Title Enabled! ManyBlackPpl is offline
    MemberRank
    Mar 2009 Join Date
    CanadaLocation
    336Posts

    Re: [Info?] Some game mode information

    very nice find penguin :P. Can't wait to see anything more you find :)

  6. #6
    GunZ Developer dacharles is offline
    MemberRank
    Oct 2006 Join Date
    476Posts

    Re: [Info?] Some game mode information

    Quote Originally Posted by PenguinGuy View Post
    0A = 10 - in HEX (There's 10 game modes)
    I think there are 11 game modes..
    0,1,2,3,4,5,6,7,8,9,10...

  7. #7
      Phoenix is offline
    ModeratorRank
    Mar 2009 Join Date
    6,890Posts

    Re: [Info?] Some game mode information

    Deathmatch,Deathmatch + Berserker, Team Death Match, Team Death Match + Extreame, Gladiator, Team Gladiator, Assassination, Training, Quest, Survival, Classic, Team Classic, Duel Tournament.

    That makes it 13 out of which 3 aren't released.
    Last edited by Phoenix; 24-03-10 at 10:02 AM.

  8. #8
    Account Upgraded | Title Enabled! PenguinGuys is offline
    MemberRank
    Sep 2009 Join Date
    AlabamaLocation
    261Posts

    Re: [Info?] Some game mode information

    Bump.

    Found this in MatchServer. Didn't really get the chance to take a good
    look at these though. Addresses won't match up to 2007 files, so find it on your own.
    Code:
    public: MMatchGameTypeInfo::MMatchGameTypeInfo( void )
    004817D0 > . 56             PUSH ESI
    004817D1   . 57             PUSH EDI
    004817D2   . 8BF9           MOV EDI,ECX
    004817D4   . 8D77 28        LEA ESI,DWORD PTR DS:[EDI+28]
    004817D7   . 8BCE           MOV ECX,ESI
    004817D9   . E8 7284F8FF    CALL MatchSer.std::_Tree<std::_Tset_traits<int,std::less<int>,std::allocator<int>,0> >::>
    004817DE   . 8946 04        MOV DWORD PTR DS:[ESI+4],EAX
    004817E1   . C640 11 01     MOV BYTE PTR DS:[EAX+11],1
    004817E5   . 8B46 04        MOV EAX,DWORD PTR DS:[ESI+4]
    004817E8   . 8940 04        MOV DWORD PTR DS:[EAX+4],EAX
    004817EB   . 8B46 04        MOV EAX,DWORD PTR DS:[ESI+4]
    004817EE   . 8900           MOV DWORD PTR DS:[EAX],EAX
    004817F0   . 8B46 04        MOV EAX,DWORD PTR DS:[ESI+4]
    004817F3   . 8940 08        MOV DWORD PTR DS:[EAX+8],EAX
    004817F6   . 8BC7           MOV EAX,EDI
    004817F8   . 5F             POP EDI
    004817F9   . C746 08 000000>MOV DWORD PTR DS:[ESI+8],0
    00481800   . 5E             POP ESI
    00481801   . C3             RETN
    
    
    bool MBaseGameTypeCatalogue::IsCorrectGameType( int )
    00452B70  MOV EAX,DWORD PTR SS:[ESP+4]
    00452B74  TEST EAX,EAX
    00452B76  JL SHORT MatchSer.00452B82
    00452B78  CMP EAX,0B
    00452B7B  JGE SHORT MatchSer.00452B82
    00452B7D  MOV AL,1
    00452B7F  RETN 4
    00452B82  XOR AL,AL
    00452B84  RETN 4
    
    
    public: MBaseGameTypeCatalogue::MBaseGameTypeCatalogue( void )
    00481860 >/$ 55             PUSH EBP
    00481861  |. 8BEC           MOV EBP,ESP
    00481863  |. 83E4 F8        AND ESP,FFFFFFF8
    00481866  |. 6A FF          PUSH -1
    00481868  |. 68 F6904F00    PUSH MatchSer.004F90F6
    0048186D  |. 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
    00481873  |. 50             PUSH EAX
    00481874  |. 64:8925 000000>MOV DWORD PTR FS:[0],ESP
    0048187B  |. 83EC 1C        SUB ESP,1C
    0048187E  |. 53             PUSH EBX
    0048187F  |. 55             PUSH EBP
    00481880  |. 56             PUSH ESI
    00481881  |. 57             PUSH EDI
    00481882  |. 68 10184800    PUSH MatchSer.MMatchGameTypeInfo::~MMatchGameTypeInfo
    00481887  |. 68 D0174800    PUSH MatchSer.MMatchGameTypeInfo::MMatchGameTypeInfo
    0048188C  |. 8BF1           MOV ESI,ECX
    0048188E  |. 6A 0B          PUSH 0B
    00481890  |. 6A 34          PUSH 34
    00481892  |. 8D7E 04        LEA EDI,DWORD PTR DS:[ESI+4]
    00481895  |. 57             PUSH EDI
    00481896  |. 897424 30      MOV DWORD PTR SS:[ESP+30],ESI
    0048189A  |. C706 28FC5000  MOV DWORD PTR DS:[ESI],OFFSET MatchSer.??_7MBaseGameTypeCatalogue@@6B@
    004818A0  |. E8 45DB0200    CALL MatchSer.`eh vector constructor iterator'
    004818A5  |. 33DB           XOR EBX,EBX
    004818A7  |. B8 ACFC5000    MOV EAX,OFFSET MatchSer.??_C@_0BC@HGIFFOD@Death?5Match?$CI?$LA?$LD?$MA?N?$CJ?$AA@
    004818AC  |. 8BCF           MOV ECX,EDI
    004818AE  |. 2BC8           SUB ECX,EAX
    004818B0  |. 895C24 34      MOV DWORD PTR SS:[ESP+34],EBX
    004818B4  |. 891F           MOV DWORD PTR DS:[EDI],EBX
    004818B6  |. 8D51 04        LEA EDX,DWORD PTR DS:[ECX+4]
    004818B9  |. 8DA424 0000000>LEA ESP,DWORD PTR SS:[ESP]
    004818C0  |> 8A08           /MOV CL,BYTE PTR DS:[EAX]
    004818C2  |. 880C02         |MOV BYTE PTR DS:[EDX+EAX],CL
    004818C5  |. 40             |INC EAX
    004818C6  |. 3ACB           |CMP CL,BL
    004818C8  |.^75 F6          \JNZ SHORT MatchSer.004818C0
    004818CA  |. BD 0000803F    MOV EBP,3F800000
    004818CF  |. 8D46 3C        LEA EAX,DWORD PTR DS:[ESI+3C]
    004818D2  |. BA 98FC5000    MOV EDX,OFFSET MatchSer.??_C@_0BC@MCFLOELJ@Death?5Match?$CI?$LE?$NM?C?$LM?$CJ?$AA@
    004818D7  |. 896F 1C        MOV DWORD PTR DS:[EDI+1C],EBP
    004818DA  |. 896F 20        MOV DWORD PTR DS:[EDI+20],EBP
    004818DD  |. 895F 24        MOV DWORD PTR DS:[EDI+24],EBX
    004818E0  |. C746 38 010000>MOV DWORD PTR DS:[ESI+38],1
    004818E7  |. 2BD0           SUB EDX,EAX
    004818E9  |. 8DA424 0000000>LEA ESP,DWORD PTR SS:[ESP]
    004818F0  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    004818F3  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    004818F5  |. 40             |INC EAX
    004818F6  |. 3ACB           |CMP CL,BL
    004818F8  |.^75 F6          \JNZ SHORT MatchSer.004818F0
    004818FA  |. 896E 54        MOV DWORD PTR DS:[ESI+54],EBP
    004818FD  |. BD CDCC4C3F    MOV EBP,3F4CCCCD
    00481902  |. BF 9A99993E    MOV EDI,3E99999A
    00481907  |. 8D46 70        LEA EAX,DWORD PTR DS:[ESI+70]
    0048190A  |. BA 88FC5000    MOV EDX,OFFSET MatchSer.??_C@_0BA@LGPJLGED@Gladiator?$CI?$LA?$LD?$MA?N?$CJ?$AA@
    0048190F  |. 896E 58        MOV DWORD PTR DS:[ESI+58],EBP
    00481912  |. 897E 5C        MOV DWORD PTR DS:[ESI+5C],EDI
    00481915  |. C746 6C 020000>MOV DWORD PTR DS:[ESI+6C],2
    0048191C  |. 2BD0           SUB EDX,EAX
    0048191E  |. 8BFF           MOV EDI,EDI
    00481920  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481923  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481925  |. 40             |INC EAX
    00481926  |. 3ACB           |CMP CL,BL
    00481928  |.^75 F6          \JNZ SHORT MatchSer.00481920
    0048192A  |. 8D86 A4000000  LEA EAX,DWORD PTR DS:[ESI+A4]
    00481930  |. BA 78FC5000    MOV EDX,OFFSET MatchSer.??_C@_0BA@HDMKAHBJ@Gladiator?$CI?$LE?$NM?C?$LM?$CJ?$AA@
    00481935  |. C786 88000000 >MOV DWORD PTR DS:[ESI+88],3F000000
    0048193F  |. C786 8C000000 >MOV DWORD PTR DS:[ESI+8C],3F800000
    00481949  |. 899E 90000000  MOV DWORD PTR DS:[ESI+90],EBX
    0048194F  |. C786 A0000000 >MOV DWORD PTR DS:[ESI+A0],3
    00481959  |. 2BD0           SUB EDX,EAX
    0048195B  |. EB 03          JMP SHORT MatchSer.00481960
    0048195D  |  8D49 00        LEA ECX,DWORD PTR DS:[ECX]
    00481960  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481963  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481965  |. 40             |INC EAX
    00481966  |. 3ACB           |CMP CL,BL
    00481968  |.^75 F6          \JNZ SHORT MatchSer.00481960
    0048196A  |. 8D86 D8000000  LEA EAX,DWORD PTR DS:[ESI+D8]
    00481970  |. BA 70FC5000    MOV EDX,OFFSET MatchSer.??_C@_06CAHPEHGJ@?$LO?O?$LL?l?$MA?$PM?$AA@
    00481975  |. C786 BC000000 >MOV DWORD PTR DS:[ESI+BC],3F000000
    0048197F  |. 89AE C0000000  MOV DWORD PTR DS:[ESI+C0],EBP
    00481985  |. 89BE C4000000  MOV DWORD PTR DS:[ESI+C4],EDI
    0048198B  |. C786 D4000000 >MOV DWORD PTR DS:[ESI+D4],4
    00481995  |. 2BD0           SUB EDX,EAX
    00481997  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    0048199A  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    0048199C  |. 40             |INC EAX
    0048199D  |. 3ACB           |CMP CL,BL
    0048199F  |.^75 F6          \JNZ SHORT MatchSer.00481997
    004819A1  |. 8D86 0C010000  LEA EAX,DWORD PTR DS:[ESI+10C]
    004819A7  |. BA 64FC5000    MOV EDX,OFFSET MatchSer.??_C@_08GMFLOLMP@?F?$KO?$LH?$LJ?$MA?L?$LE?W?$AA@
    004819AC  |. C786 F0000000 >MOV DWORD PTR DS:[ESI+F0],3F800000
    004819B6  |. 89AE F4000000  MOV DWORD PTR DS:[ESI+F4],EBP
    004819BC  |. 89BE F8000000  MOV DWORD PTR DS:[ESI+F8],EDI
    004819C2  |. C786 08010000 >MOV DWORD PTR DS:[ESI+108],5
    004819CC  |. 2BD0           SUB EDX,EAX
    004819CE  |. 8BFF           MOV EDI,EDI
    004819D0  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    004819D3  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    004819D5  |. 40             |INC EAX
    004819D6  |. 3ACB           |CMP CL,BL
    004819D8  |.^75 F6          \JNZ SHORT MatchSer.004819D0
    004819DA  |. 8D86 40010000  LEA EAX,DWORD PTR DS:[ESI+140]
    004819E0  |. BA 58FC5000    MOV EDX,OFFSET MatchSer.??_C@_08PHGABINM@?$LM?$KN?$LJ?Y?$MA?L?$LJ?z?$AA@
    004819E5  |. 899E 24010000  MOV DWORD PTR DS:[ESI+124],EBX
    004819EB  |. 899E 28010000  MOV DWORD PTR DS:[ESI+128],EBX
    004819F1  |. 899E 2C010000  MOV DWORD PTR DS:[ESI+12C],EBX
    004819F7  |. C786 3C010000 >MOV DWORD PTR DS:[ESI+13C],6
    00481A01  |. 2BD0           SUB EDX,EAX
    00481A03  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481A06  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481A08  |. 40             |INC EAX
    00481A09  |. 3ACB           |CMP CL,BL
    00481A0B  |.^75 F6          \JNZ SHORT MatchSer.00481A03
    00481A0D  |. 8D86 74010000  LEA EAX,DWORD PTR DS:[ESI+174]
    00481A13  |. BA 50FC5000    MOV EDX,OFFSET MatchSer.??_C@_06FHGCMKAG@?D?y?$LN?$LK?F?$KO?$AA@
    00481A18  |. 899E 58010000  MOV DWORD PTR DS:[ESI+158],EBX
    00481A1E  |. 899E 5C010000  MOV DWORD PTR DS:[ESI+15C],EBX
    00481A24  |. 899E 60010000  MOV DWORD PTR DS:[ESI+160],EBX
    00481A2A  |. C786 70010000 >MOV DWORD PTR DS:[ESI+170],7
    00481A34  |. 2BD0           SUB EDX,EAX
    00481A36  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481A39  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481A3B  |. 40             |INC EAX
    00481A3C  |. 3ACB           |CMP CL,BL
    00481A3E  |.^75 F6          \JNZ SHORT MatchSer.00481A36
    00481A40  |. 8D86 A8010000  LEA EAX,DWORD PTR DS:[ESI+1A8]
    00481A46  |. BA 48FC5000    MOV EDX,OFFSET MatchSer.??_C@_06ILHIHINA@?$LJ?v?$LM?$KN?D?$LP?$AA@
    00481A4B  |. 899E 8C010000  MOV DWORD PTR DS:[ESI+18C],EBX
    00481A51  |. 899E 90010000  MOV DWORD PTR DS:[ESI+190],EBX
    00481A57  |. 899E 94010000  MOV DWORD PTR DS:[ESI+194],EBX
    00481A5D  |. C786 A4010000 >MOV DWORD PTR DS:[ESI+1A4],8
    00481A67  |. 2BD0           SUB EDX,EAX
    00481A69  |. 8DA424 0000000>LEA ESP,DWORD PTR SS:[ESP]
    00481A70  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481A73  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481A75  |. 40             |INC EAX
    00481A76  |. 3ACB           |CMP CL,BL
    00481A78  |.^75 F6          \JNZ SHORT MatchSer.00481A70
    00481A7A  |. BF 0000803F    MOV EDI,3F800000
    00481A7F  |. 8D86 DC010000  LEA EAX,DWORD PTR DS:[ESI+1DC]
    00481A85  |. BA 34FC5000    MOV EDX,OFFSET MatchSer.??_C@_0BE@EJKDIMMP@?$LF?$KF?$LN?$LK?$LI?E?D?$KB?$CI?$LE?$NM?C?$LM?5?$LJ?$KL?G>
    00481A8A  |. 89BE C0010000  MOV DWORD PTR DS:[ESI+1C0],EDI
    00481A90  |. 89BE C4010000  MOV DWORD PTR DS:[ESI+1C4],EDI
    00481A96  |. 899E C8010000  MOV DWORD PTR DS:[ESI+1C8],EBX
    00481A9C  |. C786 D8010000 >MOV DWORD PTR DS:[ESI+1D8],9
    00481AA6  |. 2BD0           SUB EDX,EAX
    00481AA8  |> 8A0C10         /MOV CL,BYTE PTR DS:[EAX+EDX]
    00481AAB  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481AAD  |. 40             |INC EAX
    00481AAE  |. 3ACB           |CMP CL,BL
    00481AB0  |.^75 F6          \JNZ SHORT MatchSer.00481AA8
    00481AB2  |. 8D86 10020000  LEA EAX,DWORD PTR DS:[ESI+210]
    00481AB8  |. BA 2CFC5000    MOV EDX,OFFSET MatchSer.??_C@_04EPBLILKF@Duel?$AA@                                                    ;  ASCII "Duel"
    00481ABD  |. 89BE F4010000  MOV DWORD PTR DS:[ESI+1F4],EDI
    00481AC3  |. C786 F8010000 >MOV DWORD PTR DS:[ESI+1F8],3F19999A
    00481ACD  |. C786 FC010000 >MOV DWORD PTR DS:[ESI+1FC],3F000000
    00481AD7  |. C786 0C020000 >MOV DWORD PTR DS:[ESI+20C],0A
    00481AE1  |. 2BD0           SUB EDX,EAX
    00481AE3  |> 8A0C10         /MOV CL,BYTE PTR DS:[EAX+EDX]
    00481AE6  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481AE8  |. 40             |INC EAX
    00481AE9  |. 3ACB           |CMP CL,BL
    00481AEB  |.^75 F6          \JNZ SHORT MatchSer.00481AE3
    00481AED  |. 89BE 28020000  MOV DWORD PTR DS:[ESI+228],EDI
    00481AF3  |. 89BE 2C020000  MOV DWORD PTR DS:[ESI+22C],EDI
    00481AF9  |. 899E 30020000  MOV DWORD PTR DS:[ESI+230],EBX
    00481AFF  |. 8D6E 2C        LEA EBP,DWORD PTR DS:[ESI+2C]
    00481B02  |. C74424 14 0B00>MOV DWORD PTR SS:[ESP+14],0B
    00481B0A  |. 8D9B 00000000  LEA EBX,DWORD PTR DS:[EBX]
    00481B10  |> 33FF           /XOR EDI,EDI
    00481B12  |> 8D5424 18      |/LEA EDX,DWORD PTR SS:[ESP+18]
    00481B16  |. 52             ||PUSH EDX                                                                                            ; /Arg2
    00481B17  |. 8D4424 24      ||LEA EAX,DWORD PTR SS:[ESP+24]                                                                       ; |
    00481B1B  |. 50             ||PUSH EAX                                                                                            ; |Arg1
    00481B1C  |. 8BCD           ||MOV ECX,EBP                                                                                         ; |
    00481B1E  |. 897C24 20      ||MOV DWORD PTR SS:[ESP+20],EDI                                                                       ; |
    00481B22  |. E8 798FF8FF    ||CALL MatchSer.std::_Tree<std::_Tset_traits<int,std::less<int>,std::allocator<int>,0> >::insert      ; \std::_Tree<std::_Tset_traits<int,std::less<int
    00481B27  |. 47             ||INC EDI
    00481B28  |. 83FF 0F        ||CMP EDI,0F
    00481B2B  |.^7C E5          |\JL SHORT MatchSer.00481B12
    00481B2D  |. 8B4424 14      |MOV EAX,DWORD PTR SS:[ESP+14]
    00481B31  |. 83C5 34        |ADD EBP,34
    00481B34  |. 48             |DEC EAX
    00481B35  |. 894424 14      |MOV DWORD PTR SS:[ESP+14],EAX
    00481B39  JNZ SHORT MatchSer.00481B10
    00481B3B  MOV ECX,DWORD PTR SS:[ESP+2C]
    00481B3F  POP EDI
    00481B40  MOV EAX,ESI
    00481B42  MOV DWORD PTR FS:[0],ECX
    00481B49  POP ESI
    00481B4A  POP EBP
    00481B4B  POP EBX
    00481B4C  MOV ESP,EBP
    00481B4E  POP EBP
    00481B4F  RETN

  9. #9
    Doggie And Rice. Military is offline
    MemberRank
    Jun 2009 Join Date
    Here and AboutLocation
    3,301Posts

    Re: [Info?] Some game mode information

    Quote Originally Posted by PenguinGuy View Post
    Bump.

    Found this in MatchServer. Didn't really get the chance to take a good
    look at these though. Addresses won't match up to 2007 files, so find it on your own.
    Code:
    public: MMatchGameTypeInfo::MMatchGameTypeInfo( void )
    004817D0 > . 56             PUSH ESI
    004817D1   . 57             PUSH EDI
    004817D2   . 8BF9           MOV EDI,ECX
    004817D4   . 8D77 28        LEA ESI,DWORD PTR DS:[EDI+28]
    004817D7   . 8BCE           MOV ECX,ESI
    004817D9   . E8 7284F8FF    CALL MatchSer.std::_Tree<std::_Tset_traits<int,std::less<int>,std::allocator<int>,0> >::>
    004817DE   . 8946 04        MOV DWORD PTR DS:[ESI+4],EAX
    004817E1   . C640 11 01     MOV BYTE PTR DS:[EAX+11],1
    004817E5   . 8B46 04        MOV EAX,DWORD PTR DS:[ESI+4]
    004817E8   . 8940 04        MOV DWORD PTR DS:[EAX+4],EAX
    004817EB   . 8B46 04        MOV EAX,DWORD PTR DS:[ESI+4]
    004817EE   . 8900           MOV DWORD PTR DS:[EAX],EAX
    004817F0   . 8B46 04        MOV EAX,DWORD PTR DS:[ESI+4]
    004817F3   . 8940 08        MOV DWORD PTR DS:[EAX+8],EAX
    004817F6   . 8BC7           MOV EAX,EDI
    004817F8   . 5F             POP EDI
    004817F9   . C746 08 000000>MOV DWORD PTR DS:[ESI+8],0
    00481800   . 5E             POP ESI
    00481801   . C3             RETN
    
    
    bool MBaseGameTypeCatalogue::IsCorrectGameType( int )
    00452B70  MOV EAX,DWORD PTR SS:[ESP+4]
    00452B74  TEST EAX,EAX
    00452B76  JL SHORT MatchSer.00452B82
    00452B78  CMP EAX,0B
    00452B7B  JGE SHORT MatchSer.00452B82
    00452B7D  MOV AL,1
    00452B7F  RETN 4
    00452B82  XOR AL,AL
    00452B84  RETN 4
    
    
    public: MBaseGameTypeCatalogue::MBaseGameTypeCatalogue( void )
    00481860 >/$ 55             PUSH EBP
    00481861  |. 8BEC           MOV EBP,ESP
    00481863  |. 83E4 F8        AND ESP,FFFFFFF8
    00481866  |. 6A FF          PUSH -1
    00481868  |. 68 F6904F00    PUSH MatchSer.004F90F6
    0048186D  |. 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
    00481873  |. 50             PUSH EAX
    00481874  |. 64:8925 000000>MOV DWORD PTR FS:[0],ESP
    0048187B  |. 83EC 1C        SUB ESP,1C
    0048187E  |. 53             PUSH EBX
    0048187F  |. 55             PUSH EBP
    00481880  |. 56             PUSH ESI
    00481881  |. 57             PUSH EDI
    00481882  |. 68 10184800    PUSH MatchSer.MMatchGameTypeInfo::~MMatchGameTypeInfo
    00481887  |. 68 D0174800    PUSH MatchSer.MMatchGameTypeInfo::MMatchGameTypeInfo
    0048188C  |. 8BF1           MOV ESI,ECX
    0048188E  |. 6A 0B          PUSH 0B
    00481890  |. 6A 34          PUSH 34
    00481892  |. 8D7E 04        LEA EDI,DWORD PTR DS:[ESI+4]
    00481895  |. 57             PUSH EDI
    00481896  |. 897424 30      MOV DWORD PTR SS:[ESP+30],ESI
    0048189A  |. C706 28FC5000  MOV DWORD PTR DS:[ESI],OFFSET MatchSer.??_7MBaseGameTypeCatalogue@@6B@
    004818A0  |. E8 45DB0200    CALL MatchSer.`eh vector constructor iterator'
    004818A5  |. 33DB           XOR EBX,EBX
    004818A7  |. B8 ACFC5000    MOV EAX,OFFSET MatchSer.??_C@_0BC@HGIFFOD@Death?5Match?$CI?$LA?$LD?$MA?N?$CJ?$AA@
    004818AC  |. 8BCF           MOV ECX,EDI
    004818AE  |. 2BC8           SUB ECX,EAX
    004818B0  |. 895C24 34      MOV DWORD PTR SS:[ESP+34],EBX
    004818B4  |. 891F           MOV DWORD PTR DS:[EDI],EBX
    004818B6  |. 8D51 04        LEA EDX,DWORD PTR DS:[ECX+4]
    004818B9  |. 8DA424 0000000>LEA ESP,DWORD PTR SS:[ESP]
    004818C0  |> 8A08           /MOV CL,BYTE PTR DS:[EAX]
    004818C2  |. 880C02         |MOV BYTE PTR DS:[EDX+EAX],CL
    004818C5  |. 40             |INC EAX
    004818C6  |. 3ACB           |CMP CL,BL
    004818C8  |.^75 F6          \JNZ SHORT MatchSer.004818C0
    004818CA  |. BD 0000803F    MOV EBP,3F800000
    004818CF  |. 8D46 3C        LEA EAX,DWORD PTR DS:[ESI+3C]
    004818D2  |. BA 98FC5000    MOV EDX,OFFSET MatchSer.??_C@_0BC@MCFLOELJ@Death?5Match?$CI?$LE?$NM?C?$LM?$CJ?$AA@
    004818D7  |. 896F 1C        MOV DWORD PTR DS:[EDI+1C],EBP
    004818DA  |. 896F 20        MOV DWORD PTR DS:[EDI+20],EBP
    004818DD  |. 895F 24        MOV DWORD PTR DS:[EDI+24],EBX
    004818E0  |. C746 38 010000>MOV DWORD PTR DS:[ESI+38],1
    004818E7  |. 2BD0           SUB EDX,EAX
    004818E9  |. 8DA424 0000000>LEA ESP,DWORD PTR SS:[ESP]
    004818F0  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    004818F3  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    004818F5  |. 40             |INC EAX
    004818F6  |. 3ACB           |CMP CL,BL
    004818F8  |.^75 F6          \JNZ SHORT MatchSer.004818F0
    004818FA  |. 896E 54        MOV DWORD PTR DS:[ESI+54],EBP
    004818FD  |. BD CDCC4C3F    MOV EBP,3F4CCCCD
    00481902  |. BF 9A99993E    MOV EDI,3E99999A
    00481907  |. 8D46 70        LEA EAX,DWORD PTR DS:[ESI+70]
    0048190A  |. BA 88FC5000    MOV EDX,OFFSET MatchSer.??_C@_0BA@LGPJLGED@Gladiator?$CI?$LA?$LD?$MA?N?$CJ?$AA@
    0048190F  |. 896E 58        MOV DWORD PTR DS:[ESI+58],EBP
    00481912  |. 897E 5C        MOV DWORD PTR DS:[ESI+5C],EDI
    00481915  |. C746 6C 020000>MOV DWORD PTR DS:[ESI+6C],2
    0048191C  |. 2BD0           SUB EDX,EAX
    0048191E  |. 8BFF           MOV EDI,EDI
    00481920  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481923  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481925  |. 40             |INC EAX
    00481926  |. 3ACB           |CMP CL,BL
    00481928  |.^75 F6          \JNZ SHORT MatchSer.00481920
    0048192A  |. 8D86 A4000000  LEA EAX,DWORD PTR DS:[ESI+A4]
    00481930  |. BA 78FC5000    MOV EDX,OFFSET MatchSer.??_C@_0BA@HDMKAHBJ@Gladiator?$CI?$LE?$NM?C?$LM?$CJ?$AA@
    00481935  |. C786 88000000 >MOV DWORD PTR DS:[ESI+88],3F000000
    0048193F  |. C786 8C000000 >MOV DWORD PTR DS:[ESI+8C],3F800000
    00481949  |. 899E 90000000  MOV DWORD PTR DS:[ESI+90],EBX
    0048194F  |. C786 A0000000 >MOV DWORD PTR DS:[ESI+A0],3
    00481959  |. 2BD0           SUB EDX,EAX
    0048195B  |. EB 03          JMP SHORT MatchSer.00481960
    0048195D  |  8D49 00        LEA ECX,DWORD PTR DS:[ECX]
    00481960  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481963  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481965  |. 40             |INC EAX
    00481966  |. 3ACB           |CMP CL,BL
    00481968  |.^75 F6          \JNZ SHORT MatchSer.00481960
    0048196A  |. 8D86 D8000000  LEA EAX,DWORD PTR DS:[ESI+D8]
    00481970  |. BA 70FC5000    MOV EDX,OFFSET MatchSer.??_C@_06CAHPEHGJ@?$LO?O?$LL?l?$MA?$PM?$AA@
    00481975  |. C786 BC000000 >MOV DWORD PTR DS:[ESI+BC],3F000000
    0048197F  |. 89AE C0000000  MOV DWORD PTR DS:[ESI+C0],EBP
    00481985  |. 89BE C4000000  MOV DWORD PTR DS:[ESI+C4],EDI
    0048198B  |. C786 D4000000 >MOV DWORD PTR DS:[ESI+D4],4
    00481995  |. 2BD0           SUB EDX,EAX
    00481997  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    0048199A  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    0048199C  |. 40             |INC EAX
    0048199D  |. 3ACB           |CMP CL,BL
    0048199F  |.^75 F6          \JNZ SHORT MatchSer.00481997
    004819A1  |. 8D86 0C010000  LEA EAX,DWORD PTR DS:[ESI+10C]
    004819A7  |. BA 64FC5000    MOV EDX,OFFSET MatchSer.??_C@_08GMFLOLMP@?F?$KO?$LH?$LJ?$MA?L?$LE?W?$AA@
    004819AC  |. C786 F0000000 >MOV DWORD PTR DS:[ESI+F0],3F800000
    004819B6  |. 89AE F4000000  MOV DWORD PTR DS:[ESI+F4],EBP
    004819BC  |. 89BE F8000000  MOV DWORD PTR DS:[ESI+F8],EDI
    004819C2  |. C786 08010000 >MOV DWORD PTR DS:[ESI+108],5
    004819CC  |. 2BD0           SUB EDX,EAX
    004819CE  |. 8BFF           MOV EDI,EDI
    004819D0  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    004819D3  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    004819D5  |. 40             |INC EAX
    004819D6  |. 3ACB           |CMP CL,BL
    004819D8  |.^75 F6          \JNZ SHORT MatchSer.004819D0
    004819DA  |. 8D86 40010000  LEA EAX,DWORD PTR DS:[ESI+140]
    004819E0  |. BA 58FC5000    MOV EDX,OFFSET MatchSer.??_C@_08PHGABINM@?$LM?$KN?$LJ?Y?$MA?L?$LJ?z?$AA@
    004819E5  |. 899E 24010000  MOV DWORD PTR DS:[ESI+124],EBX
    004819EB  |. 899E 28010000  MOV DWORD PTR DS:[ESI+128],EBX
    004819F1  |. 899E 2C010000  MOV DWORD PTR DS:[ESI+12C],EBX
    004819F7  |. C786 3C010000 >MOV DWORD PTR DS:[ESI+13C],6
    00481A01  |. 2BD0           SUB EDX,EAX
    00481A03  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481A06  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481A08  |. 40             |INC EAX
    00481A09  |. 3ACB           |CMP CL,BL
    00481A0B  |.^75 F6          \JNZ SHORT MatchSer.00481A03
    00481A0D  |. 8D86 74010000  LEA EAX,DWORD PTR DS:[ESI+174]
    00481A13  |. BA 50FC5000    MOV EDX,OFFSET MatchSer.??_C@_06FHGCMKAG@?D?y?$LN?$LK?F?$KO?$AA@
    00481A18  |. 899E 58010000  MOV DWORD PTR DS:[ESI+158],EBX
    00481A1E  |. 899E 5C010000  MOV DWORD PTR DS:[ESI+15C],EBX
    00481A24  |. 899E 60010000  MOV DWORD PTR DS:[ESI+160],EBX
    00481A2A  |. C786 70010000 >MOV DWORD PTR DS:[ESI+170],7
    00481A34  |. 2BD0           SUB EDX,EAX
    00481A36  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481A39  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481A3B  |. 40             |INC EAX
    00481A3C  |. 3ACB           |CMP CL,BL
    00481A3E  |.^75 F6          \JNZ SHORT MatchSer.00481A36
    00481A40  |. 8D86 A8010000  LEA EAX,DWORD PTR DS:[ESI+1A8]
    00481A46  |. BA 48FC5000    MOV EDX,OFFSET MatchSer.??_C@_06ILHIHINA@?$LJ?v?$LM?$KN?D?$LP?$AA@
    00481A4B  |. 899E 8C010000  MOV DWORD PTR DS:[ESI+18C],EBX
    00481A51  |. 899E 90010000  MOV DWORD PTR DS:[ESI+190],EBX
    00481A57  |. 899E 94010000  MOV DWORD PTR DS:[ESI+194],EBX
    00481A5D  |. C786 A4010000 >MOV DWORD PTR DS:[ESI+1A4],8
    00481A67  |. 2BD0           SUB EDX,EAX
    00481A69  |. 8DA424 0000000>LEA ESP,DWORD PTR SS:[ESP]
    00481A70  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00481A73  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481A75  |. 40             |INC EAX
    00481A76  |. 3ACB           |CMP CL,BL
    00481A78  |.^75 F6          \JNZ SHORT MatchSer.00481A70
    00481A7A  |. BF 0000803F    MOV EDI,3F800000
    00481A7F  |. 8D86 DC010000  LEA EAX,DWORD PTR DS:[ESI+1DC]
    00481A85  |. BA 34FC5000    MOV EDX,OFFSET MatchSer.??_C@_0BE@EJKDIMMP@?$LF?$KF?$LN?$LK?$LI?E?D?$KB?$CI?$LE?$NM?C?$LM?5?$LJ?$KL?G>
    00481A8A  |. 89BE C0010000  MOV DWORD PTR DS:[ESI+1C0],EDI
    00481A90  |. 89BE C4010000  MOV DWORD PTR DS:[ESI+1C4],EDI
    00481A96  |. 899E C8010000  MOV DWORD PTR DS:[ESI+1C8],EBX
    00481A9C  |. C786 D8010000 >MOV DWORD PTR DS:[ESI+1D8],9
    00481AA6  |. 2BD0           SUB EDX,EAX
    00481AA8  |> 8A0C10         /MOV CL,BYTE PTR DS:[EAX+EDX]
    00481AAB  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481AAD  |. 40             |INC EAX
    00481AAE  |. 3ACB           |CMP CL,BL
    00481AB0  |.^75 F6          \JNZ SHORT MatchSer.00481AA8
    00481AB2  |. 8D86 10020000  LEA EAX,DWORD PTR DS:[ESI+210]
    00481AB8  |. BA 2CFC5000    MOV EDX,OFFSET MatchSer.??_C@_04EPBLILKF@Duel?$AA@                                                    ;  ASCII "Duel"
    00481ABD  |. 89BE F4010000  MOV DWORD PTR DS:[ESI+1F4],EDI
    00481AC3  |. C786 F8010000 >MOV DWORD PTR DS:[ESI+1F8],3F19999A
    00481ACD  |. C786 FC010000 >MOV DWORD PTR DS:[ESI+1FC],3F000000
    00481AD7  |. C786 0C020000 >MOV DWORD PTR DS:[ESI+20C],0A
    00481AE1  |. 2BD0           SUB EDX,EAX
    00481AE3  |> 8A0C10         /MOV CL,BYTE PTR DS:[EAX+EDX]
    00481AE6  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00481AE8  |. 40             |INC EAX
    00481AE9  |. 3ACB           |CMP CL,BL
    00481AEB  |.^75 F6          \JNZ SHORT MatchSer.00481AE3
    00481AED  |. 89BE 28020000  MOV DWORD PTR DS:[ESI+228],EDI
    00481AF3  |. 89BE 2C020000  MOV DWORD PTR DS:[ESI+22C],EDI
    00481AF9  |. 899E 30020000  MOV DWORD PTR DS:[ESI+230],EBX
    00481AFF  |. 8D6E 2C        LEA EBP,DWORD PTR DS:[ESI+2C]
    00481B02  |. C74424 14 0B00>MOV DWORD PTR SS:[ESP+14],0B
    00481B0A  |. 8D9B 00000000  LEA EBX,DWORD PTR DS:[EBX]
    00481B10  |> 33FF           /XOR EDI,EDI
    00481B12  |> 8D5424 18      |/LEA EDX,DWORD PTR SS:[ESP+18]
    00481B16  |. 52             ||PUSH EDX                                                                                            ; /Arg2
    00481B17  |. 8D4424 24      ||LEA EAX,DWORD PTR SS:[ESP+24]                                                                       ; |
    00481B1B  |. 50             ||PUSH EAX                                                                                            ; |Arg1
    00481B1C  |. 8BCD           ||MOV ECX,EBP                                                                                         ; |
    00481B1E  |. 897C24 20      ||MOV DWORD PTR SS:[ESP+20],EDI                                                                       ; |
    00481B22  |. E8 798FF8FF    ||CALL MatchSer.std::_Tree<std::_Tset_traits<int,std::less<int>,std::allocator<int>,0> >::insert      ; \std::_Tree<std::_Tset_traits<int,std::less<int
    00481B27  |. 47             ||INC EDI
    00481B28  |. 83FF 0F        ||CMP EDI,0F
    00481B2B  |.^7C E5          |\JL SHORT MatchSer.00481B12
    00481B2D  |. 8B4424 14      |MOV EAX,DWORD PTR SS:[ESP+14]
    00481B31  |. 83C5 34        |ADD EBP,34
    00481B34  |. 48             |DEC EAX
    00481B35  |. 894424 14      |MOV DWORD PTR SS:[ESP+14],EAX
    00481B39  JNZ SHORT MatchSer.00481B10
    00481B3B  MOV ECX,DWORD PTR SS:[ESP+2C]
    00481B3F  POP EDI
    00481B40  MOV EAX,ESI
    00481B42  MOV DWORD PTR FS:[0],ECX
    00481B49  POP ESI
    00481B4A  POP EBP
    00481B4B  POP EBX
    00481B4C  MOV ESP,EBP
    00481B4E  POP EBP
    00481B4F  RETN
    think you could of made a new thread and link to this one. Anyway,nice find.

  10. #10
    Praise the Sun! Solaire is offline
    MemberRank
    Dec 2007 Join Date
    Undead BurgLocation
    2,862Posts

    Re: [Info?] Some game mode information

    That stuff is already in the PDB dumps.

  11. #11
    Account Upgraded | Title Enabled! wtfhacker is offline
    MemberRank
    Dec 2009 Join Date
    328Posts

    Re: [Info?] Some game mode information

    Few of this I knew, few not, thanks.

  12. #12
    Account Upgraded | Title Enabled! PenguinGuys is offline
    MemberRank
    Sep 2009 Join Date
    AlabamaLocation
    261Posts

    Re: [Info?] Some game mode information

    Quote Originally Posted by Wizkidje View Post
    That stuff is already in the PDB dumps.
    Yeah, but I'm not sure where your going with this.

    Quote Originally Posted by military
    think you could of made a new thread and link to this one. Anyway,nice find.
    So another idiot can bump it?

    Getting closer, going to start a little game mode in ASM tonight and try to custom game modes going.

    GunZ Old runnable!

    458370: ZStageSetting::InitStageSettingGameType
    Code:
    00458370  /$ 51             PUSH ECX
    00458371  |. 56             PUSH ESI
    00458372  |. 57             PUSH EDI
    00458373  |. E8 680E0300    CALL GunzOld.004891E0
    00458378  |. 8BF0           MOV ESI,EAX
    0045837A  |. 81C6 7C240000  ADD ESI,247C
    00458380  |. 0F84 A0000000  JE GunzOld.00458426
    00458386  |. 83EC 1C        SUB ESP,1C
    00458389  |. 8BCC           MOV ECX,ESP
    0045838B  |. 896424 24      MOV DWORD PTR SS:[ESP+24],ESP
    0045838F  |. 6A 09          PUSH 9
    00458391  |. C741 18 0F0000>MOV DWORD PTR DS:[ECX+18],0F
    00458398  |. C741 14 000000>MOV DWORD PTR DS:[ECX+14],0
    0045839F  |. 68 F89D5B00    PUSH GunzOld.005B9DF8                                ;  ASCII "StageType"
    004583A4  |. C641 04 00     MOV BYTE PTR DS:[ECX+4],0
    004583A8  |. E8 B396FAFF    CALL GunzOld.00401A60
    004583AD  |. 8BCE           MOV ECX,ESI
    004583AF  |. E8 FC210D00    CALL GunzOld.0052A5B0
    004583B4  |. 8BF8           MOV EDI,EAX
    004583B6  |. 85FF           TEST EDI,EDI
    004583B8  |. 74 6C          JE SHORT GunzOld.00458426
    004583BA  |. 8BCF           MOV ECX,EDI
    004583BC  |. E8 BFF30D00    CALL GunzOld.00537780
    004583C1  |. 33F6           XOR ESI,ESI
    004583C3  |> 83FE 06        /CMP ESI,6
    004583C6  |. 75 10          |JNZ SHORT GunzOld.004583D8
    004583C8  |. E8 F3330400    |CALL GunzOld.0049B7C0
    004583CD  |. 85C0           |TEST EAX,EAX
    004583CF  |. 74 46          |JE SHORT GunzOld.00458417
    004583D1  |. E8 EA330400    |CALL GunzOld.0049B7C0
    004583D6  |. EB 3F          |JMP SHORT GunzOld.00458417
    004583D8  |> 83FE 07        |CMP ESI,7
    004583DB  |. 75 24          |JNZ SHORT GunzOld.00458401
    004583DD  |. E8 DE330400    |CALL GunzOld.0049B7C0
    004583E2  |. 85C0           |TEST EAX,EAX
    004583E4  |. 74 31          |JE SHORT GunzOld.00458417
    004583E6  |. E8 D5330400    |CALL GunzOld.0049B7C0
    004583EB  |. 83B8 FC010000 >|CMP DWORD PTR DS:[EAX+1FC],4
    004583F2  |. 75 23          |JNZ SHORT GunzOld.00458417
    004583F4  |. E8 F7340400    |CALL GunzOld.0049B8F0
    004583F9  |. 05 74010000    |ADD EAX,174
    004583FE  |. 50             |PUSH EAX
    004583FF  |. EB 0F          |JMP SHORT GunzOld.00458410
    00458401  |> E8 EA340400    |CALL GunzOld.0049B8F0
    00458406  |. 8BCE           |MOV ECX,ESI
    00458408  |. 6BC9 34        |IMUL ECX,ECX,34
    0045840B  |. 8D5401 08      |LEA EDX,DWORD PTR DS:[ECX+EAX+8]
    0045840F  |. 52             |PUSH EDX
    00458410  |> 8BCF           |MOV ECX,EDI
    00458412  |. E8 49F30D00    |CALL GunzOld.00537760
    00458417  |> 46             |INC ESI
    00458418  |. 83FE 08        |CMP ESI,8
    0045841B  |.^7C A6          \JL SHORT GunzOld.004583C3
    0045841D  |. 6A 00          PUSH 0
    0045841F  |. 8BCF           MOV ECX,EDI
    00458421  |. E8 2AF50D00    CALL GunzOld.00537950
    00458426  |> 5F             POP EDI
    00458427  |. 5E             POP ESI
    00458428  |. 59             POP ECX
    00458429  \. C3             RETN
    501A60: MBaseGameTypeCatalogue::MBaseGameTypeCatalogue
    Code:
    00501A60  /$ 55             PUSH EBP
    00501A61  |. 8BEC           MOV EBP,ESP
    00501A63  |. 83E4 F8        AND ESP,FFFFFFF8
    00501A66  |. 6A FF          PUSH -1
    00501A68  |. 68 16EB5A00    PUSH GunzOld.005AEB16                                ;  SE handler installation
    00501A6D  |. 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
    00501A73  |. 50             PUSH EAX
    00501A74  |. 64:8925 000000>MOV DWORD PTR FS:[0],ESP
    00501A7B  |. 83EC 1C        SUB ESP,1C
    00501A7E  |. 53             PUSH EBX
    00501A7F  |. 55             PUSH EBP
    00501A80  |. 56             PUSH ESI
    00501A81  |. 57             PUSH EDI
    00501A82  |. 68 101A5000    PUSH GunzOld.00501A10
    00501A87  |. 68 D0195000    PUSH GunzOld.005019D0
    00501A8C  |. 8BF1           MOV ESI,ECX
    00501A8E  |. 6A 08          PUSH 8
    00501A90  |. 6A 34          PUSH 34
    00501A92  |. 8D7E 04        LEA EDI,DWORD PTR DS:[ESI+4]
    00501A95  |. 57             PUSH EDI
    00501A96  |. 897424 30      MOV DWORD PTR SS:[ESP+30],ESI
    00501A9A  |. C706 04815C00  MOV DWORD PTR DS:[ESI],GunzOld.005C8104
    00501AA0  |. E8 3A330400    CALL GunzOld.00544DDF
    00501AA5  |. 33DB           XOR EBX,EBX
    00501AA7  |. B8 64815C00    MOV EAX,GunzOld.005C8164
    00501AAC  |. 8BCF           MOV ECX,EDI
    00501AAE  |. 2BC8           SUB ECX,EAX
    00501AB0  |. 895C24 34      MOV DWORD PTR SS:[ESP+34],EBX
    00501AB4  |. 891F           MOV DWORD PTR DS:[EDI],EBX
    00501AB6  |. 8D51 04        LEA EDX,DWORD PTR DS:[ECX+4]
    00501AB9  |. 8DA424 0000000>LEA ESP,DWORD PTR SS:[ESP]
    00501AC0  |> 8A08           /MOV CL,BYTE PTR DS:[EAX]
    00501AC2  |. 880C02         |MOV BYTE PTR DS:[EDX+EAX],CL
    00501AC5  |. 40             |INC EAX
    00501AC6  |. 3ACB           |CMP CL,BL
    00501AC8  |.^75 F6          \JNZ SHORT GunzOld.00501AC0
    00501ACA  |. BD 0000803F    MOV EBP,3F800000
    00501ACF  |. 8D46 3C        LEA EAX,DWORD PTR DS:[ESI+3C]
    00501AD2  |. BA 50815C00    MOV EDX,GunzOld.005C8150
    00501AD7  |. 896F 1C        MOV DWORD PTR DS:[EDI+1C],EBP
    00501ADA  |. 896F 20        MOV DWORD PTR DS:[EDI+20],EBP
    00501ADD  |. 895F 24        MOV DWORD PTR DS:[EDI+24],EBX
    00501AE0  |. C746 38 010000>MOV DWORD PTR DS:[ESI+38],1
    00501AE7  |. 2BD0           SUB EDX,EAX
    00501AE9  |. 8DA424 0000000>LEA ESP,DWORD PTR SS:[ESP]
    00501AF0  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00501AF3  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00501AF5  |. 40             |INC EAX
    00501AF6  |. 3ACB           |CMP CL,BL
    00501AF8  |.^75 F6          \JNZ SHORT GunzOld.00501AF0
    00501AFA  |. 8D46 70        LEA EAX,DWORD PTR DS:[ESI+70]
    00501AFD  |. BA 40815C00    MOV EDX,GunzOld.005C8140
    00501B02  |. 896E 54        MOV DWORD PTR DS:[ESI+54],EBP
    00501B05  |. C746 58 CDCC4C>MOV DWORD PTR DS:[ESI+58],3F4CCCCD
    00501B0C  |. C746 5C 9A9999>MOV DWORD PTR DS:[ESI+5C],3E99999A
    00501B13  |. C746 6C 020000>MOV DWORD PTR DS:[ESI+6C],2
    00501B1A  |. 2BD0           SUB EDX,EAX
    00501B1C  |. 8D6424 00      LEA ESP,DWORD PTR SS:[ESP]
    00501B20  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00501B23  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00501B25  |. 40             |INC EAX
    00501B26  |. 3ACB           |CMP CL,BL
    00501B28  |.^75 F6          \JNZ SHORT GunzOld.00501B20
    00501B2A  |. BF 0000003F    MOV EDI,3F000000
    00501B2F  |. 8D86 A4000000  LEA EAX,DWORD PTR DS:[ESI+A4]
    00501B35  |. BA 30815C00    MOV EDX,GunzOld.005C8130
    00501B3A  |. 89BE 88000000  MOV DWORD PTR DS:[ESI+88],EDI
    00501B40  |. 89AE 8C000000  MOV DWORD PTR DS:[ESI+8C],EBP
    00501B46  |. 899E 90000000  MOV DWORD PTR DS:[ESI+90],EBX
    00501B4C  |. C786 A0000000 >MOV DWORD PTR DS:[ESI+A0],3
    00501B56  |. 2BD0           SUB EDX,EAX
    00501B58  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00501B5B  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00501B5D  |. 40             |INC EAX
    00501B5E  |. 3ACB           |CMP CL,BL
    00501B60  |.^75 F6          \JNZ SHORT GunzOld.00501B58
    00501B62  |. 89BE BC000000  MOV DWORD PTR DS:[ESI+BC],EDI
    00501B68  |. BF CDCC4C3F    MOV EDI,3F4CCCCD
    00501B6D  |. 8D86 D8000000  LEA EAX,DWORD PTR DS:[ESI+D8]
    00501B73  |. BA 28815C00    MOV EDX,GunzOld.005C8128
    00501B78  |. 89BE C0000000  MOV DWORD PTR DS:[ESI+C0],EDI
    00501B7E  |. C786 C4000000 >MOV DWORD PTR DS:[ESI+C4],3E99999A
    00501B88  |. C786 D4000000 >MOV DWORD PTR DS:[ESI+D4],4
    00501B92  |. 2BD0           SUB EDX,EAX
    00501B94  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00501B97  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00501B99  |. 40             |INC EAX
    00501B9A  |. 3ACB           |CMP CL,BL
    00501B9C  |.^75 F6          \JNZ SHORT GunzOld.00501B94
    00501B9E  |. 8D86 0C010000  LEA EAX,DWORD PTR DS:[ESI+10C]
    00501BA4  |. BA 1C815C00    MOV EDX,GunzOld.005C811C
    00501BA9  |. 89AE F0000000  MOV DWORD PTR DS:[ESI+F0],EBP
    00501BAF  |. 89BE F4000000  MOV DWORD PTR DS:[ESI+F4],EDI
    00501BB5  |. C786 F8000000 >MOV DWORD PTR DS:[ESI+F8],3E99999A
    00501BBF  |. C786 08010000 >MOV DWORD PTR DS:[ESI+108],5
    00501BC9  |. 2BD0           SUB EDX,EAX
    00501BCB  |. EB 03          JMP SHORT GunzOld.00501BD0
    00501BCD  |  8D49 00        LEA ECX,DWORD PTR DS:[ECX]
    00501BD0  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00501BD3  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00501BD5  |. 40             |INC EAX
    00501BD6  |. 3ACB           |CMP CL,BL
    00501BD8  |.^75 F6          \JNZ SHORT GunzOld.00501BD0
    00501BDA  |. 8D86 40010000  LEA EAX,DWORD PTR DS:[ESI+140]
    00501BE0  |. BA 10815C00    MOV EDX,GunzOld.005C8110
    00501BE5  |. 899E 24010000  MOV DWORD PTR DS:[ESI+124],EBX
    00501BEB  |. 899E 28010000  MOV DWORD PTR DS:[ESI+128],EBX
    00501BF1  |. 899E 2C010000  MOV DWORD PTR DS:[ESI+12C],EBX
    00501BF7  |. C786 3C010000 >MOV DWORD PTR DS:[ESI+13C],6
    00501C01  |. 2BD0           SUB EDX,EAX
    00501C03  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00501C06  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00501C08  |. 40             |INC EAX
    00501C09  |. 3ACB           |CMP CL,BL
    00501C0B  |.^75 F6          \JNZ SHORT GunzOld.00501C03
    00501C0D  |. 8D86 74010000  LEA EAX,DWORD PTR DS:[ESI+174]
    00501C13  |. BA 08815C00    MOV EDX,GunzOld.005C8108
    00501C18  |. 899E 58010000  MOV DWORD PTR DS:[ESI+158],EBX
    00501C1E  |. 899E 5C010000  MOV DWORD PTR DS:[ESI+15C],EBX
    00501C24  |. 899E 60010000  MOV DWORD PTR DS:[ESI+160],EBX
    00501C2A  |. C786 70010000 >MOV DWORD PTR DS:[ESI+170],7
    00501C34  |. 2BD0           SUB EDX,EAX
    00501C36  |> 8A0C02         /MOV CL,BYTE PTR DS:[EDX+EAX]
    00501C39  |. 8808           |MOV BYTE PTR DS:[EAX],CL
    00501C3B  |. 40             |INC EAX
    00501C3C  |. 3ACB           |CMP CL,BL
    00501C3E  |.^75 F6          \JNZ SHORT GunzOld.00501C36
    00501C40  |. 899E 8C010000  MOV DWORD PTR DS:[ESI+18C],EBX
    00501C46  |. 899E 90010000  MOV DWORD PTR DS:[ESI+190],EBX
    00501C4C  |. 899E 94010000  MOV DWORD PTR DS:[ESI+194],EBX
    00501C52  |. 8D6E 2C        LEA EBP,DWORD PTR DS:[ESI+2C]
    00501C55  |. C74424 14 0800>MOV DWORD PTR SS:[ESP+14],8
    00501C5D  |. 8D49 00        LEA ECX,DWORD PTR DS:[ECX]
    00501C60  |> 33FF           /XOR EDI,EDI
    00501C62  |> 8D5424 18      |/LEA EDX,DWORD PTR SS:[ESP+18]
    00501C66  |. 52             ||PUSH EDX
    00501C67  |. 8D4424 24      ||LEA EAX,DWORD PTR SS:[ESP+24]
    00501C6B  |. 50             ||PUSH EAX
    00501C6C  |. 8BCD           ||MOV ECX,EBP
    00501C6E  |. 897C24 20      ||MOV DWORD PTR SS:[ESP+20],EDI
    00501C72  |. E8 79B5FFFF    ||CALL GunzOld.004FD1F0
    00501C77  |. 47             ||INC EDI
    00501C78  |. 83FF 0C        ||CMP EDI,0C
    00501C7B  |.^7C E5          |\JL SHORT GunzOld.00501C62
    00501C7D  |. 8B4424 14      |MOV EAX,DWORD PTR SS:[ESP+14]
    00501C81  |. 83C5 34        |ADD EBP,34
    00501C84  |. 48             |DEC EAX
    00501C85  |. 894424 14      |MOV DWORD PTR SS:[ESP+14],EAX
    00501C89  |.^75 D5          \JNZ SHORT GunzOld.00501C60
    00501C8B  |. 8B4C24 2C      MOV ECX,DWORD PTR SS:[ESP+2C]
    00501C8F  |. 5F             POP EDI
    00501C90  |. 8BC6           MOV EAX,ESI
    00501C92  |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX
    00501C99  |. 5E             POP ESI
    00501C9A  |. 5D             POP EBP
    00501C9B  |. 5B             POP EBX
    00501C9C  |. 8BE5           MOV ESP,EBP
    00501C9E  |. 5D             POP EBP
    00501C9F  \. C3             RETN
    00501CA0   . 56             PUSH ESI
    00501CA1   . 8BF1           MOV ESI,ECX
    00501CA3   . E8 98FDFFFF    CALL GunzOld.00501A40
    00501CA8   . F64424 08 01   TEST BYTE PTR SS:[ESP+8],1
    00501CAD   . 74 09          JE SHORT GunzOld.00501CB8
    00501CAF   . 56             PUSH ESI
    00501CB0   . E8 50EB0900    CALL GunzOld.005A0805
    00501CB5   . 83C4 04        ADD ESP,4
    00501CB8   > 8BC6           MOV EAX,ESI
    00501CBA   . 5E             POP ESI
    00501CBB   . C2 0400        RETN 4
    My new PC only has 128MB of RAM, won't open large files.
    To lazy to find the parameters (if any) in these functions.

  13. #13
    Member Your_Mom is offline
    MemberRank
    Mar 2010 Join Date
    Where I want toLocation
    88Posts

    Re: [Info?] Some game mode information

    Bump!
    Found a bit more. This time, in MatchServer. ( Not for 2008, and won't match Br/Jan/June MatchServer I believe. )

    Code:
    MMatchRuleSoloDeath::RoundCount( void )
    MOV EAX, DWORD PTR DS:[ECX+10]
    INC EAX
    CMP EAX,1
    MOV DWORD PT DS:[ECX+10],EAX
    SETL AL
    RETN
    
    
    
    MMatchRuleSoloDeath::CheckKillCount( class MMatchObject* )
    PUSH ECX
    PUSH ESI
    PUSH ESI
    MOV EDI, DWORD PTR DS:[ECX+8]
    MOV ESI, DWORD PTR DS:[EDI+14C]
    MOV EAX, DWORD PTR DS:[ESI]
    CMP EAX, ESI
    MOV DWORD PTR SS:[ESP+8],EAX
    JE SHORT (POP EDI)
    JMP SHORT (MOV EAX, DWORD PTR DS:[EAX+14])
    LEA ESP, DWORD PTR SS:[ESP]
    NOP
    MOV EAX, DWORD PTR DS:[EAX+14]
    MOV CL, BYTE PTR DS:[EAX+2F1]
    TEST CL, CL
    JE SHORT (LEA ECX, DWORD PTR SS:[ESP+8])
    MOV EAX, DWORD PTR DS:[EAX+2FC]
    CMP EAX, DWORD PTR DS:[EDI+1AC]
    JNB SHORT (POP EDI)
    LEA ECX, DWORD PTR SS:[ESP+8]
    CALL 0042C350
    MOV EAX, DWORD PTR SS:[ESP+8]
    CMP EAX, ESI
    JNZ SHORT (MOV EAX, DWORD PTR DS:[EAX+14]) ** Above: MOV CL, BYTE PTR DS:[EAX+2F1] **
    POP EDI
    XOR AL, AL
    POP ESI
    POP ECX
    RETN 4
    POP EDI
    MOV AL,1
    POP ESI
    POP ECX
    RETN 4
    
    
    MMatchRuleSoloDeath::GetGameType( void )
    MOV EAX, GAMETYPE_ID
    RETN
    
    
    
    MMatchRuleSoloDeath::OnRoundTimeOut( void )
    MOV DWORD PTR DS:[ECX+14],0
    RETN
    
    
    
    MMatchRuleSoloDeath::OnCheckRoundFinish( void )
    PUSH 0
    CALL MMatchRuleSoloDeath::CheckKillCount
    TEST AL,AL
    SETNE AL
    RETN
    
    
    
    MMatchRuleSoloDeath::MMatchRuleSoloDeath( class MMatchStage* )
    MOV EAX, DWORD PTR SS:[ESP+4]
    PUSH ESI
    PUSH EAX
    MOV ESI, ECX
    CALL MMatchRule::MMatchRule
    MOV DWORD PTR DS:[ESI],0050F750
    MOV EAX, ESI
    POP ESI
    RETN 4



Advertisement