Function at 0x401220
Capabilities:
Create directory
Delete file
Get common file path

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x72c
mov eax, dword [0x4255e0]
push ebx
xor eax, ebp
push esi
push edi
mov dword [esp + 0x734], eax
xor eax, eax
mov byte [esp + 0x228], 0
mov ecx, 0x40
lea edi, [esp + 0x229]
rep stosd dword es:[edi], eax
mov ecx, dword [0x426560]
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x104
lea eax, [esp + 0x22c]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [esp + 0x228]
push 0x41e298
push edx
call fcn.0040e84d
mov esi, eax
add esp, 8
test esi, esi
je 0x401565
mov eax, dword [0x425040]
push 0
push eax
push esi
call fcn.0040eee7
add esp, 0xc
test eax, eax
jne 0x40155c
push esi
push 1
lea ecx, [esp + 0x14]
push 4
push ecx
mov dword [esp + 0x1c], eax
call fcn.0040ee0c
add esp, 0x10
cmp eax, 1
jne 0x40155c
mov eax, dword [esp + 0xc]
cmp eax, 0x20
jge 0x40155c
push esi
push eax
push 1
push 0x4266e4
call fcn.0040ee0c
mov ecx, dword [esp + 0x1c]
add esp, 0x10
cmp ecx, eax
jne 0x40155c
push 0x40
push 0x426704
push 0x4266e4
call fcn.004033b0
push esi
push 1
lea edx, [esp + 0x20]
push 4
push edx
call fcn.0040ee0c
add esp, 0x1c
cmp eax, 1
jne 0x40155c
mov eax, dword [esp + 0xc]
cmp eax, 0x20
jge 0x40155c
push esi
push eax
push 1
push 0x426724
call fcn.0040ee0c
mov ecx, dword [esp + 0x1c]
add esp, 0x10
cmp ecx, eax
jne 0x40155c
push 0x40
push 0x426744
push 0x426724
call fcn.004033b0
add esp, 0xc
lea eax, [esp + 0x18]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
push str.TLBBPatch
lea ecx, [esp + 0x1c]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
push 0
lea edx, [esp + 0x1c]
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push 0x426724
push 0x4266e4
lea eax, [esp + 0x20]
push eax
push str._s_tlbb__s__s.xzip
push 0x104
push 0x426768
call fcn.0040eccc
push 0x41e274
push 0x426768
call fcn.0040e84d
mov ebx, eax
add esp, 0x20
test ebx, ebx
je 0x40155c
mov byte [esp + 0x330], 0
xor eax, eax
mov ecx, 0xff
lea edi, [esp + 0x331]
rep stosd dword es:[edi], eax
push esi
push 0x400
stosw word es:[edi], ax
lea ecx, [esp + 0x338]
push 1
push ecx
stosb byte es:[edi], al
call fcn.0040ee0c
add esp, 0x10
test eax, eax
je 0x401437
push ebx
push eax
lea edx, [esp + 0x338]
push 1
push edx
call fcn.0040ec80
mov al, byte [esi + 0xc]
add esp, 0x10
test al, 0x10
jne 0x401437
push esi
push 0x400
lea eax, [esp + 0x338]
push 1
push eax
call fcn.0040ee0c
add esp, 0x10
test eax, eax
jne 0x401400
push ebx
call fcn.0040e71a
push esi
call fcn.0040e71a
push 0x426724
push 0x4266e4
lea ecx, [esp + 0x28]
push ecx
push str._stlbb_patchinfo__s__s.txt
lea edx, [esp + 0x138]
push 0x104
push edx
call fcn.0040eccc
call fcn.00408d30
mov edi, eax
lea eax, [esp + 0x140]
push eax
push str.Update.txt
push 0x426768
push edi
mov dword [esp + 0x44], edi
call fcn.00401fa0
add esp, 0x30
test al, al
je 0x40153c
lea ecx, [esp + 0x120]
push 0x41e298
push ecx
call fcn.0040e84d
mov esi, eax
add esp, 8
test esi, esi
je 0x40153c
push 2
push 0
push esi
call fcn.0040eee7
push esi
call fcn.0040eb38
push 0
mov edi, eax
push 0
push esi
mov dword [esp + 0x2c], edi
call fcn.0040eee7
inc edi
push edi
call fcn.0040e9c8
mov ebx, eax
mov ecx, edi
mov edx, ecx
shr ecx, 2
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x30]
push esi
push eax
push 1
push ebx
call fcn.0040ee0c
push esi
call fcn.0040e71a
mov ecx, dword [0x426564]
add esp, 0x34
push ebx
push 0
push 0xc
push 0x3e9
push ecx
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push ebx
call fcn.0040e9c3
add esp, 4
lea edx, [esp + 0x120]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov edi, dword [esp + 0x14]
push edi
call fcn.00404650
add esp, 4
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x728]
xor ecx, ebp
call fcn.0040e9b5
mov esp, ebp
pop ebp
ret
push esi
call fcn.0040e71a
add esp, 4
mov ecx, dword [esp + 0x734]
pop edi
pop esi
xor ecx, ebp
xor al, al
pop ebx
call fcn.0040e9b5
mov esp, ebp
pop ebp
ret