Function at 0x401f80
Capabilities:
Create directory
Get common file path

Disassembly:
push 0xffffffffffffffff
push 0x41d2a2
mov eax, dword fs:[0]
push eax
sub esp, 0x438
mov eax, dword [0x424300]
xor eax, esp
mov dword [esp + 0x434], eax
push ebx
push ebp
push esi
mov eax, dword [0x424300]
xor eax, esp
push eax
lea eax, [esp + 0x448]
mov dword fs:[0], eax
xor eax, eax
mov ebp, 7
xor ebx, ebx
mov dword [edi + 0x18], ebp
mov dword [edi + 0x14], ebx
mov word [edi + 4], ax
push 0x2f
mov eax, str.http:__tool.duowan.com_lol_box_team_loladdr.ini
mov esi, edi
mov dword [esp + 0x18], edi
call fcn.00405870
mov dword [esp + 0x450], ebx
lea ebx, [edi + 0x1c]
xor esi, esi
xor ecx, ecx
mov dword [ebx + 0x18], ebp
mov dword [ebx + 0x14], esi
mov word [ebx + 4], cx
xor edx, edx
mov dword [edi + 0x50], ebp
mov dword [edi + 0x4c], esi
mov word [edi + 0x3c], dx
push 0x104
push esi
mov byte [esp + 0x458], 2
push 0x4265c8
mov dword [edi + 0x54], esi
call fcn.0040fed0
add esp, 0xc
call fcn.00409de0
push 0x4265c8
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp word [eax*2 + 0x4265c8], 0x5c
lea eax, [eax*2 + 0x4265c8]
je 0x40204c
sub eax, 2
cmp word [eax], 0x5c
jne 0x402043
xor ecx, ecx
xor edx, edx
mov word [eax], cx
mov eax, 0x4265c8
mov word [esp + 0x1c], dx
mov dword [esp + 0x30], ebp
mov dword [esp + 0x2c], esi
lea edx, [eax + 2]
jmp 0x402070
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x402070
sub eax, edx
sar eax, 1
push eax
mov eax, 0x4265c8
lea esi, [esp + 0x1c]
call fcn.00405870
push 0x11
mov eax, str.LOLBoxCommon.dll
mov ecx, esi
mov byte [esp + 0x454], 3
call fcn.00405790
mov eax, dword [esp + 0x1c]
mov esi, 8
cmp dword [esp + 0x30], esi
jae 0x4020b7
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x30], esi
jae 0x4020d0
lea ecx, [esp + 0x1c]
push eax
push ecx
push str.__hComm_
push ecx
push ecx
push ecx
push str.comm_path_
push ecx
push 0x4205e0
push 0x4267e0
call fcn.00408230
push eax
call fcn.00408480
add esp, 0x10
push eax
call fcn.00408230
add esp, 0xc
push eax
call fcn.00408230
add esp, 0xc
push eax
call fcn.00408230
add esp, 0xc
push eax
call fcn.00402b90
mov esi, eax
push 0xa
mov ecx, esi
call fcn.00402d10
mov eax, dword [esi]
mov ecx, dword [eax + 4]
lea eax, [ecx + esi]
xor ebp, ebp
test byte [eax + 8], 6
jne 0x40214a
mov eax, dword [eax + 0x28]
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x30]
call eax
cmp eax, 0xffffffff
jne 0x40214a
mov ebp, 4
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
add ecx, esi
test ebp, ebp
je 0x40216b
mov eax, dword [ecx + 8]
or eax, ebp
cmp dword [ecx + 0x28], 0
jne 0x402163
or eax, 4
push 0
push eax
call fcn.00401d80
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4021c3
push str.CounterA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
push ecx
push str.__m_fnCounterA_
push ecx
push str._CAddrData::CAddrData_
push ecx
push str.HZH:
push 0x426870
mov dword [edi + 0x54], eax
call fcn.00408780
add esp, 0xc
push eax
call fcn.00408780
add esp, 0xc
push eax
call fcn.00408780
add esp, 0xc
push eax
call fcn.00402700
push eax
call fcn.004089b0
add esp, 4
xor edx, edx
push 0x206
push edx
lea eax, [esp + 0x3e]
push eax
mov word [esp + 0x40], dx
call fcn.0040fed0
add esp, 0xc
lea ecx, [esp + 0x34]
push ecx
push 0
push 0
push 0x8023
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
jl 0x40224e
lea edx, [esp + 0x34]
push edx
mov eax, edx
push str._sTeamVoiceLol
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
push 0
lea ecx, [esp + 0x38]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHCreateDirectoryExW]
lea eax, [esp + 0x34]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x402223
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0x38]
mov esi, ebx
call fcn.00405870
mov eax, dword [edi + 0x54]
test eax, eax
je 0x40228f
push 1
push str.appdata_S_
jmp 0x402285
call fcn.00409e50
mov ecx, eax
lea esi, [ecx + 2]
jmp 0x402260
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x402260
sub ecx, esi
sar ecx, 1
push ecx
mov esi, ebx
call fcn.00405870
mov eax, dword [edi + 0x54]
test eax, eax
je 0x40228f
push 1
push str.appdata_F_
push str.TeamVoice
call eax
add esp, 0xc
push 0xc
mov eax, 0x42065c
mov ecx, ebx
call fcn.00405790
xor edx, edx
push 0x206
push edx
lea eax, [esp + 0x246]
push eax
mov word [esp + 0x248], dx
call fcn.0040fed0
add esp, 0xc
lea ecx, [esp + 0x23c]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
lea eax, [esp + 0x23c]
lea edx, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4022e0
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0x240]
lea esi, [edi + 0x38]
call fcn.00405870
push 0xb
mov eax, str.loladdr.ini
mov ecx, esi
call fcn.00405790
cmp dword [esp + 0x30], 8
jb 0x402321
mov edx, dword [esp + 0x1c]
push edx
call fcn.0040af4b
add esp, 4
mov eax, edi
mov ecx, dword [esp + 0x448]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x434]
xor ecx, esp
call fcn.0040ad1f
add esp, 0x444
ret