Function at 0x4631f0
Capabilities:
Move file

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [str..options]
sub esp, 0x38
push ebx
push edi
call fcn.00469726
mov ebx, eax
xor edi, edi
cmp ebx, edi
je 0x46344c
mov ecx, ebx
call fcn.00447032
test al, al
jne 0x463221
mov ecx, ebx
jmp 0x463447
push esi
call fcn.00410e8f
xor esi, esi
mov dword [ebp - 0x30], edi
mov byte [ebp - 0x2c], 1
mov dword [ebp - 4], esi
mov dword [ebp - 0xc], edi
cmp dword [ebx + 0x18], edi
je 0x46340b
mov dword [ebp - 8], edi
mov edi, 0x4945b8
mov eax, dword [ebx + 0x10]
mov ecx, dword [ebp - 8]
mov esi, dword [ecx + eax]
mov ecx, esi
call fcn.0043ad91
push eax
lea ecx, [ebp - 0x20]
call fcn.0040534e
mov ecx, dword [ebp - 0x20]
test ecx, ecx
jne 0x463269
mov ecx, edi
mov edx, 0x49a534
call fcn.0043a9f9
test al, al
je 0x4633a5
lea eax, [ebp - 0x14]
push eax
mov ecx, esi
call fcn.0043ad91
mov edx, eax
mov ecx, ebx
call fcn.00447063
mov ecx, 0x49a534
mov dword [ebp - 0x10], eax
call fcn.00412380
push eax
lea ecx, [ebp - 0x30]
call fcn.00439f99
mov esi, dword [ebp - 0x30]
mov ecx, esi
test esi, esi
jne 0x4632b0
mov ecx, edi
push dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
call fcn.004461f9
test al, al
je 0x463380
mov ecx, dword [ebp - 4]
and dword [ebp - 0x28], 0
mov byte [ebp - 0x24], 1
test ecx, ecx
je 0x4632e0
call fcn.00410e5b
push dword [ebp - 4]
call fcn.00444599
pop ecx
mov ecx, esi
test esi, esi
jne 0x4632e8
mov ecx, edi
lea edx, [ebp - 0x28]
call fcn.00402da2
mov dword [ebp - 4], eax
test eax, eax
je 0x46334f
mov edx, dword [eax + 0x50]
lea ecx, [ebp - 0x38]
call fcn.00410eca
mov ecx, dword [ebp - 0x38]
test ecx, ecx
jne 0x46330b
mov ecx, edi
mov eax, esi
test esi, esi
jne 0x463313
mov eax, edi
push ecx
push eax
call dword [sym.imp.KERNEL32.DLL_MoveFileW]
test eax, eax
jne 0x46333f
mov ecx, dword [ebp - 0x38]
test ecx, ecx
jne 0x463328
mov ecx, edi
mov eax, esi
test esi, esi
jne 0x463330
mov eax, edi
push ecx
push eax
push str.Failed_to_install_bundled_btapp:__s_to:__s
call fcn.004890f7
add esp, 0xc
cmp byte [ebp - 0x34], 0
je 0x463370
mov ecx, dword [ebp - 0x38]
call fcn.004444cc
jmp 0x463370
mov ecx, dword [ebp - 0x28]
test ecx, ecx
jne 0x463358
mov ecx, edi
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x463361
mov eax, edi
push ecx
push eax
push str.Bundled_btapp___s__is_ill_formed:__s
call fcn.004890f7
add esp, 0xc
cmp byte [ebp - 0x24], 0
je 0x4633a0
mov ecx, dword [ebp - 0x28]
call fcn.004444cc
jmp 0x4633a0
mov ecx, esi
test esi, esi
jne 0x463388
mov ecx, edi
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x463391
mov eax, edi
push ecx
push eax
push str.Failed_to_unpack_bundled_btapp:__s_to:__s
call fcn.004890f7
add esp, 0xc
mov ecx, dword [ebp - 0x10]
jmp 0x4633e0
push str.init_data
lea ecx, [ebp - 0x20]
call fcn.00402d50
test al, al
je 0x4633e5
lea eax, [ebp - 0x18]
push eax
mov ecx, esi
call fcn.0043ad91
mov edx, eax
mov ecx, ebx
call fcn.00447063
mov edx, dword [ebp - 0x18]
mov esi, eax
test edx, edx
je 0x4633de
test esi, esi
je 0x4633de
mov ecx, esi
call fcn.00463029
mov ecx, esi
call fcn.004444cc
cmp byte [ebp - 0x1c], 0
je 0x4633f3
mov ecx, dword [ebp - 0x20]
call fcn.004444cc
inc dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
add dword [ebp - 8], 0x14
cmp eax, dword [ebx + 0x18]
jne 0x463247
mov esi, dword [ebp - 4]
xor edi, edi
mov ecx, ebx
call fcn.00446e71
cmp esi, edi
je 0x463425
mov ecx, dword [esi + 0x50]
call fcn.00444c8a
mov dword [0x4c9b44], eax
jmp 0x46342b
mov dword [0x4c9b44], edi
cmp esi, edi
je 0x46343d
mov ecx, esi
call fcn.00410e5b
push esi
call fcn.00444599
pop ecx
cmp byte [ebp - 0x2c], 0
pop esi
je 0x46344c
mov ecx, dword [ebp - 0x30]
call fcn.004444cc
pop edi
pop ebx
leave
ret