Function at 0x43cde0
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [0x45b4fc]
push ebx
push esi
cmp al, 4
push edi
jb 0x43d287
cmp eax, 0x80000000
jae 0x43d287
mov eax, dword [sym.imp.USER32.dll_GetWindowTextW]
mov ecx, dword [sym.imp.USER32.dll_SetWindowTextW]
mov edx, dword [sym.imp.USER32.dll_GetWindowTextLengthW]
mov dword [0x45b3d0], eax
mov eax, dword [sym.imp.USER32.dll_GetDlgItemTextW]
mov dword [0x45b3b0], ecx
mov ecx, dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov dword [0x45b410], edx
mov edx, dword [sym.imp.USER32.dll_PostMessageW]
mov dword [0x45b40c], eax
mov eax, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [0x45b3e0], ecx
mov ecx, dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov dword [0x45b394], edx
mov edx, dword [sym.imp.USER32.dll_MessageBoxW]
mov dword [0x45b494], eax
mov eax, dword [sym.imp.KERNEL32.dll_FormatMessageW]
mov dword [0x45b380], ecx
mov ecx, dword [sym.imp.USER32.dll_CreateDialogParamW]
mov dword [0x45b41c], edx
mov edx, dword [sym.imp.USER32.dll_DialogBoxParamW]
mov dword [0x45b424], eax
mov eax, dword [sym.imp.USER32.dll_GetWindowLongW]
mov dword [0x45b368], ecx
mov ecx, dword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [0x45b464], edx
mov edx, dword [sym.imp.USER32.dll_CallWindowProcW]
mov dword [0x45b3a0], eax
mov eax, dword [sym.imp.USER32.dll_RegisterClassW]
mov dword [0x45b3dc], ecx
mov ecx, dword [sym.imp.USER32.dll_FindWindowW]
mov dword [0x45b3c8], edx
mov edx, dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [0x45b454], eax
mov eax, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov dword [0x45b440], ecx
mov ecx, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [0x45b44c], edx
mov edx, dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [0x45b338], eax
mov eax, dword [sym.imp.ADVAPI32.dll_RegQueryValueW]
mov dword [0x45b3bc], ecx
mov ecx, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov dword [0x45b398], edx
mov edx, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
mov dword [0x45b484], eax
mov eax, dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov ecx, dword [sym.imp.USER32.dll_GetWindowTextA]
mov edx, dword [sym.imp.USER32.dll_SetWindowTextA]
mov eax, dword [sym.imp.USER32.dll_GetWindowTextLengthA]
mov dword [0x45b3d0], ecx
mov ecx, dword [sym.imp.USER32.dll_GetDlgItemTextA]
mov dword [0x45b3b0], edx
mov edx, dword [sym.imp.USER32.dll_SetDlgItemTextA]
mov dword [0x45b410], eax
mov eax, dword [sym.imp.USER32.dll_PostMessageA]
mov dword [0x45b40c], ecx
mov ecx, dword [sym.imp.USER32.dll_SendMessageA]
mov dword [0x45b3e0], edx
mov edx, dword [sym.imp.USER32.dll_SendDlgItemMessageA]
mov dword [0x45b394], eax
mov eax, dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [0x45b494], ecx
mov ecx, dword [sym.imp.KERNEL32.dll_FormatMessageA]
mov dword [0x45b380], edx
mov edx, dword [sym.imp.USER32.dll_CreateDialogParamA]
mov dword [0x45b41c], eax
mov eax, dword [sym.imp.USER32.dll_DialogBoxParamA]
mov dword [0x45b424], ecx
mov ecx, dword [sym.imp.USER32.dll_GetWindowLongA]
mov dword [0x45b368], edx
mov edx, dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [0x45b464], eax
mov eax, dword [sym.imp.USER32.dll_CallWindowProcA]
mov dword [0x45b3a0], ecx
mov ecx, dword [sym.imp.USER32.dll_RegisterClassA]
mov dword [0x45b3dc], edx
mov edx, dword [sym.imp.USER32.dll_FindWindowA]
mov dword [0x45b3c8], eax
mov eax, dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x45b454], ecx
mov ecx, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
mov dword [0x45b440], edx
mov edx, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [0x45b44c], eax
mov eax, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov dword [0x45b338], ecx
mov ecx, dword [sym.imp.ADVAPI32.dll_RegQueryValueA]
mov dword [0x45b3bc], edx
mov edx, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov dword [0x45b398], eax
mov eax, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov dword [0x45b484], ecx
mov ecx, dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov dword [0x45b3c0], edx
mov edx, dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
mov dword [0x45b444], eax
mov eax, dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x45b3f0], ecx
mov ecx, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [0x45b3b8], edx
mov edx, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov dword [0x45b364], eax
mov eax, dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [0x45b314], ecx
mov ecx, dword [sym.imp.KERNEL32.dll_FindNextFileA]
mov dword [0x45b39c], edx
mov edx, dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [0x45b348], eax
mov eax, dword [sym.imp.KERNEL32.dll_MoveFileA]
xor ebx, ebx
push str.kernel32.dll
mov dword [0x45b45c], ebx
mov dword [0x45b448], ecx
mov dword [0x45b31c], edx
mov dword [0x45b498], eax
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.CreateHardLinkA
push eax
call esi
mov ecx, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov edx, dword [sym.imp.KERNEL32.dll_RemoveDirectoryA]
mov dword [0x45b308], eax
mov eax, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [0x45b404], ecx
mov dword [0x45b414], edx
mov ecx, dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
mov edx, dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
mov dword [0x45b354], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [0x45b36c], ecx
mov ecx, dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
mov dword [0x45b38c], edx
mov edx, dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceA]
mov dword [0x45b370], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetDriveTypeA]
mov dword [0x45b490], ecx
mov ecx, dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
mov dword [0x45b450], edx
mov edx, dword [sym.imp.SHELL32.dll_DragQueryFileA]
mov dword [0x45b330], eax
mov eax, dword [sym.imp.USER32.dll_InsertMenuA]
mov dword [0x45b3e8], ecx
mov ecx, dword [sym.imp.USER32.dll_ModifyMenuA]
mov dword [0x45b388], edx
mov edx, dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov dword [0x45b428], eax
mov eax, dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov dword [0x45b3a8], ecx
mov ecx, dword [sym.imp.SHELL32.dll_ShellExecuteExA]
mov dword [0x45b470], edx
mov edx, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x45b384], eax
mov eax, dword [sym.imp.WINMM.dll_PlaySoundA]
mov dword [0x45b460], ecx
mov ecx, dword [sym.imp.USER32.dll_CharUpperA]
mov dword [0x45b318], edx
mov edx, dword [sym.imp.USER32.dll_CharLowerA]
mov dword [0x45b34c], eax
mov eax, dword [sym.imp.KERNEL32.dll_lstrcmpiA]
mov dword [0x45b49c], ecx
mov ecx, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [0x45b3ec], edx
mov edx, dword [sym.imp.MSVCRT.dll__mbschr]
mov dword [0x45b378], eax
mov eax, dword [sym.imp.MSVCRT.dll__strnicmp]
mov dword [0x45b418], ecx
mov ecx, dword [sym.imp.MSVCRT.dll__strdup]
mov dword [0x45b358], edx
mov edx, dword [sym.imp.MSVCRT.dll_strchr]
mov dword [0x45b334], eax
mov eax, dword [sym.imp.MSVCRT.dll_strrchr]
mov dword [0x45b35c], ecx
mov ecx, dword [sym.imp.MSVCRT.dll_strtol]
mov dword [0x45b46c], edx
mov edx, dword [sym.imp.MSVCRT.dll_strtoul]
mov dword [0x45b32c], eax
mov eax, dword [sym.imp.MSVCRT.dll_sprintf]
mov dword [0x45b33c], ecx
mov ecx, dword [sym.imp.SHELL32.dll_SHGetPathFromIDListA]
mov dword [0x45b3d4], edx
mov edx, dword [sym.imp.SHELL32.dll_SHBrowseForFolderA]
mov dword [0x45b360], eax
mov eax, dword [0x44f128]
mov dword [0x45b478], ecx
mov ecx, dword [0x44f12c]
mov dword [0x45b468], edx
mov edx, dword [0x44f130]
mov dword [0x45b430], eax
mov eax, dword [0x44f134]
push str.user32.dll
mov dword [0x45b3c4], 0x4443d6
mov dword [0x45b3e4], 0x4443d0
mov dword [0x45b3fc], 0x4408b0
mov dword [0x45b458], 0x440900
mov dword [0x45b310], 0x440860
mov dword [0x45b48c], 0x4441e0
mov dword [0x45b3b4], 0x444356
mov dword [0x45b320], 0x444350
mov dword [0x45b47c], 0x440750
mov dword [0x45b474], ebx
mov dword [0x45b324], ebx
mov dword [0x45b434], ecx
mov dword [0x45b438], edx
mov dword [0x45b43c], eax
call edi
mov edi, eax
push str.GetMonitorInfoA
push edi
call esi
push str.MonitorFromPoint
push edi
mov dword [0x45b420], eax
call esi
pop edi
mov dword [0x45b3cc], eax
pop esi
mov dword [0x45b374], 0x820
mov dword [0x45b344], 1
mov dword [0x45909c], 1
mov dword [0x45b488], 0x455b00
mov dword [0x45b340], 0x4590c4
mov dword [0x45b390], 0x45577c
mov dword [0x45b400], 0x4590bc
mov dword [0x45b3a4], 0x455db4
mov dword [0x45b3ac], 0x4590b8
mov dword [0x45b3d8], 0x4590b4
mov dword [0x45b30c], 0x45591c
mov dword [0x45b3f8], 0x45b008
mov dword [0x45b328], 0x455afc
mov dword [0x45b480], 0x455af8
mov dword [0x45b37c], 0x4590b0
mov dword [0x45b3f4], 0x4590a8
mov dword [0x45b350], 0x4590a0
mov eax, 1
pop ebx
ret