void __stdcall sub_100010B0(int a1)
{
HMODULE (__stdcall *v1)(LPCSTR); // ebp@1
HMODULE v2; // eax@1
HMODULE v3; // esi@1
void *v4; // esi@3
HMODULE v5; // eax@5
void *v6; // esi@6
signed int v7; // ebx@6
HMODULE v8; // eax@15
void *v9; // ebx@16
signed int v10; // esi@16
HMODULE v11; // eax@22
void *v12; // ebx@23
signed int v13; // esi@23
HMODULE v14; // eax@29
void *v15; // ebx@30
signed int v16; // esi@30
BOOL (__stdcall *v17)(const void *, UINT); // esi@36
HMODULE v18; // ebx@36
int v19; // ebp@37
const void *v20; // ebp@38
const void *v21; // ebp@39
int v22; // ebp@42
const void *v23; // ebp@43
const void *v24; // ebp@44
const void *v25; // ebx@47
const void *v26; // ebx@48
const void *v27; // ebx@49
HMODULE v28; // ebx@54
int v29; // ebp@55
const void *v30; // ebp@56
const void *v31; // ebp@57
int v32; // ebp@60
const void *v33; // ebp@61
const void *v34; // ebp@62
const void *v35; // ebx@65
const void *v36; // ebx@66
const void *v37; // ebx@67
HMODULE v38; // eax@70
int v39; // ebx@70
void *v40; // esi@70
int v41; // ebp@70
int v42; // ebx@70
int v43; // ebp@70
int v44; // ebx@73
HMODULE v45; // ebx@77
signed int v46; // esi@77
HMODULE v47; // ebx@83
signed int v48; // esi@83
HMODULE v49; // ebx@89
signed int v50; // esi@89
HMODULE v51; // ebx@95
signed int v52; // esi@95
HMODULE v53; // ebx@101
signed int v54; // esi@101
HMODULE v55; // ebx@107
signed int v56; // esi@107
HMODULE v57; // ebx@113
signed int v58; // esi@113
signed int v59; // ebx@119
HMODULE v60; // esi@120
signed int v61; // ebx@126
HMODULE v62; // esi@127
signed int v63; // ebx@133
HMODULE v64; // esi@134
signed int v65; // ebx@140
HMODULE v66; // esi@141
signed int v67; // ebx@147
HMODULE v68; // esi@148
signed int v69; // ebx@154
HMODULE v70; // esi@155
signed int v71; // ebx@161
HMODULE v72; // esi@162
signed int v73; // ebx@168
HMODULE v74; // esi@169
signed int v75; // ebx@175
HMODULE v76; // esi@176
signed int v77; // ebx@182
HMODULE v78; // esi@183
signed int v79; // ebx@189
HMODULE v80; // esi@190
signed int v81; // ebx@196
HMODULE v82; // esi@197
HMODULE v83; // ebx@203
signed int v84; // esi@203
HMODULE v85; // ebx@210
signed int v86; // esi@210
HMODULE v87; // ebx@216
signed int v88; // esi@216
HMODULE v89; // eax@222
void *v90; // esi@223
HMODULE v91; // eax@225
void *v92; // esi@226
while ( 1 )
{
v1 = GetModuleHandleA;
v2 = GetModuleHandleA("PointBlank.exe");
v3 = v2;
if ( v2 && !byte_10050F51 )
{
VirtualProtect(v2 + 1302094, 4u, 0x40u, &flOldProtect);
memmove(v3 + 1302094, &unk_10042BC8, 4u);
VirtualProtect(v3 + 1302094, 4u, flOldProtect, &flOldProtect);
VirtualProtect(v3 + 1407309, 0xCu, 0x40u, &flOldProtect);
memmove(v3 + 1407309, "Damage", 0xCu);
VirtualProtect(v3 + 1407309, 0xCu, flOldProtect, &flOldProtect);
VirtualProtect(v3 + 1407798, 0xCu, 0x40u, &flOldProtect);
memmove(v3 + 1407798, "Damage", 0xCu);
VirtualProtect(v3 + 1407798, 0xCu, flOldProtect, &flOldProtect);
VirtualProtect((char *)v3 + 5633131, 0xCu, 0x40u, &flOldProtect);
memmove((char *)v3 + 5633131, "Damage", 0xCu);
VirtualProtect((char *)v3 + 5633131, 0xCu, flOldProtect, &flOldProtect);
VirtualProtect(v3 + 1408828, 0xCu, 0x40u, &flOldProtect);
memmove(v3 + 1408828, "Damage", 0xCu);
VirtualProtect(v3 + 1408828, 0xCu, flOldProtect, &flOldProtect);
VirtualProtect(v3 + 1409320, 0xCu, 0x40u, &flOldProtect);
memmove(v3 + 1409320, "Damage", 0xCu);
VirtualProtect(v3 + 1409320, 0xCu, flOldProtect, &flOldProtect);
VirtualProtect(v3 + 1410148, 0xCu, 0x40u, &flOldProtect);
memmove(v3 + 1410148, "Damage", 0xCu);
VirtualProtect(v3 + 1410148, 0xCu, flOldProtect, &flOldProtect);
VirtualProtect(v3 + 1410300, 0xCu, 0x40u, &flOldProtect);
memmove(v3 + 1410300, "Damage", 0xCu);
VirtualProtect(v3 + 1410300, 0xCu, flOldProtect, &flOldProtect);
v4 = v3 + 1410583;
VirtualProtect(v4, 0xCu, 0x40u, &flOldProtect);
memmove(v4, "Damage", 0xCu);
VirtualProtect(v4, 0xCu, flOldProtect, &flOldProtect);
v1 = GetModuleHandleA;
byte_10050F51 = 1;
}
if ( dword_10050F58 == 1 )
{
v5 = v1("PointBlank.exe");
if ( v5 )
{
v6 = v5 + 1686430;
v7 = 25728;
do
{
if ( !IsBadWritePtr(v6, 4u) && !IsBadWritePtr((LPVOID)(*(_DWORD *)v6 + v7 - 56), 4u) )
*(_DWORD *)(*(_DWORD *)v6 + v7 - 56) = 151587081;
if ( !IsBadWritePtr(v6, 4u) && !IsBadWritePtr((LPVOID)(v7 + *(_DWORD *)v6), 4u) )
*(_DWORD *)(v7 + *(_DWORD *)v6) = -15724528;
v7 += 4524;
}
while ( v7 <= 138828 );
}
}
if ( dword_10050F88 == 1 )
{
v8 = v1("PointBlank.exe");
if ( v8 )
{
v9 = v8 + 1686430;
v10 = 25672;
do
{
if ( !IsBadWritePtr(v9, 4u) && !IsBadWritePtr((LPVOID)(v10 + *(_DWORD *)v9), 4u) )
*(_DWORD *)(v10 + *(_DWORD *)v9) = 151587081;
v10 += 4524;
}
while ( v10 <= 138772 );
}
}
if ( dword_10050F60 == 1 )
{
v11 = v1("PointBlank.exe");
if ( v11 )
{
v12 = v11 + 1686430;
v13 = 18304;
do
{
if ( !IsBadWritePtr(v12, 4u) && !IsBadWritePtr((LPVOID)(v13 + *(_DWORD *)v12), 4u) )
*(_DWORD *)(v13 + *(_DWORD *)v12) = 65535;
v13 += 84;
}
while ( v13 <= 21244 );
}
}
if ( dword_10050F5C == 1 )
{
v14 = v1("PointBlank.exe");
if ( v14 )
{
v15 = v14 + 1686430;
v16 = 18346;
do
{
if ( !IsBadWritePtr(v15, 4u) && !IsBadWritePtr((LPVOID)(v16 + *(_DWORD *)v15), 4u) )
*(_DWORD *)(v16 + *(_DWORD *)v15) = 65535;
v16 += 84;
}
while ( v16 <= 21286 );
}
}
if ( dword_10050F64 == 1 )
{
v17 = IsBadReadPtr;
v18 = v1("PointBlank.exe") + 1686416;
if ( !IsBadReadPtr(v18, 4u) )
{
v19 = *(_DWORD *)v18 + 580;
if ( !IsBadReadPtr((const void *)(*(_DWORD *)v18 + 580), 4u) )
{
v20 = (const void *)(*(_DWORD *)v19 + 36);
if ( !IsBadReadPtr(v20, 4u) )
{
v21 = (const void *)(*(_DWORD *)v20 + 2441);
if ( !IsBadReadPtr(v21, 4u) )
{
byte_1005063A = *(_BYTE *)v21;
byte_1005063B = byte_1005063A;
byte_10050638 = byte_1005063A;
byte_10050ED4 = byte_1005063A;
byte_10050639 = byte_1005063A;
}
}
}
}
if ( !IsBadReadPtr(v18, 4u) )
{
v22 = *(_DWORD *)v18 + 580;
if ( !IsBadReadPtr((const void *)(*(_DWORD *)v18 + 580), 4u) )
{
v23 = (const void *)(*(_DWORD *)v22 + 40);
if ( !IsBadReadPtr(v23, 4u) )
{
v24 = (const void *)(*(_DWORD *)v23 + 2441);
if ( !IsBadReadPtr(v24, 4u) )
{
byte_1005063B = *(_BYTE *)v24;
byte_10050638 = byte_1005063B;
byte_10050ED4 = byte_1005063B;
byte_10050639 = byte_1005063B;
}
}
}
}
if ( !IsBadReadPtr(v18, 4u) )
{
v25 = (const void *)(*(_DWORD *)v18 + 580);
if ( !IsBadReadPtr(v25, 4u) )
{
v26 = (const void *)(*(_DWORD *)v25 + 48);
if ( !IsBadReadPtr(v26, 4u) )
{
v27 = (const void *)(*(_DWORD *)v26 + 2441);
if ( !IsBadReadPtr(v27, 4u) )
{
byte_10050ED4 = *(_BYTE *)v27;
byte_10050639 = byte_10050ED4;
}
}
}
}
v1 = GetModuleHandleA;
byte_10050F52 = byte_10050F52 == 0;
}
else
{
v17 = IsBadReadPtr;
}
if ( byte_10050F52 == 1 )
{
v28 = v1("PointBlank.exe") + 1686416;
if ( !v17(v28, 4u) )
{
v29 = *(_DWORD *)v28 + 580;
if ( !v17((const void *)(*(_DWORD *)v28 + 580), 4u) )
{
v30 = (const void *)(*(_DWORD *)v29 + 36);
if ( !v17(v30, 4u) )
{
v31 = (const void *)(*(_DWORD *)v30 + 2441);
if ( !v17(v31, 4u) )
*(_WORD *)v31 = *((_WORD *)v31 - 4) - 1;
}
}
}
if ( !v17(v28, 4u) )
{
v32 = *(_DWORD *)v28 + 580;
if ( !v17((const void *)(*(_DWORD *)v28 + 580), 4u) )
{
v33 = (const void *)(*(_DWORD *)v32 + 40);
if ( !v17(v33, 4u) )
{
v34 = (const void *)(*(_DWORD *)v33 + 2441);
if ( !v17(v34, 4u) )
*(_WORD *)v34 = *((_WORD *)v34 - 4) - 1;
}
}
}
if ( !v17(v28, 4u) )
{
v35 = (const void *)(*(_DWORD *)v28 + 580);
if ( !v17(v35, 4u) )
{
v36 = (const void *)(*(_DWORD *)v35 + 48);
if ( !v17(v36, 4u) )
{
v37 = (const void *)(*(_DWORD *)v36 + 2441);
if ( !v17(v37, 4u) )
*(_WORD *)v37 = *((_WORD *)v37 - 4) - 1;
}
}
}
}
if ( dword_10050F68 == 1 )
{
v38 = GetModuleHandleA("PointBlank.exe");
v39 = *((_DWORD *)v38 + 1686430);
v40 = v38 + 1686430;
v41 = 42 * *(_BYTE *)(v39 + 19992);
v42 = v39 + 19992;
v43 = v41 + 18245;
if ( !IsBadWritePtr(v38 + 1686430, 4u) && !IsBadWritePtr((LPVOID)(v43 + *(_DWORD *)v40), 4u) )
*(_DWORD *)(*(_DWORD *)v40 + v43) = 50;
v44 = 42 * *(_BYTE *)v42 + 18346;
if ( !IsBadWritePtr(v40, 4u) && !IsBadWritePtr((LPVOID)(v44 + *(_DWORD *)v40), 4u) )
*(_DWORD *)(v44 + *(_DWORD *)v40) = 65535;
}
if ( dword_10050F84 == 1 )
{
v45 = GetModuleHandleA("PointBlank.exe") + 1686430;
v46 = 1768;
do
{
if ( !IsBadWritePtr(v45, 4u) && !IsBadWritePtr((LPVOID)(v46 + *(_DWORD *)v45), 4u) )
*(_DWORD *)(v46 + *(_DWORD *)v45) = 601002023;
v46 += 344;
}
while ( v46 <= 7272 );
}
if ( dword_10050F84 == 2 )
{
v47 = GetModuleHandleA("PointBlank.exe") + 1686430;
v48 = 1768;
do
{
if ( !IsBadWritePtr(v47, 4u) && !IsBadWritePtr((LPVOID)(v48 + *(_DWORD *)v47), 4u) )
*(_DWORD *)(v48 + *(_DWORD *)v47) = 601002016;
v48 += 344;
}
while ( v48 <= 7272 );
}
if ( dword_10050F84 == 3 )
{
v49 = GetModuleHandleA("PointBlank.exe") + 1686430;
v50 = 1768;
do
{
if ( !IsBadWritePtr(v49, 4u) && !IsBadWritePtr((LPVOID)(v50 + *(_DWORD *)v49), 4u) )
*(_DWORD *)(v50 + *(_DWORD *)v49) = 601014004;
v50 += 344;
}
while ( v50 <= 7272 );
}
if ( dword_10050F84 == 4 )
{
v51 = GetModuleHandleA("PointBlank.exe") + 1686430;
v52 = 1768;
do
{
if ( !IsBadWritePtr(v51, 4u) && !IsBadWritePtr((LPVOID)(v52 + *(_DWORD *)v51), 4u) )
*(_DWORD *)(v52 + *(_DWORD *)v51) = 601014006;
v52 += 344;
}
while ( v52 <= 7272 );
}
if ( dword_10050F84 == 5 )
{
v53 = GetModuleHandleA("PointBlank.exe") + 1686430;
v54 = 1768;
do
{
if ( !IsBadWritePtr(v53, 4u) && !IsBadWritePtr((LPVOID)(v54 + *(_DWORD *)v53), 4u) )
*(_DWORD *)(v54 + *(_DWORD *)v53) = 601002016;
v54 += 344;
}
while ( v54 <= 7272 );
}
if ( dword_10050F84 == 6 )
{
v55 = GetModuleHandleA("PointBlank.exe") + 1686430;
v56 = 1768;
do
{
if ( !IsBadWritePtr(v55, 4u) && !IsBadWritePtr((LPVOID)(v56 + *(_DWORD *)v55), 4u) )
*(_DWORD *)(v56 + *(_DWORD *)v55) = 601002007;
v56 += 344;
}
while ( v56 <= 7272 );
}
if ( dword_10050F84 == 7 )
{
v57 = GetModuleHandleA("PointBlank.exe") + 1686430;
v58 = 1768;
do
{
if ( !IsBadWritePtr(v57, 4u) && !IsBadWritePtr((LPVOID)(v58 + *(_DWORD *)v57), 4u) )
*(_DWORD *)(v58 + *(_DWORD *)v57) = 601002026;
v58 += 344;
}
while ( v58 <= 7272 );
}
if ( dword_10050F6C == 1 )
{
v59 = 1772;
do
{
v60 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v60, 4u) && !IsBadWritePtr((LPVOID)(v59 + *(_DWORD *)v60), 4u) )
*(_DWORD *)(v59 + *(_DWORD *)v60) = 702001014;
v59 += 344;
}
while ( v59 <= 7276 );
Sleep(0);
}
if ( dword_10050F6C == 2 )
{
v61 = 1772;
do
{
v62 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v62, 4u) && !IsBadWritePtr((LPVOID)(v61 + *(_DWORD *)v62), 4u) )
*(_DWORD *)(v61 + *(_DWORD *)v62) = 702001007;
v61 += 344;
}
while ( v61 <= 7276 );
Sleep(0);
}
if ( dword_10050F6C == 3 )
{
v63 = 1772;
do
{
v64 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v64, 4u) && !IsBadWritePtr((LPVOID)(v63 + *(_DWORD *)v64), 4u) )
*(_DWORD *)(v63 + *(_DWORD *)v64) = 702001017;
v63 += 344;
}
while ( v63 <= 7276 );
Sleep(0);
}
if ( dword_10050F6C == 4 )
{
v65 = 1772;
do
{
v66 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v66, 4u) && !IsBadWritePtr((LPVOID)(v65 + *(_DWORD *)v66), 4u) )
*(_DWORD *)(v65 + *(_DWORD *)v66) = 702001018;
v65 += 344;
}
while ( v65 <= 7276 );
Sleep(0);
}
if ( dword_10050F6C == 5 )
{
v67 = 1772;
do
{
v68 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v68, 4u) && !IsBadWritePtr((LPVOID)(v67 + *(_DWORD *)v68), 4u) )
*(_DWORD *)(v67 + *(_DWORD *)v68) = 702023003;
v67 += 344;
}
while ( v67 <= 7276 );
Sleep(0);
}
if ( dword_10050F6C == 6 )
{
v69 = 1772;
do
{
v70 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v70, 4u) && !IsBadWritePtr((LPVOID)(v69 + *(_DWORD *)v70), 4u) )
*(_DWORD *)(v69 + *(_DWORD *)v70) = 702023005;
v69 += 344;
}
while ( v69 <= 7276 );
Sleep(0);
}
if ( dword_10050F6C == 7 )
{
v71 = 1772;
do
{
v72 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v72, 4u) && !IsBadWritePtr((LPVOID)(v71 + *(_DWORD *)v72), 4u) )
*(_DWORD *)(v71 + *(_DWORD *)v72) = 702001023;
v71 += 344;
}
while ( v71 <= 7276 );
Sleep(0);
}
if ( dword_10050F70 == 1 )
{
v73 = 1780;
do
{
v74 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v74, 4u) && !IsBadWritePtr((LPVOID)(v73 + *(_DWORD *)v74), 4u) )
*(_DWORD *)(v73 + *(_DWORD *)v74) = 904007003;
v73 += 344;
}
while ( v73 <= 7284 );
Sleep(0);
}
if ( dword_10050F70 == 2 )
{
v75 = 1780;
do
{
v76 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v76, 4u) && !IsBadWritePtr((LPVOID)(v75 + *(_DWORD *)v76), 4u) )
*(_DWORD *)(v75 + *(_DWORD *)v76) = 904007011;
v75 += 344;
}
while ( v75 <= 7284 );
Sleep(0);
}
if ( dword_10050F70 == 3 )
{
v77 = 1780;
do
{
v78 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v78, 4u) && !IsBadWritePtr((LPVOID)(v77 + *(_DWORD *)v78), 4u) )
*(_DWORD *)(v77 + *(_DWORD *)v78) = 904007005;
v77 += 344;
}
while ( v77 <= 7284 );
Sleep(0);
}
if ( dword_10050F74 == 1 )
{
v79 = 1776;
do
{
v80 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v80, 4u) && !IsBadWritePtr((LPVOID)(v79 + *(_DWORD *)v80), 4u) )
*(_DWORD *)(v79 + *(_DWORD *)v80) = 803007006;
v79 += 344;
}
while ( v79 <= 7280 );
Sleep(0);
}
if ( dword_10050F74 == 2 )
{
v81 = 1776;
do
{
v82 = GetModuleHandleA("PointBlank.exe") + 1686430;
if ( !IsBadWritePtr(v82, 4u) && !IsBadWritePtr((LPVOID)(v81 + *(_DWORD *)v82), 4u) )
*(_DWORD *)(v81 + *(_DWORD *)v82) = 803007009;
v81 += 344;
}
while ( v81 <= 7280 );
Sleep(0);
}
if ( dword_10050F78 == 1 )
{
v83 = GetModuleHandleA("PointBlank.exe") + 1686430;
v84 = 1736;
do
{
if ( !IsBadWritePtr(v83, 4u) && !IsBadWritePtr((LPVOID)(v84 + *(_DWORD *)v83), 4u) )
*(_DWORD *)(v84 + *(_DWORD *)v83) = 1001001009;
v84 += 344;
}
while ( v84 <= 7240 );
Sleep(0);
}
if ( dword_10050F7C == 1 )
{
v85 = GetModuleHandleA("PointBlank.exe") + 1686430;
v86 = 1732;
do
{
if ( !IsBadWritePtr(v85, 4u) && !IsBadWritePtr((LPVOID)(v86 + *(_DWORD *)v85), 4u) )
*(_DWORD *)(v86 + *(_DWORD *)v85) = 1001002010;
v86 += 344;
}
while ( v86 <= 7236 );
Sleep(0);
}
v87 = GetModuleHandleA("PointBlank.exe") + 1686430;
v88 = 1740;
do
{
if ( !IsBadWritePtr(v87, 4u) && !IsBadWritePtr((LPVOID)(v88 + *(_DWORD *)v87), 4u) )
*(_DWORD *)(v88 + *(_DWORD *)v87) = 1102003007;
v88 += 344;
}
while ( v88 <= 7244 );
if ( GetAsyncKeyState(35) & 1 )
{
v89 = GetModuleHandleA("i3FrameWorkDx.dll");
if ( v89 )
{
v90 = (char *)v89 + 88637;
VirtualProtect((char *)v89 + 88637, 1u, 0x40u, &flOldProtect);
memmove(v90, "F", 1u);
VirtualProtect(v90, 1u, flOldProtect, &flOldProtect);
}
}
if ( GetAsyncKeyState(36) & 1 )
{
v91 = GetModuleHandleA("i3FrameWorkDx.dll");
if ( v91 )
{
v92 = (char *)v91 + 88637;
VirtualProtect((char *)v91 + 88637, 1u, 0x40u, &flOldProtect);
memmove(v92, "+", 1u);
VirtualProtect(v92, 1u, flOldProtect, &flOldProtect);
}
}
}
}