int __cdecl main(int argc, const char **argv, const char **envp)
{
void *v3; // esp@1
unsigned int v4; // eax@11
const string *v5; // ST4C_4@11
GDeliveryServer *v6; // eax@13
const string *v7; // ST3C_4@13
const char *v8; // eax@13
const char *v9; // eax@15
const char *v10; // eax@17
GDeliveryServer *v11; // eax@19
const string *v12; // ST3C_4@19
const char *v13; // eax@19
const char *v14; // eax@21
GWebTradeClient *v15; // eax@23
const string *v16; // ST3C_4@23
const char *v17; // eax@23
bool v18; // ST15B_1@23
SNSClient *v19; // eax@25
const string *v20; // ST3C_4@25
const char *v21; // eax@25
bool v22; // ST153_1@25
GameTalkClient *v23; // eax@27
const string *v24; // ST3C_4@27
const char *v25; // eax@27
bool v26; // ST14B_1@27
const string *v27; // ST44_4@31
const string *v28; // ST30_4@31
const char *v29; // ST40_4@31
const string *v30; // ST2C_4@31
const char *v31; // ST34_4@31
Matcher *v32; // eax@31
const char *v33; // ST38_4@31
int v34; // ST34_4@32
int v35; // eax@32
int v36; // eax@32
StockExchange *v37; // eax@37
ReferenceManager *v38; // eax@40
RewardManager *v39; // eax@43
GDeliveryServer *v40; // ST138_4@45
const string *v41; // ST3C_4@45
const char *v42; // eax@45
const string *v43; // ST3C_4@45
const char *v44; // eax@45
int v45; // eax@45
GDeliveryServer *v46; // ST12C_4@45
const string *v47; // ST3C_4@45
const char *v48; // eax@45
GDeliveryServer *v49; // ST124_4@45
const string *v50; // ST3C_4@45
const char *v51; // eax@45
GDeliveryServer *v52; // ST11C_4@45
const string *v53; // ST3C_4@45
const char *v54; // eax@45
int v55; // ST38_4@45
int v56; // eax@45
int v57; // eax@45
GDeliveryServer *v58; // ST114_4@45
const string *v59; // ST3C_4@45
const char *v60; // eax@45
const string *v61; // ST4C_4@45
GDeliveryServer *v62; // ebx@47
const char *v63; // eax@47
const string *v64; // ST3C_4@48
const char *v65; // eax@48
int v66; // ST104_4@48
const string *v67; // ST4C_4@50
GDeliveryServer *v68; // ebx@51
const char *v69; // eax@51
const string *v70; // ST3C_4@52
const char *v71; // eax@52
int cds; // ST18C_4@52
UserContainer *v73; // eax@54
UserContainer *v74; // eax@54
size_t v75; // eax@54
const string *v76; // ST4C_4@54
UserContainer *v77; // eax@54
const string *v78; // ST3C_4@54
const char *v79; // eax@54
int v80; // eax@57
int v81; // ST34_4@61
int v82; // ST14_4@61
int v83; // eax@61
int v84; // eax@61
int v85; // eax@61
int v86; // eax@61
int v87; // ST48_4@62
int v88; // ST44_4@62
GameTalkManager *v89; // eax@62
const string *v90; // ST3C_4@64
const char *v91; // eax@64
int v92; // eax@64
const string *v93; // ST4C_4@64
size_t v94; // ST38_4@64
const void *v95; // eax@64
const string *v96; // ST3C_4@64
const char *v97; // eax@64
int v98; // STE0_4@64
GProviderServer *v99; // ST188_4@67
const string *v100; // ST3C_4@67
const char *v101; // eax@67
int v102; // eax@67
const string *v103; // ST3C_4@67
const char *v104; // eax@67
int v105; // eax@67
GAntiCheatClient *v106; // ST188_4@67
const string *v107; // ST3C_4@67
const char *v108; // eax@67
int v109; // eax@67
Protocol::Manager *v110; // ST188_4@68
KeepAliveTask *v111; // STD0_4@68
GWebTradeClient *v112; // ST188_4@70
const string *v113; // ST3C_4@70
const char *v114; // eax@70
int v115; // eax@70
GameTalkClient *v116; // ST188_4@72
const string *v117; // ST3C_4@72
const char *v118; // eax@72
int v119; // eax@72
SNSClient *v120; // ST188_4@74
const string *v121; // ST3C_4@74
const char *v122; // eax@74
int v123; // eax@74
GDeliveryServer *v124; // eax@75
const string *v125; // ST3C_4@75
const char *v126; // eax@75
int v127; // ST188_4@75
GDeliveryServer *v128; // eax@76
BattleManager *v129; // eax@78
GDeliveryServer *v130; // eax@81
AuctionMarket *v131; // eax@83
WebTradeMarket *v132; // eax@87
SysAuctionManager *v133; // eax@91
FactionFortressMan *v134; // eax@95
ForceManager *v135; // eax@98
KingElection *v136; // eax@102
PShopMarket *v137; // eax@106
PlayerProfileMan *v138; // eax@110
AutoTeamMan *v139; // eax@114
UniqueDataServer *v140; // eax@118
TankBattleManager *v141; // eax@122
bool v142; // ST44_1@125
FriendextinfoManager *v143; // eax@125
CentralDeliveryServer *v144; // ST18C_4@126
const string *v145; // ST3C_4@126
const char *v146; // eax@126
int v147; // eax@126
const string *v148; // ST4C_4@126
LoadExchangeTask *v149; // STAC_4@130
CrsSvrCheckTimer *v150; // STA0_4@130
CentralDeliveryClient *v151; // eax@131
const string *v152; // ST3C_4@131
const char *v153; // eax@131
bool v154; // ST93_1@131
const string *v155; // ST3C_4@135
const char *v156; // eax@135
int v157; // eax@135
GameDBClient *v158; // ST184_4@137
const string *v159; // ST3C_4@137
const char *v160; // eax@137
int v161; // eax@137
GFactionClient *v162; // ST184_4@137
const string *v163; // ST3C_4@137
const char *v164; // eax@137
int v165; // eax@137
CountryBattleMan *v166; // eax@140
Runnable *v167; // eax@143
const char *v168; // eax@143
RemoveForbidden *v169; // ST74_4@143
const char *v170; // eax@143
int v171; // ST184_4@143
Runnable *v172; // eax@145
const char *v173; // eax@145
int v174; // ST184_4@145
Runnable *v175; // eax@147
StatusAnnouncer *v176; // ST58_4@147
BillingAgent *v177; // eax@147
int v179; // [sp+Ch] [bp-24Ch]@145
signed int v180; // [sp+14h] [bp-244h]@143
size_t v181; // [sp+A8h] [bp-1B0h]@52
char arrange_country_by_zoneid; // [sp+133h] [bp-125h]@137
int manager_1; // [sp+134h] [bp-124h]@126
GameDBClient *manager_1a; // [sp+134h] [bp-124h]@132
int manager_0; // [sp+138h] [bp-120h]@54
GAuthClient *manager_0a; // [sp+138h] [bp-120h]@64
string zone_list_str; // [sp+140h] [bp-118h]@31
string max_name_len; // [sp+150h] [bp-108h]@31
string ip_list_str; // [sp+160h] [bp-F8h]@31
string p_list_str; // [sp+170h] [bp-E8h]@31
string v191; // [sp+180h] [bp-D8h]@31
string v192; // [sp+190h] [bp-C8h]@31
string v193; // [sp+1A0h] [bp-B8h]@31
int ret; // [sp+1B0h] [bp-A8h]@31
int tankbattle; // [sp+1B4h] [bp-A4h]@21
int recall; // [sp+1B8h] [bp-A0h]@19
int kingelection; // [sp+1BCh] [bp-9Ch]@17
char v198; // [sp+1C0h] [bp-98h]@15
int countrybattle; // [sp+1DCh] [bp-7Ch]@15
string v200; // [sp+1E0h] [bp-78h]@13
int battle; // [sp+1F8h] [bp-60h]@13
bool is_central; // [sp+1FFh] [bp-59h]@13
string section; // [sp+200h] [bp-58h]@11
string key; // [sp+210h] [bp-48h]@11
string v205; // [sp+220h] [bp-38h]@11
string central_ds; // [sp+230h] [bp-28h]@11
GDeliveryServer *manager; // [sp+244h] [bp-14h]@11
Conf *conf; // [sp+248h] [bp-10h]@11
int opt; // [sp+24Ch] [bp-Ch]@1
v3 = alloca(0);
opt = getopt(argc, (char *const *)argv, "hv");
if ( opt != -1 )
{
if ( opt == 118 )
{
printf("Compiled By developer, Nov 15 2013 10:58:15\n");
printf("%s\n", "CNET 1.97");
exit(0);
}
usage((char *)*argv);
exit(0);
}
if ( optind >= argc || access(argv[optind], 4) == -1 )
{
usage((char *)*argv);
exit(-1);
}
v4 = time(0);
srand(v4);
conf = GNET::Conf::GetInstance(argv[optind]);
manager = GNET::GDeliveryServer::GetInstance();
std::allocator<char>::allocator(&key);
std::string::string(&v205, "is_central_ds", &key);
(*(void (__cdecl **)(string *, GDeliveryServer *))((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager
+ 14))(
§ion,
manager);
GNET::Conf::find(¢ral_ds, conf, §ion, v5);
std::string::~string(§ion);
std::string::~string(&v205);
std::allocator<char>::~allocator(&key);
if ( std:
perator==<char,std::char_traits<char>,std::allocator<char>>(¢ral_ds, "true") )
GNET::GDeliveryServer::SetCentralDS(manager, 1);
is_central = GNET::GDeliveryServer::IsCentralDS(manager);
std::allocator<char>::allocator(&v205);
std::string::string(&key, "battlefield", &v205);
v6 = GNET::GDeliveryServer::GetInstance();
(*(void (__cdecl **)(string *, GDeliveryServer *))((void (__cdecl **)(_DWORD, _DWORD))v6->baseclass_0._vptr.Manager
+ 14))(
&v200,
v6);
GNET::Conf::find(§ion, conf, &v200, v7);
v8 = (const char *)std::string::c_str(§ion);
battle = atoi(v8);
std::string::~string(§ion);
std::string::~string(&v200);
std::string::~string(&key);
std::allocator<char>::~allocator(&v205);
if ( !battle )
GNET:
isabledSystem::SetDisabled(2);
std::allocator<char>::allocator(&key);
std::string::string(§ion, "is_countrybattle_open", &key);
std::allocator<char>::allocator(&v198);
std::string::string(&v205, "COUNTRYBATTLE", &v198);
GNET::Conf::find(&v200, conf, &v205, §ion);
v9 = (const char *)std::string::c_str(&v200);
countrybattle = atoi(v9);
std::string::~string(&v200);
std::string::~string(&v205);
std::allocator<char>::~allocator(&v198);
std::string::~string(§ion);
std::allocator<char>::~allocator(&key);
if ( !countrybattle )
GNET:
isabledSystem::SetDisabled(8);
std::allocator<char>::allocator(§ion);
std::string::string(&key, "kingelection_open", §ion);
std::allocator<char>::allocator(&v198);
std::string::string(&v200, "COUNTRYBATTLE", &v198);
GNET::Conf::find(&v205, conf, &v200, &key);
v10 = (const char *)std::string::c_str(&v205);
kingelection = atoi(v10);
std::string::~string(&v205);
std::string::~string(&v200);
std::allocator<char>::~allocator(&v198);
std::string::~string(&key);
std::allocator<char>::~allocator(§ion);
if ( !kingelection )
GNET:
isabledSystem::SetDisabled(12);
std::allocator<char>::allocator(§ion);
std::string::string(&key, "recalloldplayer", §ion);
v11 = GNET::GDeliveryServer::GetInstance();
(*(void (__cdecl **)(string *, GDeliveryServer *))((void (__cdecl **)(_DWORD, _DWORD))v11->baseclass_0._vptr.Manager
+ 14))(
&v200,
v11);
GNET::Conf::find(&v205, conf, &v200, v12);
v13 = (const char *)std::string::c_str(&v205);
recall = atoi(v13);
std::string::~string(&v205);
std::string::~string(&v200);
std::string::~string(&key);
std::allocator<char>::~allocator(§ion);
if ( !recall )
GNET:
isabledSystem::SetDisabled(11);
std::allocator<char>::allocator(§ion);
std::string::string(&key, "is_tankbattle_open", §ion);
std::allocator<char>::allocator(&v198);
std::string::string(&v200, "TANKBATTLE", &v198);
GNET::Conf::find(&v205, conf, &v200, &key);
v14 = (const char *)std::string::c_str(&v205);
tankbattle = atoi(v14);
std::string::~string(&v205);
std::string::~string(&v200);
std::allocator<char>::~allocator(&v198);
std::string::~string(&key);
std::allocator<char>::~allocator(§ion);
if ( !tankbattle )
GNET:
isabledSystem::SetDisabled(17);
std::allocator<char>::allocator(§ion);
std::string::string(&key, "address", §ion);
v15 = GNET::GWebTradeClient::GetInstance();
(*(void (__cdecl **)(string *, GWebTradeClient *))((void (__cdecl **)(_DWORD, _DWORD))v15->baseclass_0._vptr.Manager
+ 14))(
&v200,
v15);
GNET::Conf::find(&v205, conf, &v200, v16);
v17 = (const char *)std::string::c_str(&v205);
v18 = !CheckIPAddress(v17);
std::string::~string(&v205);
std::string::~string(&v200);
std::string::~string(&key);
std::allocator<char>::~allocator(§ion);
if ( v18 )
GNET:
isabledSystem::SetDisabled(4);
std::allocator<char>::allocator(§ion);
std::string::string(&key, "address", §ion);
v19 = GNET::SNSClient::GetInstance();
(*(void (__cdecl **)(string *, SNSClient *))((void (__cdecl **)(_DWORD, _DWORD))v19->baseclass_0._vptr.Manager + 14))(
&v200,
v19);
GNET::Conf::find(&v205, conf, &v200, v20);
v21 = (const char *)std::string::c_str(&v205);
v22 = !CheckIPAddress(v21);
std::string::~string(&v205);
std::string::~string(&v200);
std::string::~string(&key);
std::allocator<char>::~allocator(§ion);
if ( v22 )
GNET:
isabledSystem::SetDisabled(6);
std::allocator<char>::allocator(§ion);
std::string::string(&key, "address", §ion);
v23 = GNET::GameTalkClient::GetInstance();
(*(void (__cdecl **)(string *, GameTalkClient *))((void (__cdecl **)(_DWORD, _DWORD))v23->baseclass_0._vptr.Manager
+ 14))(
&v200,
v23);
GNET::Conf::find(&v205, conf, &v200, v24);
v25 = (const char *)std::string::c_str(&v205);
v26 = !CheckIPAddress(v25);
std::string::~string(&v205);
std::string::~string(&v200);
std::string::~string(&key);
std::allocator<char>::~allocator(§ion);
if ( v26 )
GNET:
isabledSystem::SetDisabled(5);
if ( is_central )
{
GNET:
isabledSystem::SetDisabled(0);
GNET:
isabledSystem::SetDisabled(1);
GNET:
isabledSystem::SetDisabled(2);
GNET:
isabledSystem::SetDisabled(3);
GNET:
isabledSystem::SetDisabled(4);
GNET:
isabledSystem::SetDisabled(5);
GNET:
isabledSystem::SetDisabled(6);
GNET:
isabledSystem::SetDisabled(7);
GNET:
isabledSystem::SetDisabled(9);
GNET:
isabledSystem::SetDisabled(10);
GNET:
isabledSystem::SetDisabled(11);
GNET:
isabledSystem::SetDisabled(12);
GNET:
isabledSystem::SetDisabled(13);
GNET:
isabledSystem::SetDisabled(14);
GNET:
isabledSystem::SetDisabled(15);
GNET:
isabledSystem::SetDisabled(16);
}
std::allocator<char>::allocator(§ion);
std::string::string(&key, "table_charset", §ion);
(*(void (__cdecl **)(string *, GDeliveryServer *))((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager
+ 14))(
&v200,
manager);
GNET::Conf::find(&v205, conf, &v200, v27);
std::string::c_str(&v205);
std::allocator<char>::allocator(&v192);
std::string::string(&v193, "name_charset", &v192);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&v191, manager);
GNET::Conf::find((string *)&v198, conf, &v191, v28);
v29 = (const char *)std::string::c_str(&v198);
std::allocator<char>::allocator(&max_name_len);
std::string::string(&ip_list_str, "table_name", &max_name_len);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&zone_list_str, manager);
GNET::Conf::find(&p_list_str, conf, &zone_list_str, v30);
v31 = (const char *)std::string::c_str(&p_list_str);
v32 = GNET::Matcher::GetInstance();
ret = GNET::Matcher::Load(v32, v31, v33, "UCS2", v29);
std::string::~string(&p_list_str);
std::string::~string(&zone_list_str);
std::string::~string(&ip_list_str);
std::allocator<char>::~allocator(&max_name_len);
std::string::~string(&v198);
std::string::~string(&v191);
std::string::~string(&v193);
std::allocator<char>::~allocator(&v192);
std::string::~string(&v205);
std::string::~string(&v200);
std::string::~string(&key);
std::allocator<char>::~allocator(§ion);
if ( ret )
{
v34 = ret;
v35 = std:
perator<<<std::char_traits<char>>(
&std::cerr,
"Cannot load table of sensitive words. check file ./filters, ret=");
v36 = std:
stream:
perator<<(v35, v34);
std:
stream:
perator<<(v36, &std::endl<char,std::char_traits<char>>);
exit(-1);
}
if ( DELIVERY_TOOL::OnFilterMode(argc, (char **)argv) )
exit(-1);
GNET::IntervalTimer::StartTimer(0x7A120u);
if ( !GNET:
isabledSystem::GetDisabled(1) )
{
v37 = GNET::StockExchange::Instance();
if ( !GNET::StockExchange::Initialize(v37) )
exit(-1);
}
if ( !GNET:
isabledSystem::GetDisabled(9) )
{
v38 = GNET::ReferenceManager::GetInstance();
if ( !GNET::ReferenceManager::Initialize(v38) )
exit(-1);
}
if ( !GNET:
isabledSystem::GetDisabled(10) )
{
v39 = GNET::RewardManager::GetInstance();
if ( !GNET::RewardManager::Initialize(v39) )
exit(-1);
}
GNET::Log::setprogname("gdeliveryd");
v40 = manager;
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "freeaid", &ip_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&p_list_str, manager);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v41);
v42 = (const char *)std::string::c_str(&zone_list_str);
v40->freeaid = atoi(v42);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&p_list_str, manager);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v43);
v44 = (const char *)std::string::c_str(&zone_list_str);
v45 = atoi(v44);
GNET::GDeliveryServer::SetAccumulate(manager, v45);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
v46 = manager;
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "zoneid", &ip_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&p_list_str, manager);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v47);
v48 = (const char *)std::string::c_str(&zone_list_str);
v46->zoneid = atoi(v48);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
v49 = manager;
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "aid", &ip_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&p_list_str, manager);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v50);
v51 = (const char *)std::string::c_str(&zone_list_str);
v49->aid = atoi(v51);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
v52 = manager;
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "district_id", &ip_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&p_list_str, manager);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v53);
v54 = (const char *)std::string::c_str(&zone_list_str);
v52->district_id = atoi(v54);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
v55 = manager->district_id;
v56 = std:
perator<<<std::char_traits<char>>(&std::cerr, "District id is ");
v57 = std:
stream:
perator<<(v56, v55);
std:
stream:
perator<<(v57, &std::endl<char,std::char_traits<char>>);
v58 = manager;
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "freecreatime", &ip_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&p_list_str, manager);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v59);
v60 = (const char *)std::string::c_str(&zone_list_str);
v58->freecreatime = atoi(v60);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "challenge_algo", &ip_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&p_list_str, manager);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v61);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
if ( std::string::length(&zone_list_str) )
{
v62 = manager;
v63 = (const char *)std::string::c_str(&zone_list_str);
v62->challenge_algo = atoi(v63);
}
else
{
manager->challenge_algo = 0;
}
std::allocator<char>::allocator(&p_list_str);
std::string::string(&ip_list_str, "token_login_support", &p_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&v191, manager);
GNET::Conf::find(&max_name_len, conf, &v191, v64);
v65 = (const char *)std::string::c_str(&max_name_len);
v66 = strcmp(v65, "true");
std::string::~string(&max_name_len);
std::string::~string(&v191);
std::string::~string(&ip_list_str);
std::allocator<char>::~allocator(&p_list_str);
if ( !v66 )
manager->token_login_support = 1;
std::allocator<char>::allocator(&p_list_str);
std::string::string(&ip_list_str, "max_name_len", &p_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&v191, manager);
GNET::Conf::find(&max_name_len, conf, &v191, v67);
std::string::~string(&v191);
std::string::~string(&ip_list_str);
std::allocator<char>::~allocator(&p_list_str);
if ( !(unsigned __int8)std::string::empty(&max_name_len) )
{
v68 = manager;
v69 = (const char *)std::string::c_str(&max_name_len);
v68->max_name_len = atoi(v69);
}
std::allocator<char>::allocator(&v191);
std::string::string(&p_list_str, "max_player_num", &v191);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&v192, manager);
GNET::Conf::find(&ip_list_str, conf, &v192, v70);
v71 = (const char *)std::string::c_str(&ip_list_str);
cds = atoi(v71);
std::string::~string(&ip_list_str);
std::string::~string(&v192);
std::string::~string(&p_list_str);
std::allocator<char>::~allocator(&v191);
v181 = cds;
if ( cds < 5000 )
v181 = 5000;
v73 = GNET::UserContainer::GetInstance();
GNET::UserContainer::SetPlayerLimit(v73, v181, v181);
v74 = GNET::UserContainer::GetInstance();
v75 = GNET::UserContainer::GetPlayerLimit(v74);
GNET::Log::trace("gdeliveryd::Max player allowed is %d\n", v75);
std::allocator<char>::allocator(&v191);
std::string::string(&p_list_str, "lan_ip_list", &v191);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&v192, manager);
GNET::Conf::find(&ip_list_str, conf, &v192, v76);
std::string::~string(&v192);
std::string::~string(&p_list_str);
std::allocator<char>::~allocator(&v191);
std::string::string(&p_list_str, &ip_list_str);
v77 = GNET::UserContainer::GetInstance();
GNET::UserContainer::InitLanIpList(v77, &p_list_str);
std::string::~string(&p_list_str);
std::allocator<char>::allocator(&v192);
std::string::string(&v191, "debugmode", &v192);
(*((void (__cdecl **)(_DWORD, _DWORD))manager->baseclass_0._vptr.Manager + 14))(&v193, manager);
GNET::Conf::find(&p_list_str, conf, &v193, v78);
v79 = (const char *)std::string::c_str(&p_list_str);
manager_0 = atoi(v79);
std::string::~string(&p_list_str);
std::string::~string(&v193);
std::string::~string(&v191);
std::allocator<char>::~allocator(&v192);
if ( manager_0 )
GNET::GDeliveryServer::SetDebugmode(manager, manager_0);
if ( !manager->zoneid )
{
v80 = std:
perator<<<std::char_traits<char>>(&std::cerr, "Invalid zone id(0). Check .conf file.");
std:
stream:
perator<<(v80, &std::endl<char,std::char_traits<char>>);
exit(-1);
}
if ( GNET::GDeliveryServer::IsFreeZone(manager) )
GNET::ServerAttr::SetFreeZone(&manager->serverAttr, 1u);
v81 = manager->aid;
v82 = manager->zoneid;
v83 = std:
perator<<<std::char_traits<char>>(&std::cout, "zoneid=");
v84 = std:
stream:
perator<<(v83, v82);
v85 = std:
perator<<<std::char_traits<char>>(v84, " aid=");
v86 = std:
stream:
perator<<(v85, v81);
std:
stream:
perator<<(v86, &std::endl<char,std::char_traits<char>>);
GNET:
rotocol::Server(&manager->baseclass_0);
if ( !GNET:
isabledSystem::GetDisabled(5) )
{
v87 = manager->zoneid;
v88 = manager->aid;
v89 = GNET::GameTalkManager::GetInstance();
GNET::GameTalkManager::OnStartUp(v89, v88, v87);
}
std::string::~string(&ip_list_str);
std::string::~string(&max_name_len);
std::string::~string(&zone_list_str);
if ( !is_central )
{
manager_0a = GNET::GAuthClient::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, GAuthClient *))((void (__cdecl **)(_DWORD, _DWORD))manager_0a->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
manager_0a);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v90);
v91 = (const char *)std::string::c_str(&zone_list_str);
v92 = atoi(v91);
GNET::GAuthClient::SetAccumulate(manager_0a, v92);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "shared_key", &ip_list_str);
(*(void (__cdecl **)(string *, GAuthClient *))((void (__cdecl **)(_DWORD, _DWORD))manager_0a->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
manager_0a);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v93);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
v94 = std::string::size(&zone_list_str);
v95 = (const void *)std::string::c_str(&zone_list_str);
GNET::Octets::Octets((Octets *const )&max_name_len, v95, v94);
GNET::Octets:
perator=(&manager_0a->shared_key, (const Octets *const )&max_name_len);
GNET::Octets::~Octets((Octets *const )&max_name_len);
std::allocator<char>::allocator(&p_list_str);
std::string::string(&ip_list_str, "au_cert", &p_list_str);
(*((void (__cdecl **)(_DWORD, _DWORD))manager_0a->baseclass_0._vptr.Manager + 14))(&v191, manager_0a);
GNET::Conf::find(&max_name_len, conf, &v191, v96);
v97 = (const char *)std::string::c_str(&max_name_len);
v98 = strcmp(v97, "false");
std::string::~string(&max_name_len);
std::string::~string(&v191);
std::string::~string(&ip_list_str);
std::allocator<char>::~allocator(&p_list_str);
if ( !v98 )
manager_0a->au_cert = 0;
GNET:
rotocol::Client(&manager_0a->baseclass_0);
std::string::~string(&zone_list_str);
}
v99 = GNET::GProviderServer::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, GProviderServer *))((void (__cdecl **)(_DWORD, _DWORD))v99->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v99);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v100);
v101 = (const char *)std::string::c_str(&zone_list_str);
v102 = atoi(v101);
GNET::GProviderServer::SetAccumulate(v99, v102);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "id", &ip_list_str);
(*(void (__cdecl **)(string *, GProviderServer *))((void (__cdecl **)(_DWORD, _DWORD))v99->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v99);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v103);
v104 = (const char *)std::string::c_str(&zone_list_str);
v105 = atoi(v104);
GNET::GProviderServer::SetProviderServerID(v99, v105);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
GNET:
rotocol::Server(&v99->baseclass_0);
v106 = GNET::GAntiCheatClient::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, GAntiCheatClient *))((void (__cdecl **)(_DWORD, _DWORD))v106->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v106);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v107);
v108 = (const char *)std::string::c_str(&zone_list_str);
v109 = atoi(v108);
GNET::GAntiCheatClient::SetAccumulate(v106, v109);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
GNET:
rotocol::Client(&v106->baseclass_0);
if ( !is_central )
{
v110 = (Protocol::Manager *)GNET::UniqueNameClient::GetInstance();
GNET:
rotocol::Client(v110);
v111 = (KeepAliveTask *)operator new(0xCu);
GNET::KeepAliveTask::KeepAliveTask(v111, 0x1Eu, 1u);
GNET::Thread::HouseKeeper::AddTimerTask(&v111->baseclass_0, 30);
}
if ( !GNET:
isabledSystem::GetDisabled(4) )
{
v112 = GNET::GWebTradeClient::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, GWebTradeClient *))((void (__cdecl **)(_DWORD, _DWORD))v112->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v112);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v113);
v114 = (const char *)std::string::c_str(&zone_list_str);
v115 = atoi(v114);
GNET::GWebTradeClient::SetAccumulate(v112, v115);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
GNET:
rotocol::Client(&v112->baseclass_0);
}
if ( !GNET:
isabledSystem::GetDisabled(5) )
{
v116 = GNET::GameTalkClient::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, GameTalkClient *))((void (__cdecl **)(_DWORD, _DWORD))v116->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v116);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v117);
v118 = (const char *)std::string::c_str(&zone_list_str);
v119 = atoi(v118);
GNET::GameTalkClient::SetAccumulate(v116, v119);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
GNET:
rotocol::Client(&v116->baseclass_0);
}
if ( !GNET:
isabledSystem::GetDisabled(6) )
{
v120 = GNET::SNSClient::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, SNSClient *))((void (__cdecl **)(_DWORD, _DWORD))v120->baseclass_0._vptr.Manager + 14))(
&p_list_str,
v120);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v121);
v122 = (const char *)std::string::c_str(&zone_list_str);
v123 = atoi(v122);
GNET::SNSClient::SetAccumulate(v120, v123);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
GNET:
rotocol::Client(&v120->baseclass_0);
}
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "pvp", &ip_list_str);
v124 = GNET::GDeliveryServer::GetInstance();
(*(void (__cdecl **)(string *, GDeliveryServer *))((void (__cdecl **)(_DWORD, _DWORD))v124->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v124);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v125);
v126 = (const char *)std::string::c_str(&zone_list_str);
v127 = atoi(v126);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
if ( v127 )
{
v128 = GNET::GDeliveryServer::GetInstance();
GNET::ServerAttr::SetPVP(&v128->serverAttr, 1u);
GNET::Octets::Octets((Octets *const )&zone_list_str, 1u);
GNET::GameAttrMap:
ut(0xD7u, (Octets *)&zone_list_str);
GNET::Octets::~Octets((Octets *const )&zone_list_str);
}
if ( !GNET:
isabledSystem::GetDisabled(2) )
{
v129 = GNET::BattleManager::GetInstance();
if ( !GNET::BattleManager::Initialize(v129) )
{
GNET::Log::log(3, "Fatal: Initialize domain data failed.");
exit(1);
}
v130 = GNET::GDeliveryServer::GetInstance();
GNET::ServerAttr::SetBattle(&v130->serverAttr, 1u);
}
if ( !GNET:
isabledSystem::GetDisabled(0) )
{
v131 = GNET::AuctionMarket::GetInstance();
if ( !GNET::AuctionMarket::Initialize(v131) )
{
GNET::Log::log(3, "Fatal: Initialize auction category data failed.");
exit(1);
}
}
if ( !GNET:
isabledSystem::GetDisabled(4) )
{
v132 = GNET::WebTradeMarket::GetInstance();
if ( !GNET::WebTradeMarket::Initialize(v132) )
{
GNET::Log::log(3, "Fatal: Initialize webtrade market failed.");
exit(1);
}
}
if ( !GNET:
isabledSystem::GetDisabled(3) )
{
v133 = GNET::SysAuctionManager::GetInstance();
if ( !GNET::SysAuctionManager::Initialize(v133) )
{
GNET::Log::log(3, "Fatal: Initialize sysauction failed.");
exit(1);
}
}
if ( !GNET:
isabledSystem::GetDisabled(7) )
{
v134 = GNET::FactionFortressMan::GetInstance();
if ( !GNET::FactionFortressMan::Initialize(v134) )
{
GNET::Log::log(3, "Fatal: Initialize factionfortress failed.");
exit(1);
}
}
v135 = GNET::ForceManager::GetInstance();
if ( !GNET::ForceManager::Initialize(v135) )
{
GNET::Log::log(3, "Fatal: Initialize force failed.");
exit(1);
}
if ( !GNET:
isabledSystem::GetDisabled(12) )
{
v136 = GNET::KingElection::GetInstance();
if ( !GNET::KingElection::Initialize(v136) )
{
GNET::Log::log(3, "Fatal: Initialize kingelection failed.");
exit(1);
}
}
if ( !GNET:
isabledSystem::GetDisabled(13) )
{
v137 = GNET:
ShopMarket::GetInstance();
if ( !GNET:
ShopMarket::Initialize(v137) )
{
GNET::Log::log(3, "Fatal: Initialize pshop market failed.");
exit(1);
}
}
if ( !GNET:
isabledSystem::GetDisabled(14) )
{
v138 = GNET:
layerProfileMan::GetInstance();
if ( !GNET:
layerProfileMan::Initialize(v138) )
{
GNET::Log::log(3, "Fatal: Initialize playerprofile failed.");
exit(1);
}
}
if ( !GNET:
isabledSystem::GetDisabled(15) )
{
v139 = GNET::AutoTeamMan::GetInstance();
if ( !GNET::AutoTeamMan::Initialize(v139) )
{
GNET::Log::log(3, "Fatal: Initialize playerprofile failed.");
exit(1);
}
}
if ( !GNET:
isabledSystem::GetDisabled(16) )
{
v140 = GNET::UniqueDataServer::GetInstance();
if ( !GNET::UniqueDataServer::Initialize(v140) )
{
GNET::Log::log(3, "Fatal: Initialize uniquedataman failed.");
exit(1);
}
}
if ( !GNET:
isabledSystem::GetDisabled(17) )
{
v141 = GNET::TankBattleManager::GetInstance();
if ( !GNET::TankBattleManager::Initialize(v141) )
{
GNET::Log::log(3, "Fatal: Initialize tankbattlemanager failed.");
exit(1);
}
}
v142 = !GNET:
isabledSystem::GetDisabled(11);
v143 = GNET::FriendextinfoManager::GetInstance();
GNET::FriendextinfoManager::Initialize(v143, v142);
if ( is_central )
{
GNET::Log::trace("Central Delivery Server start to listen...");
v144 = GNET::CentralDeliveryServer::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, CentralDeliveryServer *))((void (__cdecl **)(_DWORD, _DWORD))v144->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v144);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v145);
v146 = (const char *)std::string::c_str(&zone_list_str);
v147 = atoi(v146);
GNET::CentralDeliveryServer::SetAccumulate(v144, v147);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
GNET:
rotocol::Server(&v144->baseclass_0);
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accepted_zone_list", &ip_list_str);
(*(void (__cdecl **)(string *, CentralDeliveryServer *))((void (__cdecl **)(_DWORD, _DWORD))v144->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v144);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v148);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
std::string::string(&max_name_len, &zone_list_str);
manager_1 = GNET::CentralDeliveryServer::InitAcceptedZoneList(v144, &max_name_len);
std::string::~string(&max_name_len);
if ( manager_1 <= 1 || manager_1 > 4 )
{
GNET::Log::log(
3,
"Fatal: Initialize central delivery failed. invalid accepted zoned count. count=%d\n",
manager_1);
exit(1);
}
v149 = (LoadExchangeTask *)operator new(0xCu);
GNET::LoadExchangeTask::LoadExchangeTask(v149, 15, 1);
GNET::Thread:
ool::AddTask(&v149->baseclass_0, 0);
v150 = (CrsSvrCheckTimer *)operator new(0xCu);
GNET::CrsSvrCheckTimer::CrsSvrCheckTimer(v150, 30, 1);
GNET::Thread::HouseKeeper::AddTimerTask(&v150->baseclass_0, 30);
std::string::~string(&zone_list_str);
}
else
{
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "address", &ip_list_str);
v151 = GNET::CentralDeliveryClient::GetInstance();
(*(void (__cdecl **)(string *, CentralDeliveryClient *))((void (__cdecl **)(_DWORD, _DWORD))v151->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v151);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v152);
v153 = (const char *)std::string::c_str(&zone_list_str);
v154 = CheckIPAddress(v153);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
if ( v154 )
{
GNET::Log::trace("Central Delivery Client start to connect...");
manager_1a = (GameDBClient *)GNET::CentralDeliveryClient::GetInstance();
GNET:
rotocol::Client(&manager_1a->baseclass_0);
if ( manager_1a )
GNET::Timer::Attach((Timer::Observer *)&manager_1a->accumulate_limit);
else
GNET::Timer::Attach(0);
std::allocator<char>::allocator(&v193);
std::string::string(&v192, "accumulate", &v193);
(*(void (__cdecl **)(string *, GameDBClient *))((void (__cdecl **)(_DWORD, _DWORD))manager_1a->baseclass_0._vptr.Manager
+ 14))(
&v205,
manager_1a);
GNET::Conf::find(&v191, conf, &v205, v155);
v156 = (const char *)std::string::c_str(&v191);
v157 = atoi(v156);
GNET::CentralDeliveryClient::SetAccumulate((CentralDeliveryClient *const )manager_1a, v157);
std::string::~string(&v191);
std::string::~string(&v205);
std::string::~string(&v192);
std::allocator<char>::~allocator(&v193);
}
else
{
GNET::Log::trace("Server without connected to any central server");
}
}
v158 = GNET::GameDBClient::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, GameDBClient *))((void (__cdecl **)(_DWORD, _DWORD))v158->baseclass_0._vptr.Manager + 14))(
&p_list_str,
v158);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v159);
v160 = (const char *)std::string::c_str(&zone_list_str);
v161 = atoi(v160);
GNET::GameDBClient::SetAccumulate(v158, v161);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
GNET:
rotocol::Client(&v158->baseclass_0);
v162 = GNET::GFactionClient::GetInstance();
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "accumulate", &ip_list_str);
(*(void (__cdecl **)(string *, GFactionClient *))((void (__cdecl **)(_DWORD, _DWORD))v162->baseclass_0._vptr.Manager
+ 14))(
&p_list_str,
v162);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, v163);
v164 = (const char *)std::string::c_str(&zone_list_str);
v165 = atoi(v164);
GNET::GFactionClient::SetAccumulate(v162, v165);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
GNET:
rotocol::Client(&v162->baseclass_0);
arrange_country_by_zoneid = 0;
if ( is_central )
arrange_country_by_zoneid = 1;
if ( !GNET:
isabledSystem::GetDisabled(8) )
{
v166 = GNET::CountryBattleMan::GetInstance();
if ( !GNET::CountryBattleMan::Initialize(v166, arrange_country_by_zoneid) )
{
GNET::Log::log(3, "Fatal: Initialize domain2 data failed.");
exit(1);
}
}
v167 = (Runnable *)GNET:
ollIO::Task::GetInstance();
GNET::Thread:
ool::AddTask(v167, 0);
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "account_interval", &ip_list_str);
std::allocator<char>::allocator(&v191);
std::string::string(&p_list_str, "Intervals", &v191);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, &max_name_len);
v168 = (const char *)std::string::c_str(&zone_list_str);
atoi(v168);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::allocator<char>::~allocator(&v191);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
v169 = (RemoveForbidden *)operator new(8u);
GNET::RemoveForbidden::RemoveForbidden(v169, 1);
GNET::Thread::HouseKeeper::AddTimerTask(&v169->baseclass_0, 60);
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "delrole_interval", &ip_list_str);
std::allocator<char>::allocator(&v191);
std::string::string(&p_list_str, "Intervals", &v191);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, &max_name_len);
v170 = (const char *)std::string::c_str(&zone_list_str);
v171 = atoi(v170);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::allocator<char>::~allocator(&v191);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
v180 = v171;
if ( v171 < 60 )
v180 = 60;
v172 = (Runnable *)GNET:
eleteRoleTask::GetInstance(v180 / 2, 1);
GNET::Thread::HouseKeeper::AddTimerTask(v172, v180 / 2);
std::allocator<char>::allocator(&ip_list_str);
std::string::string(&max_name_len, "checkforbidlogin_interval", &ip_list_str);
std::allocator<char>::allocator(&v191);
std::string::string(&p_list_str, "Intervals", &v191);
GNET::Conf::find(&zone_list_str, conf, &p_list_str, &max_name_len);
v173 = (const char *)std::string::c_str(&zone_list_str);
v174 = atoi(v173);
std::string::~string(&zone_list_str);
std::string::~string(&p_list_str);
std::allocator<char>::~allocator(&v191);
std::string::~string(&max_name_len);
std::allocator<char>::~allocator(&ip_list_str);
v179 = v174;
if ( v174 < 60 )
v179 = 60;
v175 = (Runnable *)GNET::CheckTimer::GetInstance(v179, 1);
GNET::Thread::HouseKeeper::AddTimerTask(v175, v179);
v176 = (StatusAnnouncer *)operator new(0xCu);
GNET::StatusAnnouncer::StatusAnnouncer(v176, 20, 1);
GNET::Thread::HouseKeeper::AddTimerTask(&v176->baseclass_0, 20);
v177 = GNET::BillingAgent::Instance();
GNET::BillingAgent::Initialize(v177);
GNET::Thread:
ool::Run(&GNET::Thread:
ool:
olicy::s_policy);
std::string::~string(¢ral_ds);
return 0;
}