Function at 0x4618e9
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [str..options]
sub esp, 0x28
push ebx
push esi
call fcn.00473aa3
mov esi, eax
xor ebx, ebx
cmp esi, ebx
je 0x461b33
mov ecx, esi
call fcn.004debf5
test al, al
jne 0x46191f
mov ecx, esi
call fcn.004de9fd
jmp 0x461b33
push edi
mov ecx, 0x4f3840
call fcn.0048880a
push ebx
push eax
call dword [sym.imp.KERNEL32.DLL_CreateDirectoryW]
lea ecx, [ebp - 4]
call fcn.0044502c
xor edi, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], ebx
cmp dword [esi + 0x18], ebx
je 0x461aff
mov dword [ebp - 0x14], ebx
mov ebx, str..btapp
mov eax, dword [esi + 0x10]
mov ecx, dword [ebp - 0x14]
mov edi, dword [ecx + eax]
mov ecx, edi
call fcn.0048bfe7
push eax
lea ecx, [ebp - 8]
call fcn.0048e7e6
lea ecx, [ebp - 8]
call fcn.0048e806
mov edx, ebx
mov ecx, eax
call fcn.0048d60c
test al, al
je 0x461a9d
lea eax, [ebp - 0x20]
push eax
mov ecx, edi
call fcn.0048bfe7
mov edx, eax
mov ecx, esi
call fcn.004dec35
xor edx, edx
mov ecx, ebx
mov edi, eax
call fcn.00472575
push eax
lea ecx, [ebp - 4]
call fcn.0048e513
push dword [ebp - 0x20]
lea ecx, [ebp - 4]
call fcn.0048e806
mov edx, edi
mov ecx, eax
call fcn.004a4926
test al, al
je 0x461a7c
lea ecx, [ebp - 0x10]
call fcn.0044502c
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 4]
call fcn.0048e806
mov edx, eax
lea ecx, [ebp - 0x24]
call fcn.004038fe
push eax
lea ecx, [ebp - 0x1c]
call fcn.0041d6a7
mov ecx, dword [ebp - 0x24]
test ecx, ecx
je 0x4619fc
call fcn.004022c4
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x461a53
mov edx, dword [eax + 0x34]
lea ecx, [ebp - 0xc]
call fcn.0041cccb
lea ecx, [ebp - 0xc]
call fcn.0048e806
push eax
lea ecx, [ebp - 4]
call fcn.0048e806
push eax
call dword [sym.imp.KERNEL32.DLL_MoveFileW]
test eax, eax
jne 0x461a49
lea ecx, [ebp - 0xc]
call fcn.0048e806
push eax
lea ecx, [ebp - 4]
call fcn.0048e806
push eax
push str.Failed_to_install_bundled_btapp:__s_to:__s
call fcn.0041ff68
add esp, 0xc
lea ecx, [ebp - 0xc]
call fcn.0048e50a
jmp 0x461a72
lea ecx, [ebp - 0x10]
call fcn.0048e806
push eax
lea ecx, [ebp - 8]
call fcn.0048e806
push eax
push str.Bundled_btapp___s__is_ill_formed:__s
call fcn.0041ff68
add esp, 0xc
lea ecx, [ebp - 0x10]
call fcn.0048e50a
jmp 0x461ad6
lea ecx, [ebp - 4]
call fcn.0048e806
push eax
lea ecx, [ebp - 8]
call fcn.0048e806
push eax
push str.Failed_to_unpack_bundled_btapp:__s_to:__s
call fcn.0041ff68
add esp, 0xc
jmp 0x461ad6
push str.init_data
lea ecx, [ebp - 8]
call fcn.0048e90e
test al, al
je 0x461adf
lea eax, [ebp - 0x28]
push eax
mov ecx, edi
call fcn.0048bfe7
mov edx, eax
mov ecx, esi
call fcn.004dec35
mov edx, dword [ebp - 0x28]
mov edi, eax
test edx, edx
je 0x461ad6
test edi, edi
je 0x461ad6
mov ecx, edi
call fcn.0045e8c8
mov dl, 1
mov ecx, edi
call fcn.0046b197
lea ecx, [ebp - 8]
call fcn.0048e50a
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
add dword [ebp - 0x14], 0x14
cmp eax, dword [esi + 0x18]
jne 0x461953
mov edi, dword [ebp - 0x1c]
xor ebx, ebx
mov ecx, esi
call fcn.004de9fd
cmp edi, ebx
je 0x461b19
mov ecx, dword [edi + 0x34]
call fcn.004223a5
mov dword [0x54bba4], eax
jmp 0x461b1f
mov dword [0x54bba4], ebx
cmp edi, ebx
je 0x461b2a
mov ecx, edi
call fcn.004022c4
lea ecx, [ebp - 4]
call fcn.0048e50a
pop edi
pop esi
pop ebx
leave
ret