Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- signed int __fastcall Messaging::send(Messaging *this, PiranhaMessage *a2)
- {
- __int64 v2; // d8
- __int64 v3; // d9
- __int64 v4; // d10
- __int64 v5; // d11
- __int64 v6; // d12
- __int64 v7; // d13
- __int64 v8; // d14
- __int64 v9; // d15
- _QWORD *v10; // r4
- _QWORD *v11; // r4
- PiranhaMessage *v12; // r6
- Messaging *v13; // r5
- int v14; // r8
- int v15; // r4
- const String *v16; // r1
- const String *v17; // r1
- signed int v18; // r4
- void (__fastcall *v19)(PiranhaMessage *); // r1
- void (__fastcall *v20)(PiranhaMessage *); // r1
- int v22; // [sp+0h] [bp-C8h]
- Connection *v23; // [sp+4h] [bp-C4h]
- Messaging *v24; // [sp+8h] [bp-C0h]
- PiranhaMessage *v25; // [sp+Ch] [bp-BCh]
- String v26; // [sp+10h] [bp-B8h]
- String v27; // [sp+24h] [bp-A4h]
- PiranhaMessage *v28; // [sp+38h] [bp-90h]
- struct SjLj_Function_Context fctx; // [sp+3Ch] [bp-8Ch]
- int v30; // [sp+60h] [bp-68h]
- int *v31; // [sp+64h] [bp-64h]
- char v32; // [sp+70h] [bp-58h]
- __int64 savedregs; // [sp+C8h] [bp+0h]
- v10 = (&v32 & 0xFFFFFFF0);
- *v10 = v2;
- v10[1] = v3;
- v10[2] = v4;
- v10[3] = v5;
- v11 = ((&v32 & 0xFFFFFFF0) + 32);
- *v11 = v6;
- v11[1] = v7;
- v11[2] = v8;
- v11[3] = v9;
- v12 = a2;
- v13 = this;
- v28 = a2;
- v14 = (*(*a2 + 20))(a2);
- v23 = (v13 + 224);
- v15 = Connection::isConnected((v13 + 224));
- fctx.personality = &__gxx_personality_sj0;
- fctx.lsda = &GCC_except_table14_41;
- fctx.jbuf[0] = &savedregs;
- v31 = &v22;
- v30 = (0xE8 | 1) + 1659922;
- _Unwind_SjLj_Register(&fctx);
- if ( !v15 )
- {
- v24 = v13;
- v25 = v12;
- fctx.call_site = -1;
- v22 = v14;
- String::format(&v27, "Messaging::send message type %d when not connected", v14);
- fctx.call_site = 1;
- Debugger::warning(&v27, v16);
- fctx.call_site = -1;
- String::~String(&v27);
- v12 = v25;
- v13 = v24;
- v14 = v22;
- }
- fctx.call_site = -1;
- if ( PiranhaMessage::isServerToClientMessage(v12) == 1 )
- {
- v24 = v13;
- v25 = v12;
- fctx.call_site = -1;
- String::format(&v26, "Messaging::send server to client message type %d", v14);
- fctx.call_site = 3;
- Debugger::warning(&v26, v17);
- fctx.call_site = -1;
- String::~String(&v26);
- v12 = v25;
- v13 = v24;
- }
- fctx.call_site = -1;
- v18 = Queue<PiranhaMessage *>::enqueue(v13 + 8, &v28);
- if ( v18 )
- {
- fctx.call_site = -1;
- Connection::wakeup(v23);
- }
- else
- {
- v19 = *(*v12 + 24);
- fctx.call_site = -1;
- v19(v12);
- v20 = *(*v12 + 4);
- fctx.call_site = -1;
- v20(v12);
- v28 = 0;
- }
- _Unwind_SjLj_Unregister(&fctx);
- return v18;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement