pushad | 60 mov eax,dword[EnsureEnglish] | A1[EnsureEnglish] test eax,eax | 85C0 jz MainMain | 74(MainMain) mov ecx,dword[BasePointer] | 8B0D[BasePointer] mov ecx,dword[ecx+18] | 8B4918 mov ecx,dword[ecx+18] | 8B4918 mov ecx,dword[ecx+194] | 8B8994010000 mov al,byte[ecx+4f] | 8A414F cmp al,f | 3C0F ja MainMain | 77(MainMain) mov ecx,dword[ecx+4c] | 8B494C mov al,byte[ecx+3f] | 8A413F cmp al,f | 3C0F ja MainMain | 77(MainMain) mov eax,dword[ecx+40] | 8B4140 test eax,eax | 85C0 jz MainMain | 74(MainMain) mov ecx,dword[ActionBase] | 8B0D[ActionBase] mov ecx,dword[ecx+170] | 8B8970010000 mov ecx,dword[ecx+20] | 8B4920 mov ecx,dword[ecx] | 8B09 push 0 | 6A00 push 0 | 6A00 push bb | 68BB000000 mov edx,esp | 8BD4 push 0 | 6A00 push edx | 52 push 18 | 6A18 call ActionFunction | E8{ActionFunction} pop eax | 58 pop ebx | 5B pop ecx | 59 mov eax,dword[QueueCounter] | A1[QueueCounter] mov ecx,eax | 8BC8 shl eax,8 | C1E008 add eax,QueueBase | 05[QueueBase] mov ebx,dword[eax] | 8B18 test ebx,ebx | 85DB jz MainExit | 74(MainExit) push ecx | 51 mov dword[eax],0 | C70000000000 jmp ebx | FFE3 pop eax | 58 inc eax | 40 cmp eax,QueueSize | 3D[QueueSize] jnz MainSkipReset | 75(MainSkipReset) xor eax,eax | 33C0 mov dword[QueueCounter],eax | A3[QueueCounter] popad | 61 mov ebp,esp | 8BEC sub esp,14 | 83EC14 ljmp MainReturn | E9{MainReturn} cmp ecx,4 | 83F904 jz TargetLogMain | 74(TargetLogMain) cmp ecx,32 | 83F932 jz TargetLogMain | 74(TargetLogMain) cmp ecx,3C | 83F93C jz TargetLogMain | 74(TargetLogMain) jmp TargetLogExit | EB(TargetLogExit) pushad | 60 mov ecx,dword[ebp+8] | 3E8B4D08 test ecx,ecx | 85C9 jnz TargetLogStore | 75(TargetLogStore) mov ecx,edx | 8BCA lea eax,dword[edx*4+TargetLogBase] | 8D0495[TargetLogBase] mov dword[eax],ecx | 8908 popad | 61 push ebx | 53 push esi | 56 push edi | 57 mov edi,edx | 8BFA ljmp TargetLogReturn | E9{TargetLogReturn} pushad | 60 mov eax,dword[SkillLogCounter] | A1[SkillLogCounter] push eax | 50 shl eax,4 | C1E004 add eax,SkillLogBase | 05[SkillLogBase] mov ecx,dword[edi] | 8B0F mov dword[eax],ecx | 8908 mov ecx,dword[ecx*4+TargetLogBase] | 8B0C8D[TargetLogBase] mov dword[eax+4],ecx | 894804 mov ecx,dword[edi+4] | 8B4F04 mov dword[eax+8],ecx | 894808 mov ecx,dword[edi+8] | 8B4F08 mov dword[eax+c],ecx | 89480C push 1 | 6A01 push eax | 50 push CallbackEvent | 68[CallbackEvent] push dword[CallbackHandle] | FF35[CallbackHandle] call dword[PostMessage] | FF15[PostMessage] pop eax | 58 inc eax | 40 cmp eax,SkillLogSize | 3D[SkillLogSize] jnz SkillLogSkipReset | 75(SkillLogSkipReset) xor eax,eax | 33C0 mov dword[SkillLogCounter],eax | A3[SkillLogCounter] popad | 61 inc eax | 40 mov dword[esi+10],eax | 894610 pop esi | 5E ljmp SkillLogReturn | E9{SkillLogReturn} pushad | 60 mov eax,dword[SkillLogCounter] | A1[SkillLogCounter] push eax | 50 shl eax,4 | C1E004 add eax,SkillLogBase | 05[SkillLogBase] mov ecx,dword[edi] | 8B0F mov dword[eax],ecx | 8908 mov ecx,dword[ecx*4+TargetLogBase] | 8B0C8D[TargetLogBase] mov dword[eax+4],ecx | 894804 mov ecx,dword[edi+4] | 8B4F04 mov dword[eax+8],ecx | 894808 push 2 | 6A02 push eax | 50 push CallbackEvent | 68[CallbackEvent] push dword[CallbackHandle] | FF35[CallbackHandle] call dword[PostMessage] | FF15[PostMessage] pop eax | 58 inc eax | 40 cmp eax,SkillLogSize | 3D[SkillLogSize] jnz SkillCancelLogSkipReset | 75(SkillCancelLogSkipReset) xor eax,eax | 33C0 mov dword[SkillLogCounter],eax | A3[SkillLogCounter] popad | 61 push 0 | 6A00 push 48 | 6A48 mov ecx,esi | 8BCE ljmp SkillCancelLogReturn | E9{SkillCancelLogReturn} pushad | 60 mov eax,dword[SkillLogCounter] | A1[SkillLogCounter] push eax | 50 shl eax,4 | C1E004 add eax,SkillLogBase | 05[SkillLogBase] mov ecx,dword[edi] | 8B0F mov dword[eax],ecx | 8908 mov ecx,dword[ecx*4+TargetLogBase] | 8B0C8D[TargetLogBase] mov dword[eax+4],ecx | 894804 mov ecx,dword[edi+4] | 8B4F04 mov dword[eax+8],ecx | 894808 push 3 | 6A03 push eax | 50 push CallbackEvent | 68[CallbackEvent] push dword[CallbackHandle] | FF35[CallbackHandle] call dword[PostMessage] | FF15[PostMessage] pop eax | 58 inc eax | 40 cmp eax,SkillLogSize | 3D[SkillLogSize] jnz SkillCompleteLogSkipReset | 75(SkillCompleteLogSkipReset) xor eax,eax | 33C0 mov dword[SkillLogCounter],eax | A3[SkillLogCounter] popad | 61 mov eax,dword[edi+4] | 8B4704 test eax,eax | 85C0 ljmp SkillCompleteLogReturn | E9{SkillCompleteLogReturn} pushad | 60 mov ecx,dword[ebx] | 8B0B mov ebx,eax | 8BD8 mov eax,dword[ChatLogCounter] | A1[ChatLogCounter] push eax | 50 shl eax,9 | C1E009 add eax,ChatLogBase | 05[ChatLogBase] mov dword[eax],ebx | 8918 mov edi,eax | 8BF8 add eax,4 | 83C004 xor ebx,ebx | 33DB mov dx,word[ecx] | 668B11 mov word[eax],dx | 668910 add ecx,2 | 83C102 add eax,2 | 83C002 inc ebx | 43 cmp ebx,FF | 81FBFF000000 jz ChatLogCopyExit | 74(ChatLogCopyExit) test dx,dx | 6685D2 jnz ChatLogCopyLoop | 75(ChatLogCopyLoop) push 4 | 6A04 push edi | 57 push CallbackEvent | 68[CallbackEvent] push dword[CallbackHandle] | FF35[CallbackHandle] call dword[PostMessage] | FF15[PostMessage] pop eax | 58 inc eax | 40 cmp eax,ChatLogSize | 3D[ChatLogSize] jnz ChatLogSkipReset | 75(ChatLogSkipReset) xor eax,eax | 33C0 mov dword[ChatLogCounter],eax | A3[ChatLogCounter] popad | 61 add edi,E | 83C70E cmp eax,B | 83F80B ljmp ChatLogReturn | E9{ChatLogReturn} mov dword[TraderCostID],ecx | 890D[TraderCostID] mov dword[TraderCostValue],edx | 8915[TraderCostValue] push eax | 50 mov eax,dword[TraderQuoteID] | A1[TraderQuoteID] inc eax | 40 cmp eax,200 | 81F800020000 jnz TraderSkipReset | 75(TraderSkipReset) xor eax,eax | 33C0 mov dword[TraderQuoteID],eax | A3[TraderQuoteID] pop eax | 58 mov ebp,esp | 8BEC sub esp,8 | 83EC08 ljmp TraderHookReturn | E9{TraderHookReturn} pushad | 60 mov eax,1 | B801000000 mov dword[MapIsLoaded],eax | A3[MapIsLoaded] xor ebx,ebx | 33DB mov eax,StringLogBase | B8[StringLogBase] mov dword[eax],0 | C70000000000 inc ebx | 43 add eax,100 | 0500010000 cmp ebx,StringLogSize | 81FB[StringLogSize] jnz LoadClearStringsLoop | 75(LoadClearStringsLoop) xor ebx,ebx | 33DB mov eax,TargetLogBase | B8[TargetLogBase] mov dword[eax],0 | C70000000000 inc ebx | 43 add eax,4 | 83C004 cmp ebx,TargetLogSize | 81FB[TargetLogSize] jnz LoadClearTargetsLoop | 75(LoadClearTargetsLoop) push 5 | 6A05 push 0 | 6A00 push CallbackEvent | 68[CallbackEvent] push dword[CallbackHandle] | FF35[CallbackHandle] call dword[PostMessage] | FF15[PostMessage] popad | 61 mov edx,dword[esi+1C] | 8B561C mov ecx,edi | 8BCF ljmp LoadFinishedReturn | E9{LoadFinishedReturn} pushad | 60 mov eax,dword[NextStringType] | A1[NextStringType] test eax,eax | 85C0 jz StringLogExit | 74(StringLogExit) cmp eax,1 | 83F801 jnz StringLogFilter2 | 75(StringLogFilter2) mov eax,dword[ebp+37c] | 3E8B857C030000 jmp StringLogRangeCheck | EB(StringLogRangeCheck) cmp eax,2 | 83F802 jnz StringLogExit | 75(StringLogExit) mov eax,dword[ebp+338] | 3E8B8538030000 mov dword[NextStringType],0 | C705[NextStringType]00000000 cmp eax,0 | 83F800 jbe StringLogExit | 76(StringLogExit) cmp eax,StringLogSize | 3D[StringLogSize] jae StringLogExit | 73(StringLogExit) shl eax,8 | C1E008 add eax,StringLogBase | 05[StringLogBase] xor ebx,ebx | 33DB mov dx,word[ecx] | 668B11 mov word[eax],dx | 668910 add ecx,2 | 83C102 add eax,2 | 83C002 inc ebx | 43 cmp ebx,80 | 81FB80000000 jz StringLogExit | 74(StringLogExit) test dx,dx | 6685D2 jnz StringLogCopyLoop | 75(StringLogCopyLoop) popad | 61 mov esp,ebp | 8BE5 pop ebp | 5D retn 10 | C21000 mov dword[NextStringType],1 | C705[NextStringType]01000000 push ebp | 55 mov ebp,esp | 8BEC push ecx | 51 push esi | 56 ljmp StringFilter1Return | E9{StringFilter1Return} mov dword[NextStringType],2 | C705[NextStringType]02000000 push ebp | 55 mov ebp,esp | 8BEC push ecx | 51 push esi | 56 ljmp StringFilter2Return | E9{StringFilter2Return} cmp dword[DisableRendering],1 | 833D[DisableRendering]01 jz RenderingModSkipCompare | 74(RenderingModSkipCompare) cmp eax,ebx | 39D8 ljne RenderingModReturn | 0F85{RenderingModReturn} CreateRenderingMod | 0405788FA3005E5BD91D708FA3008BE55D cmp dword[DisableRendering],1 | 833D[DisableRendering]01 jz DisableRenderingProc | 74(DisableRenderingProc) retn | C3 push 1 | 6A01 call dword[Sleep] | FF15[Sleep] retn | C3 mov ecx,dword[PacketLocation] | 8B0D[PacketLocation] lea edx,dword[eax+8] | 8D5008 push edx | 52 mov edx,dword[eax+4] | 8B5004 mov eax,ecx | 8BC1 call PacketSendFunction | E8{PacketSendFunction} ljmp CommandReturn | E9{CommandReturn} mov ecx,dword[ActionBase] | 8B0D[ActionBase] mov ecx,dword[ecx+250] | 8B8950020000 mov ecx,dword[ecx+10] | 8B4910 mov ecx,dword[ecx] | 8B09 push 0 | 6A00 push 0 | 6A00 push dword[eax+4] | FF7004 mov edx,esp | 8BD4 push 0 | 6A00 push edx | 52 push dword[eax+8] | FF7008 call ActionFunction | E8{ActionFunction} pop eax | 58 pop ebx | 5B pop ecx | 59 ljmp CommandReturn | E9{CommandReturn} mov ecx,dword[MyID] | 8B0D[MyID] mov edx,dword[eax+C] | 8B500C push edx | 52 mov edx,dword[eax+4] | 8B5004 dec edx | 4A push dword[eax+8] | FF7008 call UseSkillFunction | E8{UseSkillFunction} ljmp CommandReturn | E9{CommandReturn} lea ecx,dword[eax+4] | 8D4804 call MoveFunction | E8{MoveFunction} ljmp CommandReturn | E9{CommandReturn} mov ecx,dword[eax+4] | 8B4804 xor edx,edx | 33D2 call ChangeTargetFunction | E8{ChangeTargetFunction} ljmp CommandReturn | E9{CommandReturn} mov ecx,dword[ActionBase] | 8B0D[ActionBase] mov ecx,dword[ecx+170] | 8B8970010000 mov ecx,dword[ecx+20] | 8B4920 mov ecx,dword[ecx] | 8B09 push 0 | 6A00 push 0 | 6A00 push bb | 68BB000000 mov edx,esp | 8BD4 push 0 | 6A00 push edx | 52 push dword[eax+4] | FF7004 call ActionFunction | E8{ActionFunction} pop eax | 58 pop ebx | 5B pop ecx | 59 ljmp CommandReturn | E9{CommandReturn} mov ecx,dword[eax+4] | 8B4804 mov edx,dword[eax+c] | 8B500C mov eax,dword[eax+8] | 8B4008 push eax | 50 call UseHeroSkillFunction | E8{UseHeroSkillFunction} ljmp CommandReturn | E9{CommandReturn} add eax,4 | 83C004 mov ecx,eax | 8BC8 call UpdateAgentPositionFunction | E8{UpdateAgentPositionFunction} ljmp CommandReturn | E9{CommandReturn} mov ecx,dword[eax+4] | 8B4804 mov edx,dword[eax+8] | 8B5008 call GoNpcFunction | E8{GoNpcFunction} ljmp CommandReturn | E9{CommandReturn} add eax,4 | 83C004 push eax | 50 add eax,4 | 83C004 push eax | 50 push 1 | 6A01 push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 mov ecx,1 | B901000000 mov edx,dword[eax+4] | 8B5004 call BuyItemFunction | E8{BuyItemFunction} ljmp CommandReturn | E9{CommandReturn} push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 push dword[eax+4] | FF7004 push 0 | 6A00 add eax,8 | 83C008 push eax | 50 push 1 | 6A01 mov ecx,b | B90B000000 mov ebx,1 | BB01000000 xor edx,edx | 33D2 call SellItemFunction | E8{SellItemFunction} ljmp CommandReturn | E9{CommandReturn} mov ecx,eax | 8BC8 call StorageFunction | E8{StorageFunction} ljmp CommandReturn | E9{CommandReturn} mov ebx,SalvageGlobal | BB[SalvageGlobal] mov ecx,dword[eax+4] | 8B4804 mov dword[ebx],ecx | 890B push ecx | 51 mov ecx,dword[eax+8] | 8B4808 add ebx,4 | 83C304 mov dword[ebx],ecx | 890B mov edx,dword[eax+c] | 8B500C mov dword[ebx],ecx | 890B call SalvageFunction | E8{SalvageFunction} ljmp CommandReturn | E9{CommandReturn} push 0 | 6A00 push TraderCostID | 68[TraderCostID] push 1 | 6A01 push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 mov ecx,c | B90C000000 mov edx,dword[TraderCostValue] | 8B15[TraderCostValue] call TraderFunction | E8{TraderFunction} mov dword[TraderCostID],0 | C705[TraderCostID]00000000 mov dword[TraderCostValue],0 | C705[TraderCostValue]00000000 ljmp CommandReturn | E9{CommandReturn} push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 push dword[TraderCostValue] | FF35[TraderCostValue] push 0 | 6A00 push TraderCostID | 68[TraderCostID] push 1 | 6A01 mov ecx,d | B90D000000 xor edx,edx | 33D2 call TraderFunction | E8{TraderFunction} mov dword[TraderCostID],0 | C705[TraderCostID]00000000 mov dword[TraderCostValue],0 | C705[TraderCostValue]00000000 ljmp CommandReturn | E9{CommandReturn} mov dword[TraderCostID],0 | C705[TraderCostID]00000000 mov dword[TraderCostValue],0 | C705[TraderCostValue]00000000 add eax,4 | 83C004 push eax | 50 push 1 | 6A01 push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 mov ecx,c | B90C000000 xor edx,edx | 33D2 call RequestQuoteFunction | E8{RequestQuoteFunction} ljmp CommandReturn | E9{CommandReturn} mov dword[TraderCostID],0 | C705[TraderCostID]00000000 mov dword[TraderCostValue],0 | C705[TraderCostValue]00000000 push 0 | 6A00 push 0 | 6A00 push 0 | 6A00 add eax,4 | 83C004 push eax | 50 push 1 | 6A01 push 0 | 6A00 mov ecx,d | B90D000000 xor edx,edx | 33D2 call RequestQuoteFunction | E8{RequestQuoteFunction} ljmp CommandReturn | E9{CommandReturn} mov ecx,dword[PacketLocation] | 8B0D[PacketLocation] add eax,4 | 83C004 push eax | 50 mov edx,11c | BA1C010000 mov eax,ecx | 8BC1 call PacketSendFunction | E8{PacketSendFunction} ljmp CommandReturn | E9{CommandReturn} add eax,4 | 83C004 mov edx,eax | 8BD0 xor ecx,ecx | 33C9 add eax,28 | 83C028 push eax | 50 call WriteChatFunction | E8{WriteChatFunction} ljmp CommandReturn | E9{CommandReturn}