Function at 0x407a60
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, ecx
call fcn.00407860
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [esi], eax
test eax, eax
jne 0x407a83
or eax, 0xffffffff
pop esi
pop ebp
ret 4
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.get_author_info
push eax
call edi
mov dword [esi + 4], eax
test eax, eax
je 0x407c8c
call eax
test eax, eax
je 0x407c8c
push 8
push str.montnets
push eax
call fcn.005080cd
add esp, 0xc
test eax, eax
jne 0x407c8c
mov ecx, dword [esi]
push str.GetMaxUserAmount
push ecx
call edi
mov edx, dword [esi]
push str.GetOnlineUserAmount
push edx
mov dword [esi + 8], eax
call edi
mov dword [esi + 0xc], eax
mov eax, dword [esi]
push str.GetUserInfo
push eax
call edi
mov ecx, dword [esi]
push str.GetUserAt
push ecx
mov dword [esi + 0x10], eax
call edi
mov edx, dword [esi]
push str.StartGprsServer
push edx
mov dword [esi + 0x14], eax
call edi
mov dword [esi + 0x18], eax
mov eax, dword [esi]
push str.StopGprsServer
push eax
call edi
mov ecx, dword [esi]
push str.DoReadProc
push ecx
mov dword [esi + 0x1c], eax
call edi
mov edx, dword [esi]
push str.DoSendUserData
push edx
mov dword [esi + 0x20], eax
call edi
mov dword [esi + 0x24], eax
mov eax, dword [esi]
push str.DoCloseOneUser
push eax
call edi
mov ecx, dword [esi]
push str.DoCloseAllUser
push ecx
mov dword [esi + 0x28], eax
call edi
mov edx, dword [esi]
push str.DoCloseOneUser2
push edx
mov dword [esi + 0x2c], eax
call edi
mov dword [esi + 0x30], eax
mov eax, dword [esi]
push str.DoCloseAllUser2
push eax
call edi
mov ecx, dword [esi]
push str.GetCurrentIP
push ecx
mov dword [esi + 0x34], eax
call edi
mov edx, dword [esi]
push str.SetCustomIP
push edx
mov dword [esi + 0x38], eax
call edi
mov dword [esi + 0x3c], eax
mov eax, dword [esi]
push str.DeleteAllUser
push eax
call edi
mov ecx, dword [esi]
push str.AddOneUser
push ecx
mov dword [esi + 0x40], eax
call edi
mov dword [esi + 0x44], eax
push str.SetWorkMode
mov edx, dword [esi]
push edx
call edi
mov dword [esi + 0x48], eax
mov eax, dword [esi]
push str.SelectProtocol
push eax
call edi
mov ecx, dword [esi]
push str.ClearParam
push ecx
mov dword [esi + 0x4c], eax
call edi
mov edx, dword [esi]
push str.SetParam
push edx
mov dword [esi + 0x50], eax
call edi
mov dword [esi + 0x54], eax
mov eax, dword [esi]
push str.DoUpdateParam
push eax
call edi
mov ecx, dword [esi]
push str.DoReadParam
push ecx
mov dword [esi + 0x58], eax
call edi
mov edx, dword [esi]
push str.GetParam
push edx
mov dword [esi + 0x5c], eax
call edi
mov dword [esi + 0x60], eax
mov eax, dword [esi]
push str.AddOneUser
push eax
call edi
mov ecx, dword [esi]
push str.DeleteAllUser
push ecx
mov dword [esi + 0x64], eax
call edi
mov edx, dword [esi]
push str.DeleteOneUser
push edx
mov dword [esi + 0x68], eax
call edi
mov dword [esi + 0x6c], eax
mov eax, dword [esi]
push str.StartNetService
push eax
call edi
mov ecx, dword [esi]
push str.StopNetService
push ecx
mov dword [esi + 0x70], eax
call edi
mov edx, dword [esi]
push str.DoUpdateParam
push edx
mov dword [esi + 0x74], eax
call edi
mov dword [esi + 0x78], eax
mov eax, dword [esi]
push str.DoReadParam
push eax
call edi
mov ecx, dword [esi]
push str.do_disconnect_ppp_link
push ecx
mov dword [esi + 0x7c], eax
call edi
mov edx, dword [esi]
push str.do_stop_send_data
push edx
mov dword [esi + 0x80], eax
call edi
mov dword [esi + 0x84], eax
mov eax, dword [esi]
push str.do_start_send_data
push eax
call edi
mov ecx, dword [esi]
push str.do_flush_cache_data
push ecx
mov dword [esi + 0x88], eax
call edi
mov edx, dword [esi]
push str.CancelReadBlock
push edx
jmp 0x407e54
mov eax, dword [esi]
push str.get_max_user_amount
push eax
call edi
mov ecx, dword [esi]
push str.get_online_user_amount
push ecx
mov dword [esi + 8], eax
call edi
mov edx, dword [esi]
push str.get_user_info
push edx
mov dword [esi + 0xc], eax
call edi
mov dword [esi + 0x10], eax
mov eax, dword [esi]
push str.get_user_at
push eax
call edi
mov ecx, dword [esi]
push str.start_gprs_server
push ecx
mov dword [esi + 0x14], eax
call edi
mov edx, dword [esi]
push str.stop_gprs_server
push edx
mov dword [esi + 0x18], eax
call edi
mov dword [esi + 0x1c], eax
mov eax, dword [esi]
push str.do_read_proc
push eax
call edi
mov ecx, dword [esi]
push str.do_send_user_data
push ecx
mov dword [esi + 0x20], eax
call edi
mov edx, dword [esi]
push str.do_close_one_user
push edx
mov dword [esi + 0x24], eax
call edi
mov dword [esi + 0x28], eax
mov eax, dword [esi]
push str.do_close_all_user
push eax
call edi
mov ecx, dword [esi]
push str.do_close_one_user2
push ecx
mov dword [esi + 0x2c], eax
call edi
mov edx, dword [esi]
push str.do_close_all_user2
push edx
mov dword [esi + 0x30], eax
call edi
mov dword [esi + 0x34], eax
mov eax, dword [esi]
push str.GetCurrentIP
push eax
call edi
mov ecx, dword [esi]
push str.SetCustomIP
push ecx
mov dword [esi + 0x38], eax
call edi
mov edx, dword [esi]
push str.DeleteAllUser
push edx
mov dword [esi + 0x3c], eax
call edi
mov dword [esi + 0x40], eax
mov eax, dword [esi]
push str.AddOneUser
push eax
call edi
mov dword [esi + 0x44], eax
push str.SetWorkMode
mov ecx, dword [esi]
push ecx
call edi
mov edx, dword [esi]
push str.SelectProtocol
push edx
mov dword [esi + 0x48], eax
call edi
mov dword [esi + 0x4c], eax
mov eax, dword [esi]
push str.ClearParam
push eax
call edi
mov ecx, dword [esi]
push str.SetParam
push ecx
mov dword [esi + 0x50], eax
call edi
mov edx, dword [esi]
push str.DoUpdateParam
push edx
mov dword [esi + 0x54], eax
call edi
mov dword [esi + 0x58], eax
mov eax, dword [esi]
push str.DoReadParam
push eax
call edi
mov ecx, dword [esi]
push str.GetParam
push ecx
mov dword [esi + 0x5c], eax
call edi
mov edx, dword [esi]
push str.add_one_user
push edx
mov dword [esi + 0x60], eax
call edi
mov dword [esi + 0x64], eax
mov eax, dword [esi]
push str.delete_all_user
push eax
call edi
mov ecx, dword [esi]
push str.delete_one_user
push ecx
mov dword [esi + 0x68], eax
call edi
mov edx, dword [esi]
push str.start_net_service
push edx
mov dword [esi + 0x6c], eax
call edi
mov dword [esi + 0x70], eax
mov eax, dword [esi]
push str.stop_net_service
push eax
call edi
mov ecx, dword [esi]
push str.do_update_param
push ecx
mov dword [esi + 0x74], eax
call edi
mov edx, dword [esi]
push str.do_read_param
push edx
mov dword [esi + 0x78], eax
call edi
mov dword [esi + 0x7c], eax
mov eax, dword [esi]
push str.do_disconnect_ppp_link
push eax
call edi
mov ecx, dword [esi]
push str.do_stop_send_data
push ecx
mov dword [esi + 0x80], eax
call edi
mov edx, dword [esi]
mov dword [esi + 0x84], eax
push str.do_start_send_data
push edx
call edi
mov dword [esi + 0x88], eax
mov eax, dword [esi]
push str.do_flush_cache_data
push eax
call edi
mov ecx, dword [esi]
push str.cancel_read_block
push ecx
mov dword [esi + 0x8c], eax
call edi
mov dword [esi + 0x90], eax
pop edi
xor eax, eax
pop esi
pop ebp
ret 4