Function at 0x10009c70
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1004fa10
mov eax, dword fs:[0]
push eax
sub esp, 0x54
mov eax, dword [0x100623f0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov byte [ebp - 0xd], 1
push str.KernelUtil.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x10009fe8
push str._SaveMsg194_Msg_Util__YAHPB_WKKKPAUITXMsgPack__PAUITXData__PAUITXCallback___Z
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x1006560c], eax
cmp dword [0x1006560c], 0
jne 0x10009ce6
push str.Get_SaveMsg194_Func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._SaveMsg194_Msg_Util__YAHPB_W000KKPAUITXMsgPack__PAUITXData__PAUITXCallback___Z
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655f0], eax
cmp dword [0x100655f0], 0
jne 0x10009d1b
push str.Get_SaveMsg194_2_Func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetMsgAbstract_Msg_Util__YA_AVCTXStringW__PAUITXMsgPack___Z
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655e8], eax
cmp dword [0x100655e8], 0
jne 0x10009d50
push str.Get_GetMsgAbstract_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._TranslateBuddyMsgToMsgPack_Msg_Util__YAHABVCTXBuffer__PAUITXMsgPack___Z
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655fc], eax
cmp dword [0x100655fc], 0
jne 0x10009d85
push str.Get_TranslateBuddyMsgToMsgPack_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetMsgSeq_Msg_Util__YAKPAUITXMsgPack___Z
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655f8], eax
cmp dword [0x100655f8], 0
jne 0x10009dba
push str.Get_GetMsgSeq_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetMsgTime_Msg_Util__YA_JPAUITXMsgPack___Z
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655d4], eax
cmp dword [0x100655d4], 0
jne 0x10009def
push str.Get_GetMsgTime_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._CheckVideoMsg_Msg_Util__YAXHKKKPAUITXMsgPack___Z
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655ec], eax
cmp dword [0x100655ec], 0
jne 0x10009e1b
push str.Get_CheckVideoMsg_func_failed_
push 4
call fcn.10003e30
add esp, 8
push str._GetGroupName_Group_Util__YA_AVCTXStringW__K_Z
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x10065608], eax
cmp dword [0x10065608], 0
jne 0x10009e47
push str.Get_GetGroupName_func_failed_
push 4
call fcn.10003e30
add esp, 8
push str._GetSelfUin_Contact_Util__YAKXZ
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x10065610], eax
cmp dword [0x10065610], 0
jne 0x10009e7c
push str.Get_GetSelfUin_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetPublicName_Contact_Util__YA_AVCTXStringW__K_Z
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655c8], eax
cmp dword [0x100655c8], 0
jne 0x10009eb1
push str.Get_GetPublicName_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetAccountName_Account_Util__YA_AVCTXStringW__K_Z
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x10065604], eax
cmp dword [0x10065604], 0
jne 0x10009ee6
push str.Get_GetAccountName_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetAccountName_Search_Util__YA_AVCTXStringW__K_Z
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655d8], eax
cmp dword [0x100655d8], 0
jne 0x10009f1b
push str.Get_GetSearchAccountName_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetNickname_Contact_Util__YA_AVCTXStringW__K_Z
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655e0], eax
cmp dword [0x100655e0], 0
jne 0x10009f50
push str.Get_GetContactNickName_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetContactShowName_Contact_Util__YA_AVCTXStringW__K_Z
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655cc], eax
cmp dword [0x100655d8], 0
jne 0x10009f85
push str.Get_GetContactShowName_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str._GetDiscussName_Group_Util__YA_AVCTXStringW__K_Z
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655dc], eax
cmp dword [0x100655dc], 0
jne 0x10009fb1
push str.Get_GetDiscussName_func_failed_
push 4
call fcn.10003e30
add esp, 8
push str._GetMsgRand32_Msg_Util__YAKPAUITXMsgPack___Z
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655e4], eax
cmp dword [0x100655e4], 0
jne 0x10009fe6
push str.Get_GetMsgRand32_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
jmp 0x1000a000
push str.KernelUtil_is_null_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push str.AppUtil.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
je 0x1000a06e
push str._IsSupportOfflineVideoFile_File_Misc_Util__YAHABVCTXStringW___Z
mov ecx, dword [ebp - 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655d0], eax
cmp dword [0x100655d0], 0
jne 0x1000a040
push str.Get_IsSupportOfflineVideoFile_func_failed_
push 4
call fcn.10003e30
add esp, 8
push str._AddFileInEditRECtrl_ChatRichEdit_Util__YAHUtagTypeUin__PA_WPAUITXData___Z
mov edx, dword [ebp - 0x18]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x10065600], eax
cmp dword [0x10065600], 0
jne 0x1000a06c
push str.Get_AddFileInEditRECtrl_func_failed_
push 4
call fcn.10003e30
add esp, 8
jmp 0x1000a083
push str.AppUtil_is_null_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
push 0x1005b1ac
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x1000a0cb
push str._GetDiskFreeSpaceForFile_FS_Util__YA_KPB_W_Z
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x100655f4], eax
cmp dword [0x100655f4], 0
jne 0x1000a0c9
push str.Get_GetDiskFreeSpaceForFile_func_failed_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
jmp 0x1000a0e0
push str.commonDll_is_null_
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 0xd], 0
jmp 0x1000a0e8
xor ecx, ecx
jne 0x10009c99
movzx edx, byte [ebp - 0xd]
test edx, edx
jne 0x1000a104
push str.Find_function_failed_
push 4
call fcn.10003e30
add esp, 8
jmp 0x1000a22d
push str.Find_all_functions_succeed_
push 4
call fcn.10003e30
add esp, 8
call fcn.10046f00
call fcn.10048b30
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call fcn.10049000
push 0x10008cb0
push 0x1006560c
call fcn.100483e0
push 0x10008ff0
push 0x100655f0
call fcn.100483e0
cmp dword [0x100655ec], 0
je 0x1000a15f
push 0x10009910
push 0x100655ec
call fcn.100483e0
push 0x10009410
push 0x100655f4
call fcn.100483e0
push 0x100096c0
push 0x10065600
call fcn.100483e0
call fcn.10048b90
test eax, eax
jne 0x1000a197
push str.Detoured_successfully.
push 4
call fcn.10003e30
add esp, 8
jmp 0x1000a1a6
push str.Detoured_failed_
push 4
call fcn.10003e30
add esp, 8
call dword [0x10065610]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
push eax
lea ecx, [ebp - 0x60]
push ecx
call fcn.10003930
add esp, 8
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x28], edx
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x28]
push eax
push str.S_MRQ
lea ecx, [ebp - 0x48]
push ecx
call fcn.10011430
add esp, 0xc
mov dword [ebp - 0x2c], eax
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x30], edx
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x30]
call fcn.1000b410
push eax
push 4
call fcn.10003e30
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x48]
call fcn.1000b310
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x60]
call fcn.1000b310
push 1
mov eax, dword [ebp - 0x20]
push eax
call fcn.10006ed0
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret