Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- signed int __fastcall OpenNative(int a1, int a2, unsigned int *a3)
- {
- int v3; // r4
- unsigned int *v4; // r7
- int v5; // r8
- signed int result; // r0
- unsigned int *v7; // r1
- unsigned int v8; // r2
- unsigned int *v9; // r1
- unsigned int v10; // r2
- unsigned int *v11; // r1
- unsigned int v12; // r2
- unsigned int *v13; // r1
- unsigned int v14; // r2
- _DWORD *v15; // r5
- unsigned int v16; // r4
- int v17; // r6
- unsigned int v18; // r1
- int v19; // r0
- unsigned int *v20; // r1
- unsigned int v21; // r2
- int v22; // r0
- unsigned int *v23; // r1
- unsigned int v24; // r2
- int v25; // r0
- unsigned int *v26; // r1
- unsigned int v27; // r2
- int v28; // r0
- unsigned int *v29; // r1
- unsigned int v30; // r2
- int v31; // r4
- int v32; // r0
- unsigned int *v33; // r1
- unsigned int v34; // r2
- int v35; // r0
- unsigned int *v36; // r1
- unsigned int v37; // r2
- int v38; // r0
- unsigned int *v39; // r1
- unsigned int v40; // r2
- int v41; // r0
- unsigned int *v42; // r1
- unsigned int v43; // r2
- int v44; // r0
- unsigned int *v45; // r1
- unsigned int v46; // r2
- int v47; // r0
- unsigned int *v48; // r1
- unsigned int v49; // r2
- int v50; // r0
- unsigned int *v51; // r1
- unsigned int v52; // r2
- int v53; // r0
- unsigned int *v54; // r1
- unsigned int v55; // r2
- int v56; // r4
- unsigned int *v57; // [sp+F8h] [bp-C8h]
- int v58; // [sp+100h] [bp-C0h]
- int v59; // [sp+10Ch] [bp-B4h]
- int v60; // [sp+118h] [bp-A8h]
- char *v61; // [sp+124h] [bp-9Ch]
- int v62; // [sp+130h] [bp-90h]
- char v63; // [sp+134h] [bp-8Ch]
- int v64; // [sp+150h] [bp-70h]
- int v65; // [sp+15Ch] [bp-64h]
- int v66; // [sp+168h] [bp-58h]
- char *v67; // [sp+174h] [bp-4Ch]
- int v68; // [sp+180h] [bp-40h]
- char v69; // [sp+184h] [bp-3Ch]
- int v70; // [sp+198h] [bp-28h]
- int *stackCookie; // [sp+1A0h] [bp-20h]
- stackCookie = dword_810BEF48;
- v3 = a1;
- v4 = a3;
- sub_810B790C(&v57, a2);
- v5 = (int)v57;
- if ( !v57 )
- {
- result = 0x80580005;
- goto LABEL_206;
- }
- switch ( v3 )
- {
- case 0x301:
- case 0x201:
- goto LABEL_74;
- case 0x101:
- if ( !v4 )
- {
- v13 = v57 + 1;
- __dmb(0xFu);
- do
- v14 = __ldrex(v13);
- while ( __strex(v14 - 1, v13) );
- __dmb(0xFu);
- if ( v14 == 1 && v5 )
- (*(void (__fastcall **)(int))(*(_DWORD *)v5 + 4))(v5);
- result = 0x80580002;
- goto LABEL_206;
- }
- v15 = 0;
- v16 = v4[1];
- v17 = 0;
- if ( v16 )
- v15 = (_DWORD *)SceLibMono_7653B7FE_imp_(v4[1], 4, 0);
- if ( v16 )
- v17 = SceLibMono_5C260726_imp_(v16);
- v18 = *v4;
- if ( *v4 > 2 )
- {
- if ( v18 <= 3 )
- {
- if ( v17 != 1 )
- {
- v28 = (int)v57;
- if ( v57 )
- {
- v29 = v57 + 1;
- __dmb(0xFu);
- do
- v30 = __ldrex(v29);
- while ( __strex(v30 - 1, v29) );
- __dmb(0xFu);
- if ( v30 == 1 )
- {
- if ( v28 )
- (*(void (**)(void))(*(_DWORD *)v28 + 4))();
- }
- }
- result = 0x80580003;
- goto LABEL_206;
- }
Advertisement
Add Comment
Please, Sign In to add comment