Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int __fastcall bgadCaller5(int *a1, int a2, int a3, intmax_t *a4)
- {
- int *v4; // r4
- intmax_t *v5; // r8
- _BYTE *v6; // r1
- void *v7; // r6
- int result; // r0
- void *v9; // r5
- void *v10; // r5
- int v11; // r6
- int v12; // r0
- void *v13; // r5
- void *v14; // r5
- intmax_t v15; // r0
- char *endptr; // [sp+10h] [bp-80h]
- int v17; // [sp+14h] [bp-7Ch]
- std::__ndk1::__shared_weak_count *v18; // [sp+18h] [bp-78h]
- int v19; // [sp+1Ch] [bp-74h]
- std::__ndk1::__shared_weak_count *v20; // [sp+20h] [bp-70h]
- int v21; // [sp+24h] [bp-6Ch]
- std::__ndk1::__shared_weak_count *v22; // [sp+28h] [bp-68h]
- int v23; // [sp+2Ch] [bp-64h]
- std::__ndk1::__shared_weak_count *v24; // [sp+30h] [bp-60h]
- int v25; // [sp+34h] [bp-5Ch]
- std::__ndk1::__shared_weak_count *v26; // [sp+38h] [bp-58h]
- int v27; // [sp+3Ch] [bp-54h]
- std::__ndk1::__shared_weak_count *v28; // [sp+40h] [bp-50h]
- int v29; // [sp+44h] [bp-4Ch]
- std::__ndk1::__shared_weak_count *v30; // [sp+48h] [bp-48h]
- int v31; // [sp+4Ch] [bp-44h]
- std::__ndk1::__shared_weak_count *v32; // [sp+50h] [bp-40h]
- int v33; // [sp+54h] [bp-3Ch]
- std::__ndk1::__shared_weak_count *v34; // [sp+58h] [bp-38h]
- int v35; // [sp+5Ch] [bp-34h]
- std::__ndk1::__shared_weak_count *v36; // [sp+60h] [bp-30h]
- int v37; // [sp+64h] [bp-2Ch]
- std::__ndk1::__shared_weak_count *v38; // [sp+68h] [bp-28h]
- int v39; // [sp+6Ch] [bp-24h]
- std::__ndk1::__shared_weak_count *v40; // [sp+70h] [bp-20h]
- char v41; // [sp+74h] [bp-1Ch]
- _BYTE v42[3]; // [sp+75h] [bp-1Bh]
- void *v43; // [sp+7Ch] [bp-14h]
- int v44; // [sp+80h] [bp-10h]
- v4 = a1;
- v5 = a4;
- sub_6123A0(&v41, a3);
- v6 = v43;
- if ( !(v41 & 1) )
- v6 = v42;
- sub_7F02F4(&v39, v6, 0, 0);
- v7 = sub_7F076C();
- v35 = v39;
- v36 = v40;
- if ( v40 )
- std::__ndk1::__shared_weak_count::__add_shared(v40);
- sub_7F0820(&v37, v7, &v35, 0);
- if ( v36 )
- std::__ndk1::__shared_weak_count::__release_shared(v36);
- if ( v37 && !strcmp(*(const char **)(v37 + 4), "/") )
- goto LABEL_17;
- *v4 = 0;
- v4[1] = 0;
- while ( 1 )
- {
- if ( v38 )
- std::__ndk1::__shared_weak_count::__release_shared(v38);
- if ( v40 )
- std::__ndk1::__shared_weak_count::__release_shared(v40);
- if ( v41 & 1 )
- operator delete(v43);
- result = _stack_chk_guard - v44;
- if ( _stack_chk_guard == v44 )
- break;
- LABEL_17:
- (*(void (**)(void))(*(_DWORD *)v39 + 12))();
- v9 = sub_7F076C();
- v31 = v39;
- v32 = v40;
- if ( v40 )
- std::__ndk1::__shared_weak_count::__add_shared(v40);
- sub_7F0820(&v33, v9, &v31, 0);
- if ( v32 )
- std::__ndk1::__shared_weak_count::__release_shared(v32);
- if ( v33 && !strcmp(*(const char **)(v33 + 4), "md5") )
- {
- (*(void (__cdecl **)(int))(*(_DWORD *)v39 + 16))(v39);
- sub_612BD8(&v29);
- v10 = sub_7F076C();
- v25 = v39;
- v26 = v40;
- if ( v40 )
- std::__ndk1::__shared_weak_count::__add_shared(v40);
- v11 = v29;
- bgadFunction(&v27, (int)v10, &v25, *(_QWORD *)(v29 + 4), *(_QWORD *)(v29 + 4) >> 32, 1, 0);
- if ( v26 )
- std::__ndk1::__shared_weak_count::__release_shared(v26);
- v12 = v27;
- if ( v27 && *(_DWORD *)(v27 + 8) == 32 )
- {
- if ( v5 )
- {
- (*(void (**)(void))(*(_DWORD *)v39 + 12))();
- v13 = sub_7F076C();
- v21 = v39;
- v22 = v40;
- if ( v40 )
- std::__ndk1::__shared_weak_count::__add_shared(v40);
- sub_7F0820(&v23, v13, &v21, 0);
- if ( v22 )
- std::__ndk1::__shared_weak_count::__release_shared(v22);
- if ( v23 && !strcmp(*(const char **)(v23 + 4), "size") )
- {
- (*(void (__cdecl **)(int))(*(_DWORD *)v39 + 16))(v39);
- v14 = sub_7F076C();
- v17 = v39;
- v18 = v40;
- if ( v40 )
- std::__ndk1::__shared_weak_count::__add_shared(v40);
- bgadFunction(&v19, (int)v14, &v17, *(_QWORD *)(v11 + 4), *(_QWORD *)(v11 + 4) >> 32, 1, 0);
- if ( v18 )
- std::__ndk1::__shared_weak_count::__release_shared(v18);
- if ( v19 )
- {
- v15 = strtoimax((const char *)*(_DWORD *)(v19 + 4), &endptr, 10);
- if ( !HIDWORD(v15) && !*endptr )
- *v5 = v15;
- }
- if ( v20 )
- std::__ndk1::__shared_weak_count::__release_shared(v20);
- }
- if ( v24 )
- std::__ndk1::__shared_weak_count::__release_shared(v24);
- v12 = v27;
- }
- *v4 = v12;
- v4[1] = (int)v28;
- v27 = 0;
- v28 = 0;
- }
- else
- {
- *v4 = 0;
- v4[1] = 0;
- if ( v28 )
- std::__ndk1::__shared_weak_count::__release_shared(v28);
- }
- if ( v30 )
- std::__ndk1::__shared_weak_count::__release_shared(v30);
- }
- else
- {
- *v4 = 0;
- v4[1] = 0;
- }
- if ( v34 )
- std::__ndk1::__shared_weak_count::__release_shared(v34);
- }
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement