Most visitors online was 12487 , on 27 Apr 2024
Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!
Join Today!00436367 833D B0A54D03>CMP DWORD PTR DS:[34DA5B0],1
00580E78 |. 83F8 01 CMP EAX,1
00436367 833D B0A54D03>CMP DWORD PTR DS:[34DA5B0],1
00580E78 |. 83F8 01 CMP EAX,1
00436364 test eax,eax
00436366 je short 0043637A
00436368 push 5C71AC ; ASCII "true"
0043636D push eax
0043636E call esi
00436364 test eax,eax
00436366 je short 0043637A
00436368 push 5C71AC ; ASCII "true"
0043636D push eax
0043636E call esi
0043635B mov eax,[8C901C]
00436360 cmp eax,32
00436363 jge 00436645
00436369 lea ecx,[esp+10]
0043636D shl eax,6
00580E74 push esi ; /Arg3
00580E75 push offset KPT1872(NoXTrap).005E57F4 ; |Arg2 = ASCII "szDeleteChaSecessionFinish"
00580E7A push offset KPT1872(NoXTrap).0340B178 ; |Arg1 = KPT1872(NoXTrap).340B178
00580E7F call 0057FB50 ; \KPT1872(NoXTrap).0057FB50
0040153E cmp dword ptr [6E53E4],1
0040153E cmp dword ptr [6E53E4],1
0040911F cmp dword ptr [5F1A1C],1
00409240 cmp dword ptr [5F1A1C],1
00410B43 cmp dword ptr [5F1DC4],1
00411CD9 cmp dword ptr [33C7E64],1
004167DC cmp dword ptr [8C9254],1
0042BC0B cmp dword ptr [71EBA0],1
0042E726 cmp dword ptr [8C4D54],1
0043E916 cmp dword ptr [90221C],1
00473404 cmp dword ptr [30CF860],1
00478F85 cmp dword ptr [30873F0],1
004790EC cmp dword ptr [310F7CC],1
0047944B cmp dword ptr [310F7CC],1
0047C6F4 cmp dword ptr [30874D0],1 ; Default case of switch KPT1872(NoXTrap).47C5CA
004835A0 cmp dword ptr [30916E8],1
00487F09 cmp dword ptr [30916BC],1
0048811B cmp dword ptr [30916C0],1
0048A76D cmp dword ptr [30D006C],1
0048B2AF cmp dword ptr [30D006C],1
0048D720 cmp dword ptr [30CE390],1
0048F755 cmp dword ptr [30CB470],1
004966D9 cmp dword ptr [30D0154],1
00496923 cmp dword ptr [30CF4D8],1
004969A6 cmp dword ptr [30CF4D4],1
00496E94 cmp dword ptr [30CF4D8],1 ; Default case of switch KPT1872(NoXTrap).496C74
004982AF cmp dword ptr [30CF898],1
0049C396 cmp dword ptr [30CFFD8],1 ; Case 4 of switch KPT1872(NoXTrap).49C336
0049E697 cmp dword ptr [30CFFDC],1 ; Default case of switch KPT1872(NoXTrap).49E44B
004A4EF5 cmp dword ptr [308742C],1
004A6986 cmp dword ptr [310F860],1
004A77D0 cmp dword ptr [310F7CC],1
004A7B4B cmp dword ptr [310F7CC],1
004B07C0 cmp dword ptr [310F7CC],1
004C391B cmp dword ptr [313F010],1
004C7DEF cmp dword ptr [313EF88],1
004DEB80 cmp dword ptr [32C1E68],1 ; KPT1872(NoXTrap).004DEB80(guessed Arg1)
004DF6B0 cmp dword ptr [32C1E68],1 ; KPT1872(NoXTrap).004DF6B0(guessed Arg1)
004DF700 cmp dword ptr [32C1E68],1 ; KPT1872(NoXTrap).004DF700(guessed void)
004DF7B0 cmp dword ptr [32C1E68],1 ; KPT1872(NoXTrap).004DF7B0(guessed void)
004DF7D0 cmp dword ptr [32C1E68],1
004EB1B6 cmp dword ptr [71A59C],1
004EB400 cmp dword ptr [71A59C],1
004ED560 cmp dword ptr [71A59C],1
004ED784 cmp dword ptr [71A59C],1
004ED9DD cmp dword ptr [71A59C],1
004EDC28 cmp dword ptr [71A59C],1
0050A603 cmp dword ptr [6D9BD8],1
0050EB65 cmp dword ptr [32D03B8],1
0055DC47 cmp dword ptr [33BF1E8],1
0055E3AC cmp dword ptr [3382280],1
00573CAC cmp dword ptr [3444428],1 ; Case 14 of cascaded IF KPT1872(NoXTrap).573C9E
0057EF79 cmp dword ptr [3448DA8],1
0057F1A0 cmp dword ptr [3448DA8],1 ; KPT1872(NoXTrap).0057F1A0(guessed Arg1,Arg2,Arg3,Arg4,Arg5)
005802BA cmp dword ptr [34EA7E8],1
00589270 cmp dword ptr [39EE3D0],1
00592035 cmp dword ptr [6E49A0],1 ; Default case of switch KPT1872(NoXTrap).591F9E
005920F2 |cmp dword ptr [6E49A0],1
0059A551 cmp dword ptr [6E49A0],1
0059A875 cmp dword ptr [6E49A0],1
005AC77D cmp dword ptr [43F0200],1
005AD0EE cmp dword ptr [6E49A0],1
005ADD28 cmp dword ptr [6E49A0],1 ; KPT1872(NoXTrap).005ADD28(guessed Arg1)
005ADD51 cmp dword ptr [6E49A0],1 ; KPT1872(NoXTrap).005ADD51(guessed Arg1)
005AE226 cmp dword ptr [6E49A0],1
005AE978 cmp dword ptr [43EFB28],1 ; KPT1872(NoXTrap).005AE978(guessed Arg1)
005AEA6F cmp dword ptr [43EFB28],1
005AEEFD cmp dword ptr [6E49A0],1
005AF224 cmp dword ptr [6E49A0],1
005B1031 cmp dword ptr [6E49A0],1
005B272D cmp dword ptr [6E49A0],1
005B3048 cmp dword ptr [6E49A0],1
005B30CE cmp dword ptr [6E49A0],1
005B3179 cmp dword ptr [6E49A0],1
005B339F cmp dword ptr [6E49A0],1
005B340E cmp dword ptr [6E49A0],1
005B34B3 cmp dword ptr [6E49A0],1 ; Default case of cascaded IF KPT1872(NoXTrap).5B3486
005B391E cmp dword ptr [6E49A0],1
005B3979 cmp dword ptr [6E49A0],1
005B3A4B cmp dword ptr [6E49A0],1
005B3A8D cmp dword ptr [6E49A0],1
005B5704 cmp dword ptr [6E4994],1
005B5839 cmp dword ptr [6E4994],1 ; Case 0 of cascaded IF KPT1872(NoXTrap).5B5830
005B6BA1 cmp dword ptr [6E4994],1
005B6C1F cmp dword ptr [6E4994],1
005B7351 cmp dword ptr [6E49A0],1
005B7399 cmp dword ptr [6E49A0],1
00436360 push ebp
00436361 mov ebp,[esi+27C]
00436367 cmp dword ptr [34DA5B0],1
0043636E jne short Label
00436370 add ebp,24
00436373 mov [esi+27C],ebp
00436379 cmp dword ptr [esi+27C],320
00436383 jle short Label
00436385 mov dword ptr [esi+27C],320
Label:
0043638F pop ebp
00436390 cmp [esi+4780],ebp
00436396 jne short 0043639E
00436398 mov [esi+214],ebp
0043639E mov [esi+4788],ebp
004363A4 ret
0042CC25 imul ecx
0042CC27 sar edx,5
0042CC2A mov eax,edx
0042CC2C shr eax,1F
0042CC2F add edx,eax
0042CC31 add edx,edi
0042CC33 cmp edx,150
0042CC39 mov [esi+27C],edx
0042CC3F jle short 0042CC4B
0042CC41 mov dword ptr [esi+27C],[COLOR="#FF0000"]150[/COLOR]
[COLOR="#FF0000"]0042CC4B cmp [esi+4780],ebp[/COLOR]
0042CE25 imul ecx
0042CE27 sar edx,5
0042CE2A mov eax,edx
0042CE2C shr eax,1F
0042CE2F add edx,eax
0042CE31 add edx,edi
0042CE33 cmp edx,320
0042CE39 mov [esi+27C],edx
0042CE3F jle short 0042CE4B
0042CE41 mov dword ptr [esi+27C],[COLOR="#FF0000"]320[/COLOR]
0042CE4B [COLOR="#FF0000"]call 00436360 ;Leads to new routine above[/COLOR]
00580E5B |. lea eax,[esp+48]
00580E5F |. push eax ; /Arg3 => offset LOCAL.15
00580E60 |. push esi ; |Arg2
00580E61 |. push offset Magic.005E9D90 ; |Arg1 = ASCII "CNFlag="
00580E66 |. mov dword ptr [34DA5B0],0 ; |
00580E70 |. call 0057FA10 ; \Magic.0057FA10
00580E75 |. add esp,0C
[highlight]00580E78 |. cmp eax,1[/highlight]
00580E7B |. pop esi
00580E7C |. jne short Label
00580E7E |. lea ecx,[esp+44]
00580E82 |. push ecx ; /Arg1 => offset LOCAL.15
00580E83 |. call Jump ; 005B10BC \Magic.005B1064
00580E88 |. add esp,4
00580E8B |. mov [34DA5B0],eax
Label:
00580E90 |> pop edi
00580E91 |> add esp,80 ; Default case of switch Magic.580CBA
00580E97 \. ret
Jump:
005B10BC \$ jmp Loop ; 005B1064
Loop:
005B1064 /$ push esi ; Magic.005B1064(guessed Arg1)
005B1065 |. mov esi,[esp+8]
005B1069 |. jmp short Skip ; 005B106C
005B106B |> /inc esi
Skip
005B106C |> |movzx eax,byte ptr [esi]
005B106F |. |push eax ; /Arg1
005B1070 |. |call 005B65F0 ; \Magic.005B65F0
005B1075 |. |test eax,eax
005B1077 |. |pop ecx
005B1078 |.^\jne short Skip ; 005B106B
005B107A |. movzx ecx,byte ptr [esi]
005B107D |. inc esi
005B107E |. cmp ecx,2D
005B1081 |. mov edx,ecx
005B1083 |. je short Opt1 ; 005B108A
005B1085 |. cmp ecx,2B
005B1088 |. jne short Opt2 ; 005B108E
Opt1:
005B108A |> movzx ecx,byte ptr [esi]
005B108D |. inc esi
Opt2:
005B108E |> xor eax,eax
Inner:
005B1090 |> /cmp ecx,30 ; Switch (cases 30..39, 2 exits)
005B1093 |. |jl short 005B109F
005B1095 |. |cmp ecx,39
005B1098 |. |jg short 005B109F
005B109A |. |sub ecx,30
005B109D |. |jmp short 005B10A2
005B109F |> |or ecx,FFFFFFFF ; Default case of switch Magic.5B1090
005B10A2 |> |cmp ecx,-1 ; Cases 30 ('0'), 31 ('1'), 32 ('2'), 33 ('3'), 34 ('4'), 35 ('5'), 36 ('6'), 37 ('7'), 38 ('8'), 39 ('9') of switch Magic.5B1090
005B10A5 |. |je short Exit ; 005B10B3
005B10A7 |. |lea eax,[eax*4+eax]
005B10AA |. |lea eax,[eax*2+ecx]
005B10AD |. |movzx ecx,byte ptr [esi]
005B10B0 |. |inc esi
005B10B1 |.^\jmp short Inner ; 005B1090
Exit:
005B10B3 |> cmp edx,2D
005B10B6 |. pop esi
005B10B7 |. jne short 005B10BB
005B10B9 |. neg eax
005B10BB |> ret
005B10BC \$^jmp Loop
0057CF1B |. lea eax,[esp+48]
0057CF1F |. push eax ; /Arg3 => offset LOCAL.15
0057CF20 |. push esi ; |Arg2
0057CF21 |. push offset KPT1872.005E51DC ; |Arg1 = ASCII "CNFlag="
0057CF26 |. mov dword ptr [3444500],0 ; |
0057CF30 |. call 0057BAD0 ; \KPT1872.0057BAD0
0057CF35 |. add esp,0C
[highlight]0057CF38 |. cmp eax,1[/highlight]
0057CF3B |. pop esi
0057CF3C |. jne short Label ; 0057CF50
0057CF3E |. lea ecx,[esp+44]
0057CF42 |. push ecx ; /Arg1 => offset LOCAL.15
0057CF43 |. call Jump ; 005AD18C \KPT1872.005AD134
0057CF48 |. add esp,4
0057CF4B |. mov [3444500],eax
Label:
0057CF50 |> pop edi
0057CF51 |> add esp,80 ; Default case of switch KPT1872(NoXTrap).57CD7A
0057CF57 \. ret
Hmm... okay, lets look at the code in my first analysis again... Humanize it a bit more:-bob, the new routine seems add values in others.
example:
add 100 of HP
cmp value, if 1, add more 100 RES.
or not, seems a comparation a value, if greater or equal, not add value in char.
MyGlobal equ d 34DA5B0h
macro Local op1,op2
{
op1*4+op2
}
Start:
imul ecx
sar edx, 5
mov eax, edx
shr eax, 31
add edx, eax
add edx, edi
cmp edx, 800
mov [Local 159,esi], edx
jle NewCall
mov d[Local 159,esi], 800
NewCall:
call NewRoutine
nop
nop
nop
nop
; ... etc.
NewRoutine:
push ebp
cmp edx, 800
mov ebp, [Local 159,esi]
mov [Local 159,esi], edx
jle NewCall
mov d[Local 159,esi], 800
push ebp
mov ebp, [Local 159,esi]
cmp d[MyGlobal], 1
jne Label1
add ebp, 24h
mov [Local 159,esi], ebp
cmp d[Local 401,esi], 800
jle Label1
mov d[Local 401,esi], 800
Label1:
pop ebp
cmp [Local 4576,esi], ebp
jne Label2
mov [Local 133,esi], ebp
Label2:
mov [Local 4788,esi], ebp
ret