Function at 0x504050
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5afd6b
mov eax, dword fs:[0]
push eax
mov eax, 0x181c
call fcn.00587f10
mov eax, dword [0x629688]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor eax, eax
push 0x7fe
push eax
mov word [ebp - 0x1810], ax
lea eax, [ebp - 0x180e]
push eax
call fcn.005877c0
add esp, 0xc
lea eax, [ebp - 0x1810]
push 0x400
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0x3ff
lea eax, [ebp - 0x40f]
push 0
push eax
mov byte [ebp - 0x410], 0
call fcn.005877c0
add esp, 0xc
lea eax, [ebp - 0x410]
push 0
push 0
push 0x400
push eax
push 0xffffffffffffffff
lea eax, [ebp - 0x1810]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea eax, [ebp - 0x410]
push 0x5c
push eax
call fcn.00587dd0
add esp, 8
test eax, eax
je 0x504122
lea ecx, [ebp - 0x410]
sub eax, ecx
cmp eax, 0x400
jae 0x50414a
mov byte [ebp + eax - 0x410], 0
cmp byte [ebp - 0x410], 0
mov dword [ebp - 0x1814], 0xf
mov dword [ebp - 0x1818], 0
mov byte [ebp - 0x1828], 0
jne 0x50414f
xor ecx, ecx
jmp 0x504161
call fcn.005862b0
lea ecx, [ebp - 0x410]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x504158
sub ecx, edx
push ecx
lea eax, [ebp - 0x410]
push eax
lea ecx, [ebp - 0x1828]
call fcn.004082e0
push 1
push 0x5e0864
lea ecx, [ebp - 0x1828]
mov dword [ebp - 4], 0
call fcn.00414c60
push 2
push 0x5f562c
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 1
push 0x5e0864
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 2
push 0x5c3614
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 1
push 0x5e0864
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 0xb
push str.axlibv7.dll
lea ecx, [ebp - 0x1828]
call fcn.00414c60
xor eax, eax
push 0x7fe
push eax
mov word [ebp - 0x1010], ax
lea eax, [ebp - 0x100e]
push eax
call fcn.005877c0
mov esi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
add esp, 0xc
cmp dword [ebp - 0x1814], 0x10
push 0x400
lea ecx, [ebp - 0x1010]
push ecx
push dword [ebp - 0x1818]
lea eax, [ebp - 0x1828]
cmovae eax, dword [ebp - 0x1828]
push eax
push 0
push 0xfde9
call esi
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryW]
lea eax, [ebp - 0x1010]
push eax
call edi
mov dword [0x62f824], eax
test eax, eax
jne 0x5044b9
push str.Failed_to_load_axlibv7.dll__trying_again
push dword [0x61acf8]
push 4
push str.AXFBLicensing
push dword [0x62f85c]
call fcn.00525c50
add esp, 0x14
cmp byte [ebp - 0x410], 0
jne 0x504284
xor ecx, ecx
jmp 0x504299
lea ecx, [ebp - 0x410]
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x504290
sub ecx, edx
push ecx
lea eax, [ebp - 0x410]
push eax
lea ecx, [ebp - 0x1828]
call fcn.004082e0
push 1
push 0x5e0864
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 0xb
push str.axlibv7.dll
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 0x800
lea eax, [ebp - 0x1010]
push 0
push eax
call fcn.005877c0
add esp, 0xc
cmp dword [ebp - 0x1814], 0x10
push 0x400
lea ecx, [ebp - 0x1010]
push ecx
push dword [ebp - 0x1818]
lea eax, [ebp - 0x1828]
cmovae eax, dword [ebp - 0x1828]
push eax
push 0
push 0xfde9
call esi
lea eax, [ebp - 0x1010]
push eax
call edi
mov dword [0x62f824], eax
test eax, eax
jne 0x5044b9
push str.Failed_to_load_axlibv7.dll__trying_again_with_axlib_in_ACF
push dword [0x61acf8]
push 4
push str.AXFBLicensing
push dword [0x62f85c]
call fcn.00525c50
push 0x3ff
lea eax, [ebp - 0x80f]
push 0
push eax
mov byte [ebp - 0x810], 0
call fcn.005877c0
lea eax, [ebp - 0x810]
push 0
push eax
call fcn.004016a0
add esp, 0x28
cmp byte [ebp - 0x810], 0
jne 0x504381
xor ecx, ecx
jmp 0x504399
lea ecx, [ebp - 0x810]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x504390
sub ecx, edx
push ecx
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x1828]
call fcn.004082e0
push 1
push 0x5e0864
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 4
push str.OOBE
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 1
push 0x5e0864
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 5
push str.PDApp
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 1
push 0x5e0864
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 2
push 0x5c3614
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 1
push 0x5e0864
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 0xb
push str.axlibv7.dll
lea ecx, [ebp - 0x1828]
call fcn.00414c60
push 0x800
lea eax, [ebp - 0x1010]
push 0
push eax
call fcn.005877c0
add esp, 0xc
cmp dword [ebp - 0x1814], 0x10
push 0x400
lea ecx, [ebp - 0x1010]
push ecx
push dword [ebp - 0x1818]
lea eax, [ebp - 0x1828]
cmovae eax, dword [ebp - 0x1828]
push eax
push 0
push 0xfde9
call esi
lea eax, [ebp - 0x1010]
push eax
call edi
mov dword [0x62f824], eax
test eax, eax
jne 0x5044b9
push str.Failed_to_load_axlibv7.dll_from_ACF
push dword [0x61acf8]
push 4
push str.AXFBLicensing
push dword [0x62f85c]
call fcn.00525c50
add esp, 0x14
jmp 0x504653
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.AXLibCreateRef
push eax
call esi
push str.AXLibReleaseRef
push dword [0x62f824]
mov dword [0x62f828], eax
call esi
push str.LoadLicenseForSuiteProducts
push dword [0x62f824]
mov dword [0x62f82c], eax
call esi
push str.RemoveLicenseForSuiteProducts
push dword [0x62f824]
mov dword [0x62f830], eax
call esi
push str.IsProductAlreadyLicensed
push dword [0x62f824]
mov dword [0x62f838], eax
call esi
push str.SetEULAEntriesForAXFB
push dword [0x62f824]
mov dword [0x62f834], eax
call esi
push str.RemoveEULAEntriesForAXFB
push dword [0x62f824]
mov dword [0x62f83c], eax
call esi
push str.IsProductWithLEIDLicensedByMagicSN
push dword [0x62f824]
mov dword [0x62f840], eax
call esi
push str.SetAdobeIDEntriesForTrial
push dword [0x62f824]
mov dword [0x62f844], eax
call esi
push str.RemoveAdobeIDEntriesForTrial
push dword [0x62f824]
mov dword [0x62f84c], eax
call esi
push str.LoadLicenseForSuiteProductsForLEIDAndSN
push dword [0x62f824]
mov dword [0x62f848], eax
call esi
push str.RemoveLicenseForSuiteProductsForLEIDAndSN
push dword [0x62f824]
mov dword [0x62f850], eax
call esi
cmp dword [0x62f828], 0
mov dword [0x62f854], eax
je 0x504603
cmp dword [0x62f82c], 0
je 0x504603
cmp dword [0x62f830], 0
je 0x504603
cmp dword [0x62f838], 0
je 0x504603
cmp dword [0x62f834], 0
je 0x504603
cmp dword [0x62f83c], 0
je 0x504603
cmp dword [0x62f840], 0
je 0x504603
cmp dword [0x62f844], 0
je 0x504603
cmp dword [0x62f84c], 0
je 0x504603
cmp dword [0x62f848], 0
je 0x504603
cmp dword [0x62f850], 0
je 0x504603
test eax, eax
je 0x504603
push str.All_function_pointers_successfully_retrieved
jmp 0x504499
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Last_error_is_:__d
push dword [0x61acf8]
push 4
push str.AXFBLicensing
push dword [0x62f85c]
call fcn.00525c50
push str.Failed_to_get_function_pointers_from_new_lib
push dword [0x61acf8]
push 4
push str.AXFBLicensing
push dword [0x62f85c]
call fcn.00525c50
add esp, 0x2c
push dword [0x62f824]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [ebp - 0x1814], 0x10
jb 0x50466a
push dword [ebp - 0x1828]
call fcn.0058603b
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00586d1b
mov esp, ebp
pop ebp
ret