Function at 0x40b069
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2d0
mov eax, dword [0x445060]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x2c8]
push ebx
push esi
push edi
mov dword [ebp - 0x2b8], edx
mov dword [ebp - 0x2bc], eax
call sym.FBAs.exe_public:_void___thiscall_TIni::constructor_void_
xor eax, eax
xor ebx, ebx
push 0x206
mov word [ebp - 0x224], ax
lea eax, [ebp - 0x222]
push ebx
push eax
call fcn.00413ea0
add esp, 0xc
lea eax, [ebp - 0x224]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push 0xf
pop edi
lea ecx, [ebp - 0x224]
mov dword [ebp - 0x270], edi
mov dword [ebp - 0x274], ebx
lea edx, [ecx + 2]
mov byte [ebp - 0x284], bl
mov esi, ebx
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x40b0eb
sub ecx, edx
sar ecx, 1
je 0x40b12f
movzx eax, byte [ebp + esi*2 - 0x224]
lea ecx, [ebp - 0x284]
push eax
push 1
call fcn.00404c29
lea ecx, [ebp - 0x224]
inc esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x40b11c
sub ecx, edx
sar ecx, 1
cmp esi, ecx
jb 0x40b0fc
push str.__Config.ini
lea edx, [ebp - 0x284]
lea ecx, [ebp - 0x29c]
call fcn.00401c2d
lea ecx, [ebp - 0x23c]
mov dword [ebp - 0x258], edi
mov dword [ebp - 0x25c], ebx
mov byte [ebp - 0x26c], bl
mov dword [esp], 0x4275c8
call fcn.00401f3f
lea eax, [ebp - 0x23c]
push eax
lea edx, [ebp - 0x26c]
lea ecx, [ebp - 0x29c]
call fcn.0040a6c6
pop ecx
push 0
push 1
lea ecx, [ebp - 0x23c]
mov bl, al
call fcn.00402153
test bl, bl
je 0x40b2cc
lea eax, [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x2c8]
call sym.FBAs.exe_public:_void___thiscall_TIni::LoadFromStream_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__
xor eax, eax
lea edi, [ebp - 0x1b]
xor ebx, ebx
mov byte [ebp - 0x1c], bl
stosd dword es:[edi], eax
push 0x10
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x1c]
push eax
push 0x80000002
call fcn.0040d9f8
add esp, 0xc
lea eax, [ebp - 0x1c]
lea ecx, [ebp - 0x2b4]
push 0x4275cc
push eax
call fcn.00401f3f
mov edx, eax
lea ecx, [ebp - 0x23c]
call fcn.00408283
pop ecx
push 0xffffffffffffffff
push ebx
push dword [ebp - 0x2b8]
mov ecx, eax
call fcn.00401d57
push eax
lea ecx, [ebp - 0x254]
mov dword [ebp - 0x240], 0xf
mov dword [ebp - 0x244], ebx
mov byte [ebp - 0x254], bl
call fcn.00401e20
push ebx
push 1
lea ecx, [ebp - 0x23c]
call fcn.00402153
push ebx
push 1
lea ecx, [ebp - 0x2b4]
call fcn.00402153
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x2c8]
call sym.FBAs.exe_public:_bool___thiscall_TIni::HasSection_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__
test al, al
je 0x40b2b9
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x2c4]
call sym.FBAs.exe___A__map_V__basic_string_DU__char_traits_D_std__V__allocator_D_2__std__V__vector_U__pair_V__basic_string_DU__char_tra
push eax
lea ecx, [ebp - 0x230]
call fcn.004068a3
mov esi, dword [ebp - 0x230]
cmp esi, dword [ebp - 0x22c]
je 0x40b2ae
mov edi, dword [ebp - 0x2bc]
push esi
mov ecx, edi
call fcn.00406aba
lea ecx, [esi + 0x18]
cmp eax, ecx
je 0x40b2a3
push 0xffffffffffffffff
push ebx
push ecx
mov ecx, eax
call fcn.004021fa
add esi, 0x30
cmp esi, dword [ebp - 0x22c]
jne 0x40b289
lea ecx, [ebp - 0x230]
call fcn.00406cbd
push 0
push 1
lea ecx, [ebp - 0x254]
mov bl, 1
call fcn.00402153
jmp 0x40b2ce
xor bl, bl
push 0
push 1
lea ecx, [ebp - 0x26c]
call fcn.00402153
push 0
push 1
lea ecx, [ebp - 0x29c]
call fcn.00402153
push 0
push 1
lea ecx, [ebp - 0x284]
call fcn.00402153
lea ecx, [ebp - 0x2c4]
mov dword [ebp - method.TIni.virtual_0], vtable.TIni.0
call sym.FBAs.exe___1___Tree_V___Tmap_traits_V__basic_string_DU__char_traits_D_std__V__allocator_D_2__std__V__vector_U__pair_V__basic_s
mov ecx, dword [ebp - 8]
mov al, bl
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0040c1f3
mov esp, ebp
pop ebp
ret