Function at 0x41a7d0
Capabilities:
Link many functions at runtime

Disassembly:
push 0xffffffffffffffff
push 0x4a5948
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x4c3518]
xor eax, esp
mov dword [esp + 0x3c], eax
push ebx
push esi
mov eax, dword [0x4c3518]
xor eax, esp
push eax
lea eax, [esp + 0x4c]
mov dword fs:[0], eax
cmp byte [0x4c72ab], 0
je 0x41a810
xor eax, eax
jmp 0x41adb6
call fcn.0041a290
cmp dword [0x4c72c0], 0
jne 0x41a8eb
lea esi, [esp + 0xc]
call fcn.00419d70
mov dword [esp + 0x54], 0
mov ecx, dword [eax]
lea edx, [esp + 0x10]
call fcn.00438a50
push eax
mov ebx, str.SQLite3.dll
lea esi, [esp + 0x30]
mov byte [esp + 0x58], 1
call fcn.004192d0
add esp, 4
cmp dword [esp + 0x28], 8
jb 0x41a869
mov eax, dword [esp + 0x14]
push eax
call fcn.00485321
add esp, 4
xor ebx, ebx
xor ecx, ecx
mov dword [esp + 0x28], 7
mov dword [esp + 0x24], ebx
mov word [esp + 0x14], cx
mov byte [esp + 0x54], 4
mov eax, dword [esp + 0xc]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41a8a3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp dword [esp + 0x44], 8
mov esi, dword [esp + 0x30]
jae 0x41a8b2
lea esi, [esp + 0x30]
call fcn.0047ecdc
mov dword [esp + 0x54], 0xffffffff
cmp dword [esp + 0x44], 8
mov dword [0x4c72c0], eax
jb 0x41a8d8
mov ecx, dword [esp + 0x30]
push ecx
call fcn.00485321
add esp, 4
xor edx, edx
mov dword [esp + 0x44], 7
mov dword [esp + 0x40], ebx
mov word [esp + 0x30], dx
mov eax, dword [0x4c72c4]
test eax, eax
jne 0x41a912
mov esi, dword [0x4c8288]
call fcn.0047ed14
mov dword [0x4c72c4], eax
test eax, eax
jne 0x41a912
mov eax, 0xfffffbfc
jmp 0x41adb6
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.AMDeviceNotificationSubscribe
push eax
call esi
mov dword [0x4c72dc], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceNotificationUnsubscribe
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceConnect
push ecx
mov dword [0x4c72e0], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceDisconnect
push edx
mov dword [0x4c72e4], eax
call esi
mov dword [0x4c72e8], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceGetTypeID
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceIsPaired
push ecx
mov dword [0x4c72d0], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDevicePair
push edx
mov dword [0x4c72ec], eax
call esi
mov dword [0x4c72f4], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceUnpair
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceValidatePairing
push ecx
mov dword [0x4c72f8], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceStartSession
push edx
mov dword [0x4c72f0], eax
call esi
mov dword [0x4c72fc], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceStartService
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceStopSession
push ecx
mov dword [0x4c7308], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceRelease
push edx
mov dword [0x4c730c], eax
call esi
mov dword [0x4c7300], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceRetain
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMSInitialize
push ecx
mov dword [0x4c7304], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDPostNotification
push edx
mov dword [0x4c7310], eax
call esi
mov dword [0x4c7314], eax
push str.AMDObserveNotification
mov eax, dword [0x4c72c4]
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDListenForNotifications
push ecx
mov dword [0x4c7318], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDShutdownNotificationProxy
push edx
mov dword [0x4c731c], eax
call esi
mov dword [0x4c7320], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceGetConnectionID
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceCopyDeviceIdentifier
push ecx
mov dword [0x4c72c8], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceCopyValue
push edx
mov dword [0x4c72cc], eax
call esi
mov dword [0x4c72d4], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceSetValue
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AFCConnectionOpen
push ecx
mov dword [0x4c72d8], eax
call esi
mov edx, dword [0x4c72c4]
push str.AFCConnectionClose
push edx
mov dword [0x4c7324], eax
call esi
mov dword [0x4c7328], eax
mov eax, dword [0x4c72c4]
push str.AFCDeviceInfoOpen
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AFCDirectoryCreate
push ecx
mov dword [0x4c732c], eax
call esi
mov edx, dword [0x4c72c4]
push str.AFCDirectoryOpen
push edx
mov dword [0x4c7330], eax
call esi
mov dword [0x4c7334], eax
mov eax, dword [0x4c72c4]
push str.AFCDirectoryRead
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AFCDirectoryClose
push ecx
mov dword [0x4c7338], eax
call esi
mov edx, dword [0x4c72c4]
push str.AFCFileInfoOpen
push edx
mov dword [0x4c733c], eax
call esi
mov dword [0x4c7340], eax
mov eax, dword [0x4c72c4]
push str.AFCKeyValueRead
push eax
call esi
mov ecx, dword [0x4c72c4]
mov dword [0x4c7344], eax
push str.AFCKeyValueClose
push ecx
call esi
mov edx, dword [0x4c72c4]
push str.AFCFileRefOpen
push edx
mov dword [0x4c7348], eax
call esi
mov dword [0x4c734c], eax
mov eax, dword [0x4c72c4]
push str.AFCFileRefClose
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AFCFileRefLock
push ecx
mov dword [0x4c7350], eax
call esi
mov edx, dword [0x4c72c4]
push str.AFCFileRefRead
push edx
mov dword [0x4c7354], eax
call esi
mov dword [0x4c7358], eax
mov eax, dword [0x4c72c4]
push str.AFCFileRefSeek
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AFCFileRefSetFileSize
push ecx
mov dword [0x4c735c], eax
call esi
mov edx, dword [0x4c72c4]
push str.AFCFileRefTell
push edx
mov dword [0x4c7360], eax
call esi
mov dword [0x4c7364], eax
mov eax, dword [0x4c72c4]
push str.AFCFileRefUnlock
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AFCFileRefWrite
push ecx
mov dword [0x4c7368], eax
call esi
mov edx, dword [0x4c72c4]
push str.AFCLinkPath
push edx
mov dword [0x4c736c], eax
call esi
mov dword [0x4c7370], eax
mov eax, dword [0x4c72c4]
push str.AFCRemovePath
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AFCRenamePath
push ecx
mov dword [0x4c7378], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceUninstallApplication
push edx
mov dword [0x4c7374], eax
call esi
mov dword [0x4c7380], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceTransferApplication
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceUpgradeApplication
push ecx
mov dword [0x4c7384], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceInstallApplication
mov dword [0x4c7388], eax
push edx
call esi
mov dword [0x4c738c], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceLookupApplications
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceArchiveApplication
push ecx
mov dword [0x4c737c], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceRemoveApplicationArchive
push edx
mov dword [0x4c7390], eax
call esi
mov dword [0x4c7394], eax
mov eax, dword [0x4c72c4]
push str.AMDServiceConnectionGetSocket
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDServiceConnectionGetSecureIOContext
push ecx
mov dword [0x4c7398], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceSecureStartService
push edx
mov dword [0x4c739c], eax
call esi
mov dword [0x4c73a0], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceSecureArchiveApplication
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceSecureUninstallApplication
push ecx
mov dword [0x4c73ac], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceSecureInstallApplication
push edx
mov dword [0x4c73a4], eax
call esi
mov dword [0x4c73a8], eax
mov eax, dword [0x4c72c4]
push str.AMRestoreModeDeviceCreate
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMRestoreRegisterForDeviceNotifications
push ecx
mov dword [0x4c73b0], eax
call esi
mov edx, dword [0x4c72c4]
push str.AMDeviceEnterRecovery
push edx
mov dword [0x4c73b4], eax
call esi
mov dword [0x4c73b8], eax
mov eax, dword [0x4c72c4]
push str.AMDeviceDeactivate
push eax
call esi
mov ecx, dword [0x4c72c4]
push str.AMDeviceActivate
push ecx
mov dword [0x4c73bc], eax
call esi
mov dword [0x4c73c0], eax
mov byte [0x4c72ab], 1
call fcn.00419fc0
mov ecx, dword [esp + 0x4c]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov ecx, dword [esp + 0x3c]
xor ecx, esp
call fcn.0048532c
add esp, 0x4c
ret