Function at 0x4070e0
Capabilities:
Link many functions at runtime

Disassembly:
push esi
mov esi, ecx
mov eax, dword [esi + 4]
push edi
xor edi, edi
cmp eax, edi
je 0x4070f4
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esp + 0xc]
cmp eax, edi
je 0x407105
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
jmp 0x407107
xor eax, eax
mov dword [esi + 4], eax
cmp eax, edi
jne 0x407115
pop edi
xor eax, eax
pop esi
ret 4
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push ebp
push str.ASK_IsInitialed
push eax
mov ebp, 1
call ebx
mov dword [esi + 8], eax
cmp eax, edi
jne 0x407133
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407147
push str.ASK_Initial
push eax
call ebx
mov dword [esi + 0xc], eax
jmp 0x40714a
mov dword [esi + 0xc], edi
cmp dword [esi + 0xc], edi
jne 0x407151
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407165
push str.ASK_Deinitial
push eax
call ebx
mov dword [esi + 0x10], eax
jmp 0x407168
mov dword [esi + 0x10], edi
cmp dword [esi + 0x10], edi
jne 0x40716f
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407183
push str.ASK_GetSMBiosVersion
push eax
call ebx
mov dword [esi + 0x14], eax
jmp 0x407186
mov dword [esi + 0x14], edi
cmp dword [esi + 0x14], edi
jne 0x40718d
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x4071a1
push str.ASK_GetAcerSMBiosRevision
push eax
call ebx
mov dword [esi + 0x18], eax
jmp 0x4071a4
mov dword [esi + 0x18], edi
cmp dword [esi + 0x18], edi
jne 0x4071ab
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x4071bf
push str.ASK_GetButtonFunctionInfo
push eax
call ebx
mov dword [esi + 0x1c], eax
jmp 0x4071c2
mov dword [esi + 0x1c], edi
cmp dword [esi + 0x1c], edi
jne 0x4071c9
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x4071dd
push str.ASK_ButtonFunction2Acer
push eax
call ebx
mov dword [esi + 0x20], eax
jmp 0x4071e0
mov dword [esi + 0x20], edi
cmp dword [esi + 0x20], edi
jne 0x4071e7
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x4071fb
push str.ASK_GetCommunicationFunctionSupported
push eax
call ebx
mov dword [esi + 0x24], eax
jmp 0x4071fe
mov dword [esi + 0x24], edi
cmp dword [esi + 0x24], edi
jne 0x407205
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407219
push str.ASK_GetApplicationFunctionSupported
push eax
call ebx
mov dword [esi + 0x28], eax
jmp 0x40721c
mov dword [esi + 0x28], edi
cmp dword [esi + 0x28], edi
jne 0x407223
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407237
push str.ASK_GetMediaFunctionSupported
push eax
call ebx
mov dword [esi + 0x2c], eax
jmp 0x40723a
mov dword [esi + 0x2c], edi
cmp dword [esi + 0x2c], edi
jne 0x407241
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407255
push str.ASK_GetDisplayFunctionSupported
push eax
call ebx
mov dword [esi + 0x30], eax
jmp 0x407258
mov dword [esi + 0x30], edi
cmp dword [esi + 0x30], edi
jne 0x40725f
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407273
push str.ASK_GetOtherFunctionSupported
push eax
call ebx
mov dword [esi + 0x34], eax
jmp 0x407276
mov dword [esi + 0x34], edi
cmp dword [esi + 0x34], edi
jne 0x40727d
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407291
push str.ASK_CombinedFunction2Array
push eax
call ebx
mov dword [esi + 0x38], eax
jmp 0x407294
mov dword [esi + 0x38], edi
cmp dword [esi + 0x38], edi
jne 0x40729b
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x4072af
push str.ASK_GetFirstAcerSMBiosSupportedRevision
push eax
call ebx
mov dword [esi + 0x3c], eax
jmp 0x4072b2
mov dword [esi + 0x3c], edi
cmp dword [esi + 0x3c], edi
jne 0x4072b9
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x4072cd
push str.ASK_GetManufactureNameW
push eax
call ebx
mov dword [esi + 0x40], eax
jmp 0x4072d0
mov dword [esi + 0x40], edi
cmp dword [esi + 0x40], edi
jne 0x4072d7
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x4072eb
push str.ASK_GetProductNameW
push eax
call ebx
mov dword [esi + 0x44], eax
jmp 0x4072ee
mov dword [esi + 0x44], edi
cmp dword [esi + 0x44], edi
jne 0x4072f5
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407309
push str.ASK_GetSystemDeviceInfo
push eax
call ebx
mov dword [esi + 0x48], eax
jmp 0x40730c
mov dword [esi + 0x48], edi
cmp dword [esi + 0x48], edi
jne 0x407313
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407327
push str.ASK_SetRawBlockFromFileW
push eax
call ebx
mov dword [esi + 0x4c], eax
jmp 0x40732a
mov dword [esi + 0x4c], edi
cmp dword [esi + 0x4c], edi
jne 0x407331
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407345
push str.ASK_SaveRawBlockToFileW
push eax
call ebx
mov dword [esi + 0x50], eax
jmp 0x407348
mov dword [esi + 0x50], edi
cmp dword [esi + 0x50], edi
jne 0x40734f
xor ebp, ebp
mov eax, dword [esi + 4]
cmp eax, edi
je 0x407363
push str.ASK_GetBaseboardProductNameA
push eax
call ebx
mov dword [esi + 0x54], eax
jmp 0x407366
mov dword [esi + 0x54], edi
cmp dword [esi + 0x54], edi
jne 0x40736d
xor ebp, ebp
mov eax, ebp
pop ebp
pop ebx
pop edi
pop esi
ret 4