Function at 0x403940
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [edi + 0xc]
test eax, eax
je 0x403b08
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.AMRestorableDeviceRegisterForNotifications
push eax
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x4083fc], eax
test eax, eax
jne 0x40397a
call ebx
push eax
push str._4_nGetProcAddress_AMRestorableDeviceRegisterForNotifications_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov eax, dword [edi + 0xc]
push str.AMRestorableDeviceGetECID
push eax
call esi
mov dword [0x408718], eax
test eax, eax
jne 0x40399e
call ebx
push eax
push str._4_nGetProcAddress_AMRestorableDeviceGetECID_Failed__GetLastError:_d
call fcn.00401290
add esp, 8
mov ecx, dword [edi + 0xc]
push str.AMRestorableDeviceGetProductID
push ecx
call esi
mov dword [0x4086f0], eax
test eax, eax
jne 0x4039c2
call ebx
push eax
push str._4_nGetProcAddress_AMRestorableDeviceGetProductID_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov edx, dword [edi + 0xc]
push str.AMRestorableDeviceGetChipID
push edx
call esi
mov dword [0x40870c], eax
test eax, eax
jne 0x4039e6
call ebx
push eax
push str._4_nGetProcAddress_AMRestorableDeviceGetChipID_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov eax, dword [edi + 0xc]
push str.AMRestorableDeviceGetBoardID
push eax
call esi
mov dword [0x408730], eax
test eax, eax
jne 0x403a0a
call ebx
push eax
push str._4_nGetProcAddress_AMRestorableDeviceGetBoardID_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov ecx, dword [edi + 0xc]
push str.AMRestorableDeviceRestore
push ecx
call esi
mov dword [0x408710], eax
test eax, eax
jne 0x403a2e
call ebx
push eax
push str._4_nGetProcAddress_AMRestorableDeviceRestore_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov edx, dword [edi + 0xc]
push str.AMRestoreCreateDefaultOptions
push edx
call esi
mov dword [0x408400], eax
test eax, eax
jne 0x403a52
call ebx
push eax
push str._4_nGetProcAddress_AMRestoreCreateDefaultOptions_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov eax, dword [edi + 0xc]
push str.AMDSetLogLevel
push eax
call esi
mov dword [0x408414], eax
test eax, eax
jne 0x403a76
call ebx
push eax
push str._4_nGetProcAddress_AMDSetLogLevel_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov ecx, dword [edi + 0xc]
push str.AMRestoreSetLogLevel
push ecx
call esi
mov dword [0x408408], eax
test eax, eax
jne 0x403a9a
call ebx
push eax
push str._4_nGetProcAddress_AMRestoreSetLogLevel_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov edx, dword [edi + 0xc]
push str.AMRestoreEnableFileLogging
push edx
call esi
mov dword [0x408724], eax
test eax, eax
jne 0x403abe
call ebx
push eax
push str._4_nGetProcAddress_AMRestoreEnableFileLogging_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov eax, dword [edi + 0xc]
push str.AMRestorableDeviceUnregisterForNotifications
push eax
call esi
mov dword [0x408734], eax
test eax, eax
jne 0x403ae2
call ebx
push eax
push str._4_nGetProcAddress_AMRestorableDeviceUnregisterForNotifications_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
mov ecx, dword [edi + 0xc]
push str.AMRestorableDeviceGetState
push ecx
call esi
mov dword [0x4083f8], eax
test eax, eax
jne 0x403b06
call ebx
push eax
push str._4_nGetProcAddress_AMRestorableDeviceGetState_Failed__GetLastError:_d_
call fcn.00401290
add esp, 8
pop esi
pop ebx
ret