Spaces:
Paused
Paused
Upload 7 files
Browse files- accs.txt +1 -0
- app.py +211 -0
- app.py.bak +211 -0
- my_pb2.py +27 -0
- nohup.out +0 -0
- output_pb2.py +28 -0
- requirements.txt +6 -0
accs.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"3703466495": "799FAF292960B85062BCD462FD8116871F99B4A0505C09FFC6985AA1C32F31EA", "3570958179": "C15AB416AB9FFF0D33F1C7950C75D950135A4DA42692D9433FF736BD5385F7B3", "3571002164": "3D253727E7D7D4EC5CCC188398EABB9A94539579D7F7A041FDE5B268362AFF67", "3571009024": "E8A128C48AC975A71A2F1B77A76D7332C94E6383719F8B56CF491A0DFAF4580F", "3571068251": "7BE9F640DA9CF587165E7FC3E19D84D508434D854940C657DAC716681762DC58", "3570805077": "918375395A01CE646787A83B8462558883B344F02F2B67743905A0B1328C2803", "3570807153": "E3220E9AC6B22B4E8FF11399C283A637F549D473FBF3CF34AF1E1EB9BCE14073", "3570810070": "48B28D373FC4CFE7725E46FB9194328142995255EF308036355237F64D520C1B", "3570812747": "5A67DF078D9C473504529CB18292CAD0E7E1C011214A9CBF16F3DE7BE33C90C2", "3570815439": "BC483310D5ACD777CA961CF787B30DEC635843E0D2634C7E7E86367745094EFC", "3570973425": "A0D4F0AAD479CB96CA68F884803E5B5B7EFEF1E0D8DFD86BCEDE3124187D66E9", "3571071338": "9D2E44DD49041ED472D6B0A3135C7D8566F451F9E4294F236707F5F0F926C8D1", "3570987388": "E1BC7A76EA5A5FB04C575FAB3024707B0D1B56BBF46FE88CEC2F5B244E5D14BA", "3571038526": "129B4443B8EBE947B74B00E26904F4B41365AD4864F8A613B613BA024C1622DE", "3571060549": "AD852CFCBBE2831AFA8041E8916E5F15DF23F25AEB64A5AECDBED835BD982641", "3570961255": "B70802454A86BFEB381074A023E51256EEA6140051E07C7866B1E05D34C9A707", "3570947551": "2EE5B376D325ACC39124EE8E8F367E312824E7128E19303F7D4BB788ABA36128", "3571016121": "49C555117A8C3A48667118E9FFC4CE602E3ADCEE00F8CE043360D619BB5BF039", "3571022105": "D1F01B0039F578B8F57EB18AA2DDF484071692E7EBC3FB21FB3AC8C8E468CF3E", "3570994682": "BD3BF27B08AE2A49421ACA712DCA63A2E69BB4225A54A4CAB3D68E6CCAC48ED4", "3570978936": "0C750173514945F61BC9B6CBA403D9001BFB423D968661FA41C6CEDFD1377597", "3570985274": "3E926F4B80E982499125E5BF3DB07241CD17CD21E213ACC3EA00E0FF924C94F9", "3570963517": "33D49B0C9D08FFC0F6E6FB8493F470EEA7FE13C3E8C1407593B4E5D6B267F346", "3571019534": "578657947F3DC1DF51BA57EBF2F3D10E2E63563ED0371B16CA634C1385B53AC0", "3571042403": "B1C0EF9D629A5AC55649DBAFDF8007B57F2E2FFAEC2CBF0ED5C731F50BE66FB4", "3230912452": "0D21772B575B339BABAC31F9476625B0A2E5F50391691859F2B4ED9ED106E573", "3230917475": "CED8D6CD638A313EA408D47CA1D99FCBA86452FEBBC339EF49191F24A6754D07", "3230906826": "04982081167F54A01EC41D26D2FD8A75E05C3D9666631FDDE4686BE682299A3E", "3230914130": "7AEFBA50E7F3F3DEB9757C6823B9F35367CD72812BC86D3DDD5435BB199C8E5A", "3230917980": "A0C49616501B90BAA6F9690C2B77BBFDCDD7915CDBA829F95D527F27F5948043", "3230915072": "1C9F0FFE274B8313D9170E324402D166ED694503A8170F849518F191F1A69F1A", "3230916958": "564CA8E828CEF9BC60A97EEFCB03046D3A3AF581513CAB74DA1190DCF86F50BC", "3230914592": "0DEAD683E890F2E1FF180D2D160678BD562AA73366CE7E23E4A7CB913274F9F1", "3230918533": "AE8E0C19F31FA0591ECD8AC801C486E8932B08BCC98C9AAA586FC98E759535AE", "3230919054": "8A2957237C86860D2117A703508BB4DD1FF28E948F9F856F696418C36D193C93", "3230916138": "3F9DE62CD79782FB5DF05737EE9260754F56001093B4EDDD4B172F3A185B456C", "3230920064": "FD3D69E8C74132E05EB51F607361EDF5FFFFA4C14C9933F6873E9E4AFDA1CA61", "3230921609": "7AF295C59D93553828E73B1860DA7B3B4B68ABAAB45C62E2843DFFAF41B42159", "3230922683": "8436CE4B02529691CA964BC74812F2D0094A3985BAC9E2ED34FF3710D456A518", "3230919547": "476BA2388D194B3774F0716DB9DF0061742261F17CD995F7A875ECB293448A9B", "3230911916": "CE3BC9722ED40BE2030FD3818328B0989E14C7F4416822A4B9FABDFF8170D935", "3230922129": "EEB0AA01BCE43BE09C9EA3076F081F3DA9256CF5455D4275CD2E5A77AF5C85AA", "3230923217": "B7FEFC6A8C14807D97E3531DE5B9042150899C112C70118CF6FD3CA6400052CA", "3230925265": "6D7B6A4334C08D780ABEF70A63702118E25FFC8BDC155402CA583F63D3EFC9DE", "3230926745": "54B196281143670C9067DEB987A6AF31EF8E7B9F6AEFF3B37215A863CCB11EE9", "3230924748": "1A9BCC257D44833489BA8C3B609470EECAF7D7231E3B29F4177E04C7B4582181", "3230923739": "18453FBA06CB08E61EFA9B44F69E961CC206E0EE59051B3C194D62C6ADF7FED1", "3230924237": "DA1E9B60AE3036558A1339A1720CD000D27F6CB31495725FA9A3F3FBEA3CA171", "3230928917": "21A22C69EF45C716DEA8DBB046FE65E0311DCE0C0B93403A657ED34618246BCD", "3230920573": "FD15B18F46AF8AB71F68A83F0C7D84E77751F6F16F52B7F064FF72EE70066AE6", "3230929426": "97954DA77C020CCA9423DB423ADCB0BDEA38A175325918762237D60DAEAD5CA8", "3230921162": "2D7B4EA5F27E7BADE222C668B5911B2A51FFD0A31B44B97E171CAA274C431D0B", "3230931208": "5F6AF35191016532505B1455EC9914270C29E78C7E8A2CD271EAAC168199A731", "3230927310": "A92299F51A405F4E183442D8695E80F936150690289815BF87F5646ACC841179", "3230926228": "1EC17ED3FC8D239C148549460492DF4B0DD96159F6892DD8C4879B30A38F690F", "3230927911": "243D636D21A981514FA1D6660A6FF33556CEE7170E0E5F192973E4476E3D43E8", "3230928390": "08B0368B43287A1A8F31CCD9AB782E6B47CC5C8FFEE9493C3D6C37D4AB12C389", "3230932103": "C8980CF21CD09D471DC11BE5EB241D086EA3464338E8102C75C5859E625E63A0", "3230929960": "E84199343DE04683ECED05C95DEF4C597D3F78A3AA66216387130FF9486F5075", "3230930501": "441AB871A35AD7EF18F3BA1D4C686636547118D3D34758C034A0E93051968052", "3230933240": "AFBC808B368329C45EA44CB92CF4080D456E03C62BC9E24AF9D66AFAF54BBDBB", "3230934847": "D607AFEC598F0A1F982CD50EA7C49557194F055971BEE410985BCD7E327D1CA8", "3230934314": "1B3740940C427C2206FBCBABBD4F6906D1CCF4D563C8062AE40666A483CE87A3", "3230932680": "6AA1EA207756BF7F9AE0B211F388624D217C66D28AE10D656AB8CB2A322DAB54", "3230939312": "15D29DD456CC1F6E6E63DF5E887F0197D802340216A67119F9D2D7AE87E5CCF4", "3230931577": "3958CFF354B06D8A9C620440091919334F232922EE860D0724A9B583EC83B835", "3230933821": "5C1F0F34DFAAA40B3F69D3E25142E84CFF130270A5E2F6473B50BC54D888931F", "3230940337": "1E0CA093DFBF371A6121A1923B05895EBBEFD867AE19C8C1CB1593F520B82B62", "3230936442": "CB2D9FEFE2B43B986319A0972B347768BCABDC47120C5526A6D9379FFD81E1CF", "3230925734": "7852C103D49CB88F891F4BAAB13A4C81C536B45FA5AA0ED2A79370504C5A8A4E", "3230940899": "378C9F29020D8077FA7B6D834A50C15994EA3D819DB8FEF5CC6C04F249DEE19A", "3230937644": "3EF9D950F5B01A51BE465D6E5F4D6073E046CA0A905269C0B1F92E69A081ECC9", "3230936945": "46BDF6D8B369813786B1CF04F3D3A009651D09ACF004F75A3C9D29903CACBA91", "3230941341": "9B8B74E837B52EA2393FE3A69773D38BAB14BCA18269EDD396EBD5CECC82C93F", "3230938817": "A4A017A2E38905622BDB0B75F50B1614C33E4508B4415A1787D1CCC4984C91AF", "3230941854": "A8E650631721DC00F9022293ABC2814FF5FF3550B31FABD02A6BAE3A37CB956A", "3230944526": "8E85176A5F191A83DACD723AAF9639E70512F8962CFF6AE39F0F0AD4BF572BE3", "3230939840": "A9A40D071D433A1F04D5CE0144368DC2EE8C2622C4C3885E2CDE6510172E58E0", "3230942917": "923CBDB8F78A1708238B0A9A151E0C5971160F8A4B67BF44050CC0DD690FD204", "3230945044": "8673B59428F9FF87BCB7B216EA7B40B25EF09643A1E999D0AD7F82D055456587", "3230945533": "7D18B48FB0670FAAE7101578AAE90D381C484AB79358092BC69DC5CB94E87448", "3230943951": "D5005922F89D93FB3AD9193E44DB597DDF5DD1B827A193F918C4F624C7DD6D3A", "3230946070": "0BEC2704D335781469B46833033581BFE23A96922D2D99F5A545B5D6F640D2B3", "3230946592": "245400DBA49D62F24F3DE83880B241390BE7A167956DF3DBE45AFF1A4A5D5B15", "3230942370": "685D3E235127CFC25E2A190DAE020D24481A0D36D3D3A060003F297306FFDD6C", "3230947149": "EFF66B7B91F224F1E35674F9E469322CA2B9E50734FE2C62D6C3B7255868EF25", "3230948674": "25F78EF6C596FE4762184A5EE389295FB1595A883AD763FEC1141727763CD3BF", "3230943456": "538C5D2E526CACE7E2D99904CCC6F98392A542665BD7BE97FEDFC1992868F839", "3230949209": "65F2AEC06C2B5CEAAE6C00A264C6CF9AE8FB7B3B4896AFBFEA08724FC647F6D4", "3230950275": "4D24EE68CE48DD00E335D59E46D435F55DECA7B29D7FE62C5006E2023CD0B30F", "3230935909": "ED8165D3C07F972DE7C09BB1A622100A66592C65AAFD9CAC58AF2279E0A5B758", "3230952989": "4FEE0721C9A4A95CC9DE2BBAA6C71EDE581944D276FFD9196BEF5677D32DBD58", "3230950822": "62AAE4C85CC7C05D8C482C25D96441C1C25BFEA40D66A612961ED9CE7CCCB689", "3230951943": "AC7C72C1D433D09AAED209FA477584B61AA165448260D4A51810CF26F99C3445", "3230948152": "3F867C70CF97B0344949C325D248A4F983F227F8F6D3DC2A57527D1D4E4901FB", "3230953541": "7FD95A5ECEE4D6A8C92BE0757A1B3E324E57251BE59FFDA46408715A34BE9BA5", "3230954048": "CF35FF09DEAE03EB45444CEE1CD3624D32170FCCD0367FEBFAA2ECAED6510626", "3230949708": "4A8268070A4554C2522FC5AFE9AC3BCC9A33E718AE5185305D29865840871953", "3230935389": "D3B69AB1D36801163295CE5EABCE3F96CBCDB4DB4DF0B9848E530E8A84E1877E", "3230957315": "18D2F5D5700F18B42A8460FE331210443E3ADF2CABCF46EAC711C3148F5046DC", "3230957855": "FF68AF8E58340670655E810D9900CE01B4AE8F281B300877CD584573ACD2C0DA", "3230956752": "3A5FD5BCB9BFD4905586CB64C3E96EACBBB594215958BBF41436A201875CC81C", "3230959061": "8F311FA843427EC99043E3BB79BD4970EA914CC84A73B66A2B55FDD4B9D2D31F", "3230958335": "4B248D1A833F4E1FC66E0ABD48F1E0DD1C0B8803F48A7FB453917737BDD0BF25", "3230955641": "CD3225605DD761F12287DF4F7B4485008A128ADF2F1F3D88B6EE09A49E960526", "3230955059": "837583B40A338905ACE14DF68380BD77C86451F71654643EDDE90D9A72896580", "3230956173": "44877EE1B7A4FDD11B7A52D27B344F45A66A0483FE2350CF8DDFD12E479C3FFE", "3230954558": "5A0ED5B9EE8994AD8C9B294171B3D3FA1B8DCF9BEA2CFA55B0C11DC1EA9B0562", "3230947625": "679B01C6CF1CD75842B00898CB5421B83B1B240F9112973FD786BF8A1B601403", "3230960427": "09BF0D35ADA89D20B26E58FD1049ED4D2B8914992D8915383964315DFC1AECC4", "3230952444": "E863E6CC0C51893D188095C0AE362792B07A5FAD58C9F125049356693465465F", "3230964148": "6F022DE10CD39A901C6F1277477276097E20945187AA84CCA5046CF3445A5BE4", "3230964686": "FDD2609C7270430E9B21FB8AF84C3FD09CB6A6FF03466D47CB96EDF12D08583A", "3230959458": "2724B1BEC7D157B55C3AA6D5CFA910416CF91FF424ADBCAA3397CEBDCE75797B", "3230961022": "7AC591BBA7CFBA0457AC8E25F584C874ABB33A68209C784D43851305DDB7BAB5", "3230963117": "05D3795F3B59AFC57E641C1EFE8A43D7DC558CD7A8A1853B22AFE31AB81CBDD0", "3230959927": "26763D00C71320D0CAF2B82A6BF3871F9F65ED1411493DDA1F66EBAE790424EB", "3230965848": "ADE56288E9857084A49B82B35F92CEDBBE8BACE3C58650CC5739CF916578A3C2", "3230963641": "EDE47A83823AC62168D933356980D81E22980B2428A0B46A1F69FC5E0EE7288A", "3230966870": "7401FA00FA04942B52C1ABB1B5720ED7E1C91AFAEF50C5C9642BCC8CA87C36ED", "3230967415": "871B6DC1D85633C6E0BCE1EFF028BB4F846BB9FF46DC1A0CD01F4A73D8474506", "3230967947": "E9D5A4B16451802530C4488299B2B767ADF3153D456B657B7B53B7D169972A64", "3230966368": "9D9AE25C08F7C5BD5D01C5CDA478E3B5E1C3BF05980B8FD51706B1969D22FBBB", "3230962052": "CBF3C16314FE83C5F94AC85355F7BF9BCA5CE388C7561F25F1DC152C194297A3", "3230968935": "33B978C3FFE1A8A32B9908BA60DC385F2626DCF95A5E971B68F2967CBD84110B", "3230961485": "11735A4C599174B72A8DFD13D331790C4E3E270FB2A71A70F5AAEAFBB6F71043", "3230970626": "AD8E0C541D82DAB791E82085F7FE87A653355D7EE1CBF2C8C49872F8DE777EF7", "3230969524": "3ECBCBDDB1DBDC0636BB6609E65C079936C6CF8FABDCEB7FE3BC8E202540D02C", "3230971158": "925282B5BE0AF14089AD7F99686935AFA260FEE302402AF54D44BA256E012E48", "3230938261": "3ED08EB093EF2E2DCE6C5E153944BF3444E6BE5AAC612B7780B08C90ED033DA8", "3230962585": "6A3A89B1D8D7F7672DCE9C39E34F2DE387D6D57F392E68958589B16CAD94CB28", "3230968447": "EE3CF1E2434BCB35D073C5ABCA32DC624D4DC236169921BCAA075A90F6E4A7BA", "3230971730": "F77601C12DE7546E56F63FEB2841360830AD3C9FE3DA9F16B4A2F1904B5CA9C1", "3230970064": "91FABB5EC039C58B1C0752D6210EA71A70A1D6A5FE2132FD6B803299BF6CB375", "3230972289": "4EB4214A46618C31C47FB45119EA7E38C7A3308A333A40631124BA7AB1DCE884", "3230975556": "B67503410A19505F1E538112D678770269B5420DE18749E62180CF4A6D536D85", "3230973997": "8854DF7C612E371D50EDBB38EA1A8ED7B5DA4ED276107E50D5282634D13E6E12", "3230965247": "3C56C7BD3BA6A8C20A0FBE3F70D1BA58F33B2BAB61ACD704BFF48E38246FE8ED", "3230976099": "D7C4F80B75B2C1A83D687005A21C075735FE18946B06DCCE456E1A54C3704236", "3230972856": "0381753EAE3571CF63426875C68971C1824F2FDD50D75161A90A1BCDBB987DED", "3230977699": "DA525670795F3F56C1E4C62599542962453D5E5FC72F14DBA10BCA1D64174DAB", "3230978240": "AB380C0E759C01DFF421F2188E3B7F8BB5666D7F33F77940EDD01AC03C8C46C9", "3230977164": "437FCDF74BB7475A72D8ABF56331604DB3DA76B7A140948EAB7D5E8DB8769A07", "3230974466": "9E09A62F32C80334E4237330A92E315FAD596F227812B6E521C5A2EAA830A075", "3230979972": "DF0B5EA6B684493E9FA470E724C3FAEC449297AEEF6F87CC2376F0975C7972B6", "3230981140": "702F1D69B352FF05EDFA64F34344349CB23D7F825E05BE3DFBE4CB13CF5840F7", "3230973408": "587EF722757A997B2A9D8D1C280F3D07CDFBF947CB90F2F794C9778014F1C489", "3230981699": "6D04FA72BF92D6E356F2F7441E8FAA83BFB199C71D81F56437D1B61DCE8D9F2F", "3230979367": "3260165E4C006242A42D2C124990816F50509E79CCA033D60E9B31B85FBA913D", "3230978812": "0862B6E289FB183D96C480959F140AFB074D02CAE36FF328A7786AAC23F46C5E", "3230982779": "220F20FBBB07BFAEC7F60F3EA7A37B84D5F65472E27B7D73950558896E68E999", "3230985032": "F62B9AAB2222D5A9E68A6CF75D095AA6F5EAD550A106C17032C5D1D1FF7C3CBE", "3230983963": "F857E90B45A4EF1590F1FBEC294325552EEE9626A966055E541C81253530BDE0", "3230982241": "745506238DB9E58E4C30194820A5237B46DDC9B04FFFA7B9DD350C1AFB0816EB", "3230985629": "B56AA22456607A35A2D2F5F311499A018C5970915CF8C8D0FCA5AA64E52EBE41", "3230983441": "42DE6A2A785D30984F9CA093B3FA45834089EE3F99A3B96ED2C459E79202FC0C", "3230984451": "7A191E213AFD676A2E3E629959C432BD957BF5C9D9046A0F462AC1D87151F370", "3230986614": "23D66A5175F025E69AD41C03ECB9790F1EAE7209761CC9E976E2C6C7D044CE9D", "3230980549": "EEAF34B2B87969D052E1BE79152E0DACD946907DF63B851EFE705569DF7DD55B", "3230990030": "F0AB24F177C71B1E36FCC8FD421107CF7A3E30555EAF9893BBB2538A1B956189", "3230987279": "D3F0BE353D8DF845A45BFE34ADDC6BF272E2C1161FDBB6B543FC3984D3F56E3B", "3230987757": "C763EAB69DCE3935A3DC6D1559253FCF46A643DD2985E359E9C5F76E29C98589", "3230988390": "7E28F44E816EED51FFE98F8F20684E7388A25103E94EC028C7B33BD25CF1CE83", "3230976644": "5B51F8CC95EEB09C46D78C8E5F10B2CF452E089F4949AA4FD5DEE820DF1936FF", "3230988954": "F45129038F3A85F10836BEC522BA46B903C75B11E19F1458BD3BDEC14F1F3DFE", "3230990558": "BB40F1A7220C3CE56647194F9147900BFAC3880FDC21278B840601B03E8A8E15", "3230989521": "EA8DA41D22178F7009F3EC8CBA812370B5084E915E8F76DBF58463A489C927BE", "3230993310": "071CC3BC52FCF0EA9BBC65F048D0F7063926E3249DF877FF305A81957999BA43", "3230993908": "127464C5D9EC4BB3ADBC3274B59C49528CA789593C850BF9A3C2A4ADDE5D9346", "3230996671": "C4DA9A733BE2B1A42290ACD91527F9261D94939D831DFBD76EDC58CAB31608E3", "3230997186": "9CF4505B652728FF012878B053E49878AB39FE523E1BCEDAF247A357286A7799", "3230994446": "3662B2C5EE54C96DA6541F37F6F5CCDA5FC6B2BAE16E448C961E791713033951", "3230991071": "AEBD236A21019E59345F600252D72871EE3757EC9011FCC69910CE97FEDE0C6C", "3230996216": "829302AC927C3223AA62B2FC016F4B2E9B6490507CEC9523149B4DF275CA3A5D", "3230995526": "A707A1827F7A4A92176BD212E1CBCE19DE67557B3304C0FDAC39BB3E30C6E622", "3230992258": "15600220EE6F6B5FDC1214135037D1E8A9F78FC46E26BCE0A99C56590455673B", "3230995004": "4E6B3B5914913AADAB40ABCE3FC9114CF32F7D9ED4B197166CDC94A251E1040C", "3230992838": "0EA4686C883527BF77A81F61FA51C795974DA757C0F06243C1EDD82509162B50", "3231001107": "9883EA705C1759895B689D2F703A8C25E578132560C881FF73D5D5EC329836F5", "3230998366": "826F8DC93A514EF97E5F00A732215F052D2829CDA8E777009997BFDC3AA8A23C", "3230997745": "066F103235B55941D4281750971091B3DE52C8EEF9E7B2B8C413FC2FC2C13386", "3230986205": "8FC0B53AC23191E5B45A5A3C4ADD052BBF271D57AD3C703F232C551E30063588", "3230999448": "F7B6261DCB049DA4D31F868CC95EEFF38BA2C0809B1F2C6A56CD08F523CF0A2C", "3230999979": "7343DB9E1BB1DCF590A03AAAF8785E573EF8CC7C3D0333988DA2ED3E2785C3E9", "3231003455": "5ACFC972D222FEF028817105B9AC1B3DD6FAA5642C1A377DEDE955273F1914EA", "3230991625": "A231FEE0E2ACF4A435A44979ECAC59AEE517832EA24B0C6EAA19A30193251409", "3230998902": "2A2C917FECE9E9DFC41E3D3BD95E48867CB67E16404219F0EB2582A4A33FEB3C", "3231005561": "76BFFCE24C80EDEAF45F0BFFBA6D0E112495BD4D48787F098C90C487573CA71B", "3231006146": "EF1EDFC6EC6E69F620D84E9B3A6020CC9C0A9EBA2241AED2AFFB14B36D8B70BB", "3231000511": "F1EB9703419E8EB05B373C8C0CF1145DD06928A1ACE36AFE048DA27600BFC2CB", "3231002375": "670D04D97D4F668A6F6AF56EDBFE51E729D903EFCAF6829D6F86D00D2A064779", "3231001716": "BACCF4DDAF05AABFBB5714FFD1C4EC5F975F96A5D88E9DF1507E23A212AC142E", "3231004493": "E23F008E438EBEB025E0D7A8ED60BAE363A073A7E629671D9912DB650E3696A4", "3231008432": "CAEA291C59B784AC2F5764D0A2C5EE0A42371378BECCBF2190D05341FA4AC895", "3231008972": "5225D66FFFA8E765BFCCB117CA60CE29BEE5E7E478D1AB5EDAFB6FFAF354655D", "3231007299": "A0337899C2F9BA17FBFA3B8D29A1F3677041325837C9BE99033EE5B5C5966E2E", "3231009578": "C08A527A2CE6EF097F77C6195654AEB5E371EC28B38A6700259B811B5B7B474F", "3231007887": "B68D7029BC802170C8864651350B97E033979859BA4E283BC65CD9808958AC28", "3231010725": "52E857C925089C9FF427969B12B8D2B60437CAFF393DD24520D16C34CE49620D", "3231005082": "AF1E0AFDC94C83EB07A012F9FE609FB4FDB83C4084E2DAC85CFF53B16147875E", "3231010078": "DAA7DE03EBB2E2921DF79CF6C364DC0A6A610B1C2942A1CEABEDC61DF5D7D62D", "3231003999": "7BB3E85A5214CFB73C7954AD0036DD01938C30872DAE7E33983BE8FC3CCCC10D", "3231011211": "3BCBCE2B7E0335288C9F93BCCF9A765FDE26AD8FE94139EC73309BBA029D887C", "3231002878": "160E0B4296FC662C9D8E9F1C0CE1733241B394CBEAB555FB8DA31D39DC49F028", "3231013456": "2ECF9202E62D9F1E07BC9DDE8C32BE7380EB02BB9CC4345C998230B3FE83595B", "3231014567": "9B8E81E471B1985C4277487DF59BA22F122476D87B1EE98471596A44A3F08084", "3231011844": "16CA073DB9766AC222E35C2A55EB5F36AF67235CDE9EF5F855339334A218D28D", "3231014029": "79F37904133C1AD52ED425CFE03E628FB4CDA75CB3ED3D4290E51C0F237D1444", "3231015105": "6D4044A81705A3DEF00DC5E95A3F4F9DD661F58548C29101A853A0596F93DF47", "3231015608": "0A39DB28B12A4DEB5176E700DE68D04E9FB0CA8CA00166B126B065E468EE0785", "3231016152": "8AD81FC469728920C8454DCB23345022470774580030A36D7CA74A194229EAE4", "3231006740": "8133B583B7F2B0701733C5A0586F28205C3CC8B0DB5004EC731C7BB1EB64FA9F", "3231018315": "C1B0AC574DA747386676FEAC0A15DB6C7DCF1CCE9EFF71AD305C329AAF44ADF9", "3231016672": "FAB40727917046A4C9792FC693690F21C75B48DC2432984960E31DF794B114C9", "3231017211": "6C086FE806219551F0E08507C8D4CAF4B6DE22175001B76EBB5BF8FDF0D4ACAA"}
|
app.py
ADDED
|
@@ -0,0 +1,211 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from flask import Flask, jsonify, request
|
| 2 |
+
from flask_caching import Cache
|
| 3 |
+
import requests
|
| 4 |
+
from Crypto.Cipher import AES
|
| 5 |
+
from Crypto.Util.Padding import pad
|
| 6 |
+
import binascii
|
| 7 |
+
import my_pb2
|
| 8 |
+
import output_pb2
|
| 9 |
+
import json
|
| 10 |
+
from colorama import Fore, Style, init
|
| 11 |
+
import warnings
|
| 12 |
+
from urllib3.exceptions import InsecureRequestWarning
|
| 13 |
+
from concurrent.futures import ThreadPoolExecutor, as_completed
|
| 14 |
+
|
| 15 |
+
# Ignore SSL certificate warnings
|
| 16 |
+
warnings.filterwarnings("ignore", category=InsecureRequestWarning)
|
| 17 |
+
|
| 18 |
+
AES_KEY = b'Yg&tc%DEuh6%Zc^8'
|
| 19 |
+
AES_IV = b'6oyZDr22E3ychjM%'
|
| 20 |
+
|
| 21 |
+
# Initialize colorama
|
| 22 |
+
init(autoreset=True)
|
| 23 |
+
|
| 24 |
+
# Initialize Flask app
|
| 25 |
+
app = Flask(__name__)
|
| 26 |
+
|
| 27 |
+
# Configure Flask-Caching
|
| 28 |
+
cache = Cache(app, config={'CACHE_TYPE': 'SimpleCache', 'CACHE_DEFAULT_TIMEOUT': 25200}) # 7 ساعات بالثواني (7 * 60 * 60)
|
| 29 |
+
|
| 30 |
+
def get_token(password, uid):
|
| 31 |
+
url = "https://ffmconnect.live.gop.garenanow.com/oauth/guest/token/grant"
|
| 32 |
+
headers = {
|
| 33 |
+
"Host": "100067.connect.garena.com",
|
| 34 |
+
"User-Agent": "GarenaMSDK/4.0.19P4(G011A ;Android 9;en;US;)",
|
| 35 |
+
"Content-Type": "application/x-www-form-urlencoded",
|
| 36 |
+
"Accept-Encoding": "gzip, deflate, br",
|
| 37 |
+
"Connection": "close"
|
| 38 |
+
}
|
| 39 |
+
data = {
|
| 40 |
+
"uid": uid,
|
| 41 |
+
"password": password,
|
| 42 |
+
"response_type": "token",
|
| 43 |
+
"client_type": "2",
|
| 44 |
+
"client_secret": "2ee44819e9b4598845141067b281621874d0d5d7af9d8f7e00c1e54715b7d1e3",
|
| 45 |
+
"client_id": "100067"
|
| 46 |
+
}
|
| 47 |
+
response = requests.post(url, headers=headers, data=data)
|
| 48 |
+
if response.status_code != 200:
|
| 49 |
+
return None
|
| 50 |
+
return response.json()
|
| 51 |
+
|
| 52 |
+
def encrypt_message(key, iv, plaintext):
|
| 53 |
+
cipher = AES.new(key, AES.MODE_CBC, iv)
|
| 54 |
+
padded_message = pad(plaintext, AES.block_size)
|
| 55 |
+
encrypted_message = cipher.encrypt(padded_message)
|
| 56 |
+
return encrypted_message
|
| 57 |
+
|
| 58 |
+
def load_tokens(file_path, limit=None):
|
| 59 |
+
with open(file_path, 'r') as file:
|
| 60 |
+
data = json.load(file)
|
| 61 |
+
tokens = list(data.items())
|
| 62 |
+
if limit is not None:
|
| 63 |
+
tokens = tokens[:limit] # تحديد عدد التوكنات
|
| 64 |
+
return tokens
|
| 65 |
+
|
| 66 |
+
def parse_response(response_content):
|
| 67 |
+
# تحليل الـ response لاستخراج الحقول المهمة
|
| 68 |
+
response_dict = {}
|
| 69 |
+
lines = response_content.split("\n")
|
| 70 |
+
for line in lines:
|
| 71 |
+
if ":" in line:
|
| 72 |
+
key, value = line.split(":", 1)
|
| 73 |
+
response_dict[key.strip()] = value.strip().strip('"')
|
| 74 |
+
return response_dict
|
| 75 |
+
|
| 76 |
+
def process_token(uid, password):
|
| 77 |
+
token_data = get_token(password, uid)
|
| 78 |
+
if not token_data:
|
| 79 |
+
return {"uid": uid, "error": "Failed to retrieve token"}
|
| 80 |
+
|
| 81 |
+
# إنشاء GameData Protobuf
|
| 82 |
+
game_data = my_pb2.GameData()
|
| 83 |
+
game_data.timestamp = "2024-12-05 18:15:32"
|
| 84 |
+
game_data.game_name = "free fire"
|
| 85 |
+
game_data.game_version = 1
|
| 86 |
+
game_data.version_code = "1.108.3"
|
| 87 |
+
game_data.os_info = "Android OS 9 / API-28 (PI/rel.cjw.20220518.114133)"
|
| 88 |
+
game_data.device_type = "Handheld"
|
| 89 |
+
game_data.network_provider = "Verizon Wireless"
|
| 90 |
+
game_data.connection_type = "WIFI"
|
| 91 |
+
game_data.screen_width = 1280
|
| 92 |
+
game_data.screen_height = 960
|
| 93 |
+
game_data.dpi = "240"
|
| 94 |
+
game_data.cpu_info = "ARMv7 VFPv3 NEON VMH | 2400 | 4"
|
| 95 |
+
game_data.total_ram = 5951
|
| 96 |
+
game_data.gpu_name = "Adreno (TM) 640"
|
| 97 |
+
game_data.gpu_version = "OpenGL ES 3.0"
|
| 98 |
+
game_data.user_id = "Google|74b585a9-0268-4ad3-8f36-ef41d2e53610"
|
| 99 |
+
game_data.ip_address = "172.190.111.97"
|
| 100 |
+
game_data.language = "en"
|
| 101 |
+
game_data.open_id = token_data['open_id']
|
| 102 |
+
game_data.access_token = token_data['access_token']
|
| 103 |
+
game_data.platform_type = 4
|
| 104 |
+
game_data.device_form_factor = "Handheld"
|
| 105 |
+
game_data.device_model = "Asus ASUS_I005DA"
|
| 106 |
+
game_data.field_60 = 32968
|
| 107 |
+
game_data.field_61 = 29815
|
| 108 |
+
game_data.field_62 = 2479
|
| 109 |
+
game_data.field_63 = 914
|
| 110 |
+
game_data.field_64 = 31213
|
| 111 |
+
game_data.field_65 = 32968
|
| 112 |
+
game_data.field_66 = 31213
|
| 113 |
+
game_data.field_67 = 32968
|
| 114 |
+
game_data.field_70 = 4
|
| 115 |
+
game_data.field_73 = 2
|
| 116 |
+
game_data.library_path = "/data/app/com.dts.freefireth-QPvBnTUhYWE-7DMZSOGdmA==/lib/arm"
|
| 117 |
+
game_data.field_76 = 1
|
| 118 |
+
game_data.apk_info = "5b892aaabd688e571f688053118a162b|/data/app/com.dts.freefireth-QPvBnTUhYWE-7DMZSOGdmA==/base.apk"
|
| 119 |
+
game_data.field_78 = 6
|
| 120 |
+
game_data.field_79 = 1
|
| 121 |
+
game_data.os_architecture = "32"
|
| 122 |
+
game_data.build_number = "2019117877"
|
| 123 |
+
game_data.field_85 = 1
|
| 124 |
+
game_data.graphics_backend = "OpenGLES2"
|
| 125 |
+
game_data.max_texture_units = 16383
|
| 126 |
+
game_data.rendering_api = 4
|
| 127 |
+
game_data.encoded_field_89 = "\u0017T\u0011\u0017\u0002\b\u000eUMQ\bEZ\u0003@ZK;Z\u0002\u000eV\ri[QVi\u0003\ro\t\u0007e"
|
| 128 |
+
game_data.field_92 = 9204
|
| 129 |
+
game_data.marketplace = "3rd_party"
|
| 130 |
+
game_data.encryption_key = "KqsHT2B4It60T/65PGR5PXwFxQkVjGNi+IMCK3CFBCBfrNpSUA1dZnjaT3HcYchlIFFL1ZJOg0cnulKCPGD3C3h1eFQ="
|
| 131 |
+
game_data.total_storage = 111107
|
| 132 |
+
game_data.field_97 = 1
|
| 133 |
+
game_data.field_98 = 1
|
| 134 |
+
game_data.field_99 = "4"
|
| 135 |
+
game_data.field_100 = "4"
|
| 136 |
+
|
| 137 |
+
# تسلسل البيانات
|
| 138 |
+
serialized_data = game_data.SerializeToString()
|
| 139 |
+
|
| 140 |
+
# تشفير البيانات
|
| 141 |
+
encrypted_data = encrypt_message(AES_KEY, AES_IV, serialized_data)
|
| 142 |
+
hex_encrypted_data = binascii.hexlify(encrypted_data).decode('utf-8')
|
| 143 |
+
|
| 144 |
+
# إرسال البيانات المشفرة إلى الخادم
|
| 145 |
+
url = "https://loginbp.common.ggbluefox.com/MajorLogin"
|
| 146 |
+
headers = {
|
| 147 |
+
'User-Agent': "Dalvik/2.1.0 (Linux; U; Android 9; ASUS_Z01QD Build/PI)",
|
| 148 |
+
'Connection': "Keep-Alive",
|
| 149 |
+
'Accept-Encoding': "gzip",
|
| 150 |
+
'Content-Type': "application/octet-stream",
|
| 151 |
+
'Expect': "100-continue",
|
| 152 |
+
'X-Unity-Version': "2018.4.11f1",
|
| 153 |
+
'X-GA': "v1 1",
|
| 154 |
+
'ReleaseVersion': "OB48"
|
| 155 |
+
}
|
| 156 |
+
edata = bytes.fromhex(hex_encrypted_data)
|
| 157 |
+
|
| 158 |
+
try:
|
| 159 |
+
response = requests.post(url, data=edata, headers=headers, verify=False)
|
| 160 |
+
if response.status_code == 200:
|
| 161 |
+
# محاولة فك تشفير الـ Protobuf
|
| 162 |
+
example_msg = output_pb2.Garena_420()
|
| 163 |
+
try:
|
| 164 |
+
example_msg.ParseFromString(response.content)
|
| 165 |
+
# تحليل الـ response لاستخراج الحقول المهمة
|
| 166 |
+
response_dict = parse_response(str(example_msg))
|
| 167 |
+
return {
|
| 168 |
+
# "uid": uid,
|
| 169 |
+
# "status": response_dict.get("status", "N/A"),
|
| 170 |
+
"token": response_dict.get("token", "N/A")
|
| 171 |
+
}
|
| 172 |
+
except Exception as e:
|
| 173 |
+
return {
|
| 174 |
+
"uid": uid,
|
| 175 |
+
"error": f"Failed to deserialize the response: {e}"
|
| 176 |
+
}
|
| 177 |
+
else:
|
| 178 |
+
return {
|
| 179 |
+
"uid": uid,
|
| 180 |
+
"error": f"Failed to get response: HTTP {response.status_code}, {response.reason}"
|
| 181 |
+
}
|
| 182 |
+
except requests.RequestException as e:
|
| 183 |
+
return {
|
| 184 |
+
"uid": uid,
|
| 185 |
+
"error": f"An error occurred while making the request: {e}"
|
| 186 |
+
}
|
| 187 |
+
|
| 188 |
+
@app.route('/token', methods=['GET'])
|
| 189 |
+
@cache.cached(timeout=25200) # تخزين النتائج لمدة 7 ساعات
|
| 190 |
+
def get_responses():
|
| 191 |
+
# الحصول على عدد التوكنات المطلوبة من query parameter (افتراضيًا 100)
|
| 192 |
+
limit = request.args.get('limit', default=1, type=int)
|
| 193 |
+
|
| 194 |
+
# تحميل التوكنات من ملف accs.txt مع تحديد الحد الأقصى
|
| 195 |
+
tokens = load_tokens("accs.txt", limit)
|
| 196 |
+
responses = []
|
| 197 |
+
|
| 198 |
+
# استخدام ThreadPoolExecutor لتنفيذ المهام بشكل متوازي
|
| 199 |
+
with ThreadPoolExecutor(max_workers=15) as executor:
|
| 200 |
+
future_to_uid = {executor.submit(process_token, uid, password): uid for uid, password in tokens}
|
| 201 |
+
for future in as_completed(future_to_uid):
|
| 202 |
+
try:
|
| 203 |
+
response = future.result()
|
| 204 |
+
responses.append(response)
|
| 205 |
+
except Exception as e:
|
| 206 |
+
responses.append({"uid": future_to_uid[future], "error": str(e)})
|
| 207 |
+
|
| 208 |
+
return jsonify(responses)
|
| 209 |
+
|
| 210 |
+
if __name__ == "__main__":
|
| 211 |
+
app.run(host="0.0.0.0", port=50011)
|
app.py.bak
ADDED
|
@@ -0,0 +1,211 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from flask import Flask, jsonify, request
|
| 2 |
+
from flask_caching import Cache
|
| 3 |
+
import requests
|
| 4 |
+
from Crypto.Cipher import AES
|
| 5 |
+
from Crypto.Util.Padding import pad
|
| 6 |
+
import binascii
|
| 7 |
+
import my_pb2
|
| 8 |
+
import output_pb2
|
| 9 |
+
import json
|
| 10 |
+
from colorama import Fore, Style, init
|
| 11 |
+
import warnings
|
| 12 |
+
from urllib3.exceptions import InsecureRequestWarning
|
| 13 |
+
from concurrent.futures import ThreadPoolExecutor, as_completed
|
| 14 |
+
|
| 15 |
+
# Ignore SSL certificate warnings
|
| 16 |
+
warnings.filterwarnings("ignore", category=InsecureRequestWarning)
|
| 17 |
+
|
| 18 |
+
AES_KEY = b'Yg&tc%DEuh6%Zc^8'
|
| 19 |
+
AES_IV = b'6oyZDr22E3ychjM%'
|
| 20 |
+
|
| 21 |
+
# Initialize colorama
|
| 22 |
+
init(autoreset=True)
|
| 23 |
+
|
| 24 |
+
# Initialize Flask app
|
| 25 |
+
app = Flask(__name__)
|
| 26 |
+
|
| 27 |
+
# Configure Flask-Caching
|
| 28 |
+
cache = Cache(app, config={'CACHE_TYPE': 'SimpleCache', 'CACHE_DEFAULT_TIMEOUT': 25200}) # 7 ساعات بالثواني (7 * 60 * 60)
|
| 29 |
+
|
| 30 |
+
def get_token(password, uid):
|
| 31 |
+
url = "https://ffmconnect.live.gop.garenanow.com/oauth/guest/token/grant"
|
| 32 |
+
headers = {
|
| 33 |
+
"Host": "100067.connect.garena.com",
|
| 34 |
+
"User-Agent": "GarenaMSDK/4.0.19P4(G011A ;Android 9;en;US;)",
|
| 35 |
+
"Content-Type": "application/x-www-form-urlencoded",
|
| 36 |
+
"Accept-Encoding": "gzip, deflate, br",
|
| 37 |
+
"Connection": "close"
|
| 38 |
+
}
|
| 39 |
+
data = {
|
| 40 |
+
"uid": uid,
|
| 41 |
+
"password": password,
|
| 42 |
+
"response_type": "token",
|
| 43 |
+
"client_type": "2",
|
| 44 |
+
"client_secret": "2ee44819e9b4598845141067b281621874d0d5d7af9d8f7e00c1e54715b7d1e3",
|
| 45 |
+
"client_id": "100067"
|
| 46 |
+
}
|
| 47 |
+
response = requests.post(url, headers=headers, data=data)
|
| 48 |
+
if response.status_code != 200:
|
| 49 |
+
return None
|
| 50 |
+
return response.json()
|
| 51 |
+
|
| 52 |
+
def encrypt_message(key, iv, plaintext):
|
| 53 |
+
cipher = AES.new(key, AES.MODE_CBC, iv)
|
| 54 |
+
padded_message = pad(plaintext, AES.block_size)
|
| 55 |
+
encrypted_message = cipher.encrypt(padded_message)
|
| 56 |
+
return encrypted_message
|
| 57 |
+
|
| 58 |
+
def load_tokens(file_path, limit=None):
|
| 59 |
+
with open(file_path, 'r') as file:
|
| 60 |
+
data = json.load(file)
|
| 61 |
+
tokens = list(data.items())
|
| 62 |
+
if limit is not None:
|
| 63 |
+
tokens = tokens[:limit] # تحديد عدد التوكنات
|
| 64 |
+
return tokens
|
| 65 |
+
|
| 66 |
+
def parse_response(response_content):
|
| 67 |
+
# تحليل الـ response لاستخراج الحقول المهمة
|
| 68 |
+
response_dict = {}
|
| 69 |
+
lines = response_content.split("\n")
|
| 70 |
+
for line in lines:
|
| 71 |
+
if ":" in line:
|
| 72 |
+
key, value = line.split(":", 1)
|
| 73 |
+
response_dict[key.strip()] = value.strip().strip('"')
|
| 74 |
+
return response_dict
|
| 75 |
+
|
| 76 |
+
def process_token(uid, password):
|
| 77 |
+
token_data = get_token(password, uid)
|
| 78 |
+
if not token_data:
|
| 79 |
+
return {"uid": uid, "error": "Failed to retrieve token"}
|
| 80 |
+
|
| 81 |
+
# إنشاء GameData Protobuf
|
| 82 |
+
game_data = my_pb2.GameData()
|
| 83 |
+
game_data.timestamp = "2024-12-05 18:15:32"
|
| 84 |
+
game_data.game_name = "free fire"
|
| 85 |
+
game_data.game_version = 1
|
| 86 |
+
game_data.version_code = "1.108.3"
|
| 87 |
+
game_data.os_info = "Android OS 9 / API-28 (PI/rel.cjw.20220518.114133)"
|
| 88 |
+
game_data.device_type = "Handheld"
|
| 89 |
+
game_data.network_provider = "Verizon Wireless"
|
| 90 |
+
game_data.connection_type = "WIFI"
|
| 91 |
+
game_data.screen_width = 1280
|
| 92 |
+
game_data.screen_height = 960
|
| 93 |
+
game_data.dpi = "240"
|
| 94 |
+
game_data.cpu_info = "ARMv7 VFPv3 NEON VMH | 2400 | 4"
|
| 95 |
+
game_data.total_ram = 5951
|
| 96 |
+
game_data.gpu_name = "Adreno (TM) 640"
|
| 97 |
+
game_data.gpu_version = "OpenGL ES 3.0"
|
| 98 |
+
game_data.user_id = "Google|74b585a9-0268-4ad3-8f36-ef41d2e53610"
|
| 99 |
+
game_data.ip_address = "172.190.111.97"
|
| 100 |
+
game_data.language = "en"
|
| 101 |
+
game_data.open_id = token_data['open_id']
|
| 102 |
+
game_data.access_token = token_data['access_token']
|
| 103 |
+
game_data.platform_type = 4
|
| 104 |
+
game_data.device_form_factor = "Handheld"
|
| 105 |
+
game_data.device_model = "Asus ASUS_I005DA"
|
| 106 |
+
game_data.field_60 = 32968
|
| 107 |
+
game_data.field_61 = 29815
|
| 108 |
+
game_data.field_62 = 2479
|
| 109 |
+
game_data.field_63 = 914
|
| 110 |
+
game_data.field_64 = 31213
|
| 111 |
+
game_data.field_65 = 32968
|
| 112 |
+
game_data.field_66 = 31213
|
| 113 |
+
game_data.field_67 = 32968
|
| 114 |
+
game_data.field_70 = 4
|
| 115 |
+
game_data.field_73 = 2
|
| 116 |
+
game_data.library_path = "/data/app/com.dts.freefireth-QPvBnTUhYWE-7DMZSOGdmA==/lib/arm"
|
| 117 |
+
game_data.field_76 = 1
|
| 118 |
+
game_data.apk_info = "5b892aaabd688e571f688053118a162b|/data/app/com.dts.freefireth-QPvBnTUhYWE-7DMZSOGdmA==/base.apk"
|
| 119 |
+
game_data.field_78 = 6
|
| 120 |
+
game_data.field_79 = 1
|
| 121 |
+
game_data.os_architecture = "32"
|
| 122 |
+
game_data.build_number = "2019117877"
|
| 123 |
+
game_data.field_85 = 1
|
| 124 |
+
game_data.graphics_backend = "OpenGLES2"
|
| 125 |
+
game_data.max_texture_units = 16383
|
| 126 |
+
game_data.rendering_api = 4
|
| 127 |
+
game_data.encoded_field_89 = "\u0017T\u0011\u0017\u0002\b\u000eUMQ\bEZ\u0003@ZK;Z\u0002\u000eV\ri[QVi\u0003\ro\t\u0007e"
|
| 128 |
+
game_data.field_92 = 9204
|
| 129 |
+
game_data.marketplace = "3rd_party"
|
| 130 |
+
game_data.encryption_key = "KqsHT2B4It60T/65PGR5PXwFxQkVjGNi+IMCK3CFBCBfrNpSUA1dZnjaT3HcYchlIFFL1ZJOg0cnulKCPGD3C3h1eFQ="
|
| 131 |
+
game_data.total_storage = 111107
|
| 132 |
+
game_data.field_97 = 1
|
| 133 |
+
game_data.field_98 = 1
|
| 134 |
+
game_data.field_99 = "4"
|
| 135 |
+
game_data.field_100 = "4"
|
| 136 |
+
|
| 137 |
+
# تسلسل البيانات
|
| 138 |
+
serialized_data = game_data.SerializeToString()
|
| 139 |
+
|
| 140 |
+
# تشفير البيانات
|
| 141 |
+
encrypted_data = encrypt_message(AES_KEY, AES_IV, serialized_data)
|
| 142 |
+
hex_encrypted_data = binascii.hexlify(encrypted_data).decode('utf-8')
|
| 143 |
+
|
| 144 |
+
# إرسال البيانات المشفرة إلى الخادم
|
| 145 |
+
url = "https://loginbp.common.ggbluefox.com/MajorLogin"
|
| 146 |
+
headers = {
|
| 147 |
+
'User-Agent': "Dalvik/2.1.0 (Linux; U; Android 9; ASUS_Z01QD Build/PI)",
|
| 148 |
+
'Connection': "Keep-Alive",
|
| 149 |
+
'Accept-Encoding': "gzip",
|
| 150 |
+
'Content-Type': "application/octet-stream",
|
| 151 |
+
'Expect': "100-continue",
|
| 152 |
+
'X-Unity-Version': "2018.4.11f1",
|
| 153 |
+
'X-GA': "v1 1",
|
| 154 |
+
'ReleaseVersion': "OB47"
|
| 155 |
+
}
|
| 156 |
+
edata = bytes.fromhex(hex_encrypted_data)
|
| 157 |
+
|
| 158 |
+
try:
|
| 159 |
+
response = requests.post(url, data=edata, headers=headers, verify=False)
|
| 160 |
+
if response.status_code == 200:
|
| 161 |
+
# محاولة فك تشفير الـ Protobuf
|
| 162 |
+
example_msg = output_pb2.Garena_420()
|
| 163 |
+
try:
|
| 164 |
+
example_msg.ParseFromString(response.content)
|
| 165 |
+
# تحليل الـ response لاستخراج الحقول المهمة
|
| 166 |
+
response_dict = parse_response(str(example_msg))
|
| 167 |
+
return {
|
| 168 |
+
# "uid": uid,
|
| 169 |
+
# "status": response_dict.get("status", "N/A"),
|
| 170 |
+
"token": response_dict.get("token", "N/A")
|
| 171 |
+
}
|
| 172 |
+
except Exception as e:
|
| 173 |
+
return {
|
| 174 |
+
"uid": uid,
|
| 175 |
+
"error": f"Failed to deserialize the response: {e}"
|
| 176 |
+
}
|
| 177 |
+
else:
|
| 178 |
+
return {
|
| 179 |
+
"uid": uid,
|
| 180 |
+
"error": f"Failed to get response: HTTP {response.status_code}, {response.reason}"
|
| 181 |
+
}
|
| 182 |
+
except requests.RequestException as e:
|
| 183 |
+
return {
|
| 184 |
+
"uid": uid,
|
| 185 |
+
"error": f"An error occurred while making the request: {e}"
|
| 186 |
+
}
|
| 187 |
+
|
| 188 |
+
@app.route('/token', methods=['GET'])
|
| 189 |
+
@cache.cached(timeout=25200) # تخزين النتائج لمدة 7 ساعات
|
| 190 |
+
def get_responses():
|
| 191 |
+
# الحصول على عدد التوكنات المطلوبة من query parameter (افتراضيًا 100)
|
| 192 |
+
limit = request.args.get('limit', default=1, type=int)
|
| 193 |
+
|
| 194 |
+
# تحميل التوكنات من ملف accs.txt مع تحديد الحد الأقصى
|
| 195 |
+
tokens = load_tokens("accs.txt", limit)
|
| 196 |
+
responses = []
|
| 197 |
+
|
| 198 |
+
# استخدام ThreadPoolExecutor لتنفيذ المهام بشكل متوازي
|
| 199 |
+
with ThreadPoolExecutor(max_workers=15) as executor:
|
| 200 |
+
future_to_uid = {executor.submit(process_token, uid, password): uid for uid, password in tokens}
|
| 201 |
+
for future in as_completed(future_to_uid):
|
| 202 |
+
try:
|
| 203 |
+
response = future.result()
|
| 204 |
+
responses.append(response)
|
| 205 |
+
except Exception as e:
|
| 206 |
+
responses.append({"uid": future_to_uid[future], "error": str(e)})
|
| 207 |
+
|
| 208 |
+
return jsonify(responses)
|
| 209 |
+
|
| 210 |
+
if __name__ == "__main__":
|
| 211 |
+
app.run(host="0.0.0.0", port=50011)
|
my_pb2.py
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
|
| 3 |
+
# -*- coding: utf-8 -*-
|
| 4 |
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
| 5 |
+
# source: my.proto
|
| 6 |
+
"""Generated protocol buffer code."""
|
| 7 |
+
from google.protobuf.internal import builder as _builder
|
| 8 |
+
from google.protobuf import descriptor as _descriptor
|
| 9 |
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
| 10 |
+
from google.protobuf import symbol_database as _symbol_database
|
| 11 |
+
# @@protoc_insertion_point(imports)
|
| 12 |
+
|
| 13 |
+
_sym_db = _symbol_database.Default()
|
| 14 |
+
|
| 15 |
+
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x08my.proto\"\xae\t\n\x08GameData\x12\x11\n\ttimestamp\x18\x03 \x01(\t\x12\x11\n\tgame_name\x18\x04 \x01(\t\x12\x14\n\x0cgame_version\x18\x05 \x01(\x05\x12\x14\n\x0cversion_code\x18\x07 \x01(\t\x12\x0f\n\x07os_info\x18\x08 \x01(\t\x12\x13\n\x0b\x64\x65vice_type\x18\t \x01(\t\x12\x18\n\x10network_provider\x18\n \x01(\t\x12\x17\n\x0f\x63onnection_type\x18\x0b \x01(\t\x12\x14\n\x0cscreen_width\x18\x0c \x01(\x05\x12\x15\n\rscreen_height\x18\r \x01(\x05\x12\x0b\n\x03\x64pi\x18\x0e \x01(\t\x12\x10\n\x08\x63pu_info\x18\x0f \x01(\t\x12\x11\n\ttotal_ram\x18\x10 \x01(\x05\x12\x10\n\x08gpu_name\x18\x11 \x01(\t\x12\x13\n\x0bgpu_version\x18\x12 \x01(\t\x12\x0f\n\x07user_id\x18\x13 \x01(\t\x12\x12\n\nip_address\x18\x14 \x01(\t\x12\x10\n\x08language\x18\x15 \x01(\t\x12\x0f\n\x07open_id\x18\x16 \x01(\t\x12\x15\n\rplatform_type\x18\x17 \x01(\x05\x12\x1a\n\x12\x64\x65vice_form_factor\x18\x18 \x01(\t\x12\x14\n\x0c\x64\x65vice_model\x18\x19 \x01(\t\x12\x14\n\x0c\x61\x63\x63\x65ss_token\x18\x1d \x01(\t\x12\x18\n\x10unknown_field_30\x18\x1e \x01(\x05\x12\"\n\x1asecondary_network_provider\x18) \x01(\t\x12!\n\x19secondary_connection_type\x18* \x01(\t\x12\x11\n\tunique_id\x18\x39 \x01(\t\x12\x10\n\x08\x66ield_60\x18< \x01(\x05\x12\x10\n\x08\x66ield_61\x18= \x01(\x05\x12\x10\n\x08\x66ield_62\x18> \x01(\x05\x12\x10\n\x08\x66ield_63\x18? \x01(\x05\x12\x10\n\x08\x66ield_64\x18@ \x01(\x05\x12\x10\n\x08\x66ield_65\x18\x41 \x01(\x05\x12\x10\n\x08\x66ield_66\x18\x42 \x01(\x05\x12\x10\n\x08\x66ield_67\x18\x43 \x01(\x05\x12\x10\n\x08\x66ield_70\x18\x46 \x01(\x05\x12\x10\n\x08\x66ield_73\x18I \x01(\x05\x12\x14\n\x0clibrary_path\x18J \x01(\t\x12\x10\n\x08\x66ield_76\x18L \x01(\x05\x12\x10\n\x08\x61pk_info\x18M \x01(\t\x12\x10\n\x08\x66ield_78\x18N \x01(\x05\x12\x10\n\x08\x66ield_79\x18O \x01(\x05\x12\x17\n\x0fos_architecture\x18Q \x01(\t\x12\x14\n\x0c\x62uild_number\x18S \x01(\t\x12\x10\n\x08\x66ield_85\x18U \x01(\x05\x12\x18\n\x10graphics_backend\x18V \x01(\t\x12\x19\n\x11max_texture_units\x18W \x01(\x05\x12\x15\n\rrendering_api\x18X \x01(\x05\x12\x18\n\x10\x65ncoded_field_89\x18Y \x01(\t\x12\x10\n\x08\x66ield_92\x18\\ \x01(\x05\x12\x13\n\x0bmarketplace\x18] \x01(\t\x12\x16\n\x0e\x65ncryption_key\x18^ \x01(\t\x12\x15\n\rtotal_storage\x18_ \x01(\x05\x12\x10\n\x08\x66ield_97\x18\x61 \x01(\x05\x12\x10\n\x08\x66ield_98\x18\x62 \x01(\x05\x12\x10\n\x08\x66ield_99\x18\x63 \x01(\t\x12\x11\n\tfield_100\x18\x64 \x01(\tb\x06proto3')
|
| 19 |
+
|
| 20 |
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
|
| 21 |
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'my_pb2', globals())
|
| 22 |
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
| 23 |
+
|
| 24 |
+
DESCRIPTOR._options = None
|
| 25 |
+
_GAMEDATA._serialized_start=13
|
| 26 |
+
_GAMEDATA._serialized_end=1211
|
| 27 |
+
# @@protoc_insertion_point(module_scope)
|
nohup.out
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
output_pb2.py
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# -*- coding: utf-8 -*-
|
| 2 |
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
| 3 |
+
# source: jwt_generator.proto
|
| 4 |
+
# Protobuf Python Version: 4.25.1
|
| 5 |
+
"""Generated protocol buffer code."""
|
| 6 |
+
from google.protobuf import descriptor as _descriptor
|
| 7 |
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
| 8 |
+
from google.protobuf import symbol_database as _symbol_database
|
| 9 |
+
from google.protobuf.internal import builder as _builder
|
| 10 |
+
# @@protoc_insertion_point(imports)
|
| 11 |
+
|
| 12 |
+
_sym_db = _symbol_database.Default()
|
| 13 |
+
|
| 14 |
+
|
| 15 |
+
|
| 16 |
+
|
| 17 |
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13jwt_generator.proto\"\xd2\x02\n\nGarena_420\x12\x12\n\naccount_id\x18\x01 \x01(\x03\x12\x0e\n\x06region\x18\x02 \x01(\t\x12\r\n\x05place\x18\x03 \x01(\t\x12\x10\n\x08location\x18\x04 \x01(\t\x12\x0e\n\x06status\x18\x05 \x01(\t\x12\r\n\x05token\x18\x08 \x01(\t\x12\n\n\x02id\x18\t \x01(\x05\x12\x0b\n\x03\x61pi\x18\n \x01(\t\x12\x0e\n\x06number\x18\x0c \x01(\x05\x12\x1e\n\tGarena420\x18\x0f \x01(\x0b\x32\x0b.Garena_420\x12\x0c\n\x04\x61rea\x18\x10 \x01(\t\x12\x11\n\tmain_area\x18\x12 \x01(\t\x12\x0c\n\x04\x63ity\x18\x13 \x01(\t\x12\x0c\n\x04name\x18\x14 \x01(\t\x12\x11\n\ttimestamp\x18\x15 \x01(\x03\x12\x0e\n\x06\x62inary\x18\x16 \x01(\x0c\x12\x13\n\x0b\x62inary_data\x18\x17 \x01(\x0c\x1a\"\n\x12\x44\x65\x63rypted_Payloads\x12\x0c\n\x04type\x18\x01 \x01(\x05\x62\x06proto3')
|
| 18 |
+
|
| 19 |
+
_globals = globals()
|
| 20 |
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
| 21 |
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'output_pb2', _globals)
|
| 22 |
+
if _descriptor._USE_C_DESCRIPTORS == False:
|
| 23 |
+
DESCRIPTOR._options = None
|
| 24 |
+
_globals['_GARENA_420']._serialized_start=24
|
| 25 |
+
_globals['_GARENA_420']._serialized_end=362
|
| 26 |
+
_globals['_GARENA_420_DECRYPTED_PAYLOADS']._serialized_start=328
|
| 27 |
+
_globals['_GARENA_420_DECRYPTED_PAYLOADS']._serialized_end=362
|
| 28 |
+
# @@protoc_insertion_point(module_scope)
|
requirements.txt
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Flask==2.3.2
|
| 2 |
+
Flask-Caching==2.0.2
|
| 3 |
+
requests==2.31.0
|
| 4 |
+
pycryptodome==3.19.0
|
| 5 |
+
colorama==0.4.6
|
| 6 |
+
protobuf==4.24.4
|