Function at 0x41edbf
Capabilities:
Create directory
Get session user name

Disassembly:
push 0x220
mov eax, 0x4ae58b
call fcn.0046afbc
mov ebx, ecx
mov dword [ebp - 0x224], ebx
push str.Downloading_Manifest:
lea ecx, [ebp - 0x21c]
call fcn.00402829
and dword [ebp - 4], 0
lea edx, [ebp - 0x21c]
push 0
push 2
pop edi
mov ecx, edi
call fcn.00414071
or dword [ebp - 4], 0xffffffff
pop ecx
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.00402e64
push str.___URL:
lea ecx, [ebp - 0x218]
call fcn.00402829
lea eax, [ebx + 0x14]
mov dword [ebp - 4], 1
xor esi, esi
mov dword [ebp - 0x21c], eax
push esi
push eax
lea edx, [ebp - 0x218]
mov ecx, edi
call fcn.00413940
or dword [ebp - 4], 0xffffffff
pop ecx
pop ecx
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.00402e64
push str.___file:
lea ecx, [ebp - 0x218]
call fcn.00402829
mov dword [ebp - 4], edi
lea edx, [ebp - 0x218]
push esi
lea edi, [ebx + 4]
push edi
push 2
pop ecx
call fcn.00413940
or dword [ebp - 4], 0xffffffff
pop ecx
pop ecx
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.00402e64
push edi
push str.UpdateManifestPath
call fcn.0041ebce
test eax, eax
jne 0x41eea3
inc eax
jmp 0x41f3f8
push edi
call fcn.0041dcdc
test eax, eax
jne 0x41ef95
push 0x202
lea eax, [ebp - 0x214]
push esi
push eax
call fcn.00483730
add esp, 0xc
mov dword [ebp - 0x220], 0x101
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
test eax, eax
je 0x41f0de
lea eax, [ebp - 0x214]
push eax
call fcn.00486e3d
pop ecx
push eax
lea eax, [ebp - 0x214]
lea esi, [ebx + 8]
push eax
mov ecx, esi
call fcn.004025c6
push 0
push dword [esi]
push 0
call dword [sym.imp.SHELL32.dll_SHCreateDirectoryExW]
mov dword [ebp - 0x228], eax
cmp eax, 0xa1
je 0x41f078
cmp eax, 3
je 0x41f078
push 0x5c
mov ecx, esi
call fcn.004241db
push esi
mov ecx, edi
call fcn.00402e14
mov eax, dword [ebx + 0x18]
mov ecx, edi
push dword [eax - 0xc]
push eax
call fcn.004025c6
push edi
call fcn.0041dcdc
test eax, eax
jne 0x41ef91
push eax
push str.InitDlManifestError
call fcn.004032da
push str.Cannot_continue_manifest_download__CleanDestinationPath_failed
lea ecx, [ebp - 0x218]
call fcn.00402829
xor ecx, ecx
mov dword [ebp - 4], 4
push 0
lea edx, [ebp - 0x218]
inc ecx
call fcn.00414071
jmp 0x41f0b1
mov byte [ebx + 0x1c], 0
mov ebx, dword [ebp - 0x21c]
push dword [ebx]
call dword [sym.imp.WININET.dll_DeleteUrlCacheEntryW]
mov edx, dword [ebx]
xor esi, esi
cmp dword [0x518e04], esi
mov ecx, 0x1d4c0
mov eax, 0x927c0
mov dword [ebp - 0x220], 1
cmovne eax, ecx
mov ecx, edi
push eax
lea eax, [ebp - 0x220]
push eax
call fcn.0041bf30
pop ecx
pop ecx
push esi
cmp eax, 6
jne 0x41f1a8
push str.DownloadManifestSuccessBITS
call fcn.004032da
push str.BITs_download_success:
lea ecx, [ebp - 0x218]
call fcn.00402829
push esi
push edi
push 2
lea edx, [ebp - 0x218]
mov dword [ebp - 4], 7
pop ecx
call fcn.00413940
or dword [ebp - 4], 0xffffffff
pop ecx
pop ecx
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.00402e64
mov ecx, dword [edi]
or edx, 0xffffffff
push str.2_16_17_18_19_52_53_54_63_68_81_82_83_84_85_86_87_88_89_90_91_92_93_97
call fcn.0042b4d8
pop ecx
test eax, eax
jne 0x41f152
mov ebx, 0x519278
inc esi
mov ecx, ebx
call fcn.00411f96
push str.valid_after_BITs_download:
lea ecx, [ebp - 0x218]
call fcn.00402829
push 0
push edi
push 2
lea edx, [ebp - 0x218]
mov dword [ebp - 4], 9
pop ecx
call fcn.00413940
pop ecx
pop ecx
jmp 0x41f1e8
push 0
push str.InitDlManifestError
call fcn.004032da
push str.SHCreateDirectoryEx___failed:
lea ecx, [ebp - 0x218]
call fcn.00402829
mov dword [ebp - 4], 3
lea edx, [ebp - 0x218]
push dword [ebp - 0x228]
xor ecx, ecx
push esi
inc ecx
call fcn.00413940
pop ecx
or dword [ebp - 4], 0xffffffff
pop ecx
mov ecx, dword [ebp - 0x218]
add ecx, 0xfffffff0
call fcn.00402e64
push ecx
mov ecx, esp
push str.initdlmanifest
call fcn.00402829
call fcn.0044e528
pop ecx
xor eax, eax
jmp 0x41f3f8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0
push str.InitDlManifestError
mov esi, eax
call fcn.004032da
push str.GetUserName_failed
lea ecx, [ebp - 0x21c]
call fcn.00402829
push str.Cannot_continue_manifest_download_
lea ecx, [ebp - 0x218]
mov dword [ebp - 4], 5
call fcn.00402829
lea eax, [ebp - 0x21c]
mov byte [ebp - 4], 6
xor ecx, ecx
lea edx, [ebp - 0x218]
push esi
push eax
inc ecx
call fcn.00413940
pop ecx
pop ecx
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.00402e64
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x21c]
jmp 0x41f0bc
push str.manifest_invalid_after_BITs_download
lea ecx, [ebp - 0x218]
call fcn.00402829
mov dword [ebp - 4], 0xa
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x218]
mov ebx, 0x519278
push eax
push 0x1fc98
mov ecx, ebx
call fcn.00411fc6
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.00402e64
push 0
push str.SignatureValidationError
call fcn.004032da
jmp 0x41f1fa
push str.DownloadManifestErrorBITS
call fcn.004032da
push str.BITs_failed__download_manifest_Job_is_not_in_Transferred_state
lea ecx, [ebp - 0x218]
call fcn.00402829
mov dword [ebp - 4], 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x218]
mov ebx, 0x519278
push eax
push 0x2240c
mov ecx, ebx
call fcn.00411fc6
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.00402e64
cmp dword [0x518e18], 0
jne 0x41f0d7
test esi, esi
jne 0x41f3cd
call fcn.00451171
push eax
lea ecx, [ebp - 0x22c]
call fcn.00402899
push str.IDS_TITLE_CHECKING
lea ecx, [ebp - 0x218]
mov dword [ebp - 4], 0xb
call fcn.00402829
lea eax, [ebp - 0x22c]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x218]
mov esi, 0x518d30
push eax
mov ecx, esi
call fcn.0040cabc
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.00402e64
lea eax, [ebp - 0x22c]
mov ecx, esi
push eax
call fcn.0040c1df
mov ecx, dword [ebp - 0x224]
xor eax, eax
push eax
push eax
push eax
push dword [ebp - 0x21c]
push edi
call fcn.004219c6
mov esi, eax
push 0
test esi, esi
je 0x41f373
push str.DownloadManifestSuccessWinINet
call fcn.004032da
mov ecx, dword [edi]
or edx, 0xffffffff
push str.2_16_17_18_19_52_53_54_63_68_81_82_83_84_85_86_87_88_89_90_91_92_93_97
call fcn.0042b4d8
mov dword [ebp - 0x220], eax
pop ecx
test eax, eax
je 0x41f340
xor esi, esi
push esi
push str.SignatureValidationError
call fcn.004032da
push str.invalid_after_BB_download:
lea ecx, [ebp - 0x218]
call fcn.00402829
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x218]
push dword [ebp - 0x220]
xor ecx, ecx
push edi
inc ecx
call fcn.00413940
pop ecx
pop ecx
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.00402e64
push str.manifest_invalid_after_BB_download
lea ecx, [ebp - 0x218]
call fcn.00402829
mov byte [ebp - 4], 0xe
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x218]
mov ecx, ebx
push eax
push 0x1fc98
call fcn.00411fc6
mov ecx, dword [ebp - 0x218]
jmp 0x41f3af
mov ecx, ebx
call fcn.00411f96
xor esi, esi
lea ecx, [ebp - 0x218]
push str.valid_after_BB_download:
inc esi
call fcn.00402829
push 0
push edi
push 2
lea edx, [ebp - 0x218]
mov byte [ebp - 4], 0xf
pop ecx
call fcn.00413940
pop ecx
pop ecx
jmp 0x41f338
push str.DownloadManifestErrorWinINet
call fcn.004032da
push str.BB_download_failed:
lea ecx, [ebp - 0x228]
call fcn.00402829
mov byte [ebp - 4], 0x10
lea edx, [ebp - 0x228]
push 0
push dword [ebp - 0x21c]
xor ecx, ecx
inc ecx
call fcn.00413940
pop ecx
pop ecx
mov ecx, dword [ebp - 0x228]
lea ecx, [ecx - 0x10]
call fcn.00402e64
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x22c]
add ecx, 0xfffffff0
call fcn.00402e64
test esi, esi
je 0x41f3e3
mov ecx, dword [ebp - 0x224]
call fcn.004207e9
xor ecx, ecx
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x41f3f6
push ecx
mov ecx, esp
push str.dlmanifest
call fcn.00402829
call fcn.0044e528
pop ecx
mov eax, esi
call fcn.0046af66
ret