Function at 0x43daf0
Capabilities:
Get common file path
Get startup folder

Disassembly:
push 0xffffffffffffffff
push 0x4ba834
mov eax, dword fs:[0]
push eax
sub esp, 0x390
mov eax, dword [0x4e44b4]
xor eax, esp
mov dword [esp + 0x388], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4e44b4]
xor eax, esp
push eax
lea eax, [esp + 0x3a4]
mov dword fs:[0], eax
mov eax, dword [esp + 0x3b4]
xor ebx, ebx
lea ebp, [eax + 0x30]
mov dword [esp + 0x14], ebx
mov esi, dword [ebp + 4]
cmp esi, dword [ebp + 8]
jbe 0x43db48
call fcn.00496100
mov edi, dword [ebp + 8]
cmp dword [ebp + 4], edi
jbe 0x43db55
call fcn.00496100
cmp ebp, ebp
je 0x43db5e
call fcn.00496100
cmp esi, edi
je 0x43de76
cmp esi, dword [ebp + 8]
jb 0x43db70
call fcn.00496100
push 9
push ebx
push str._appdata_
mov ecx, esi
call fcn.00411510
or edi, 0xffffffff
cmp eax, edi
je 0x43dc67
lea ecx, [esp + 0x178]
call fcn.00475600
lea eax, [esp + 0x178]
push eax
push 0x6c
mov dword [esp + 0x3b4], ebx
call fcn.00476de0
add esp, 8
push 9
push str._appdata_
lea ecx, [esp + 0x20]
mov dword [esp + 0x38], 0xf
mov dword [esp + 0x34], ebx
mov byte [esp + 0x24], bl
call fcn.00402d90
lea ecx, [esp + 0x178]
push ecx
lea edx, [esp + 0x38]
push edx
mov byte [esp + 0x3b4], 1
call fcn.00473880
add esp, 8
mov edi, eax
mov byte [esp + 0x3ac], 2
cmp esi, dword [ebp + 8]
jb 0x43dc00
call fcn.00496100
push edi
lea eax, [esp + 0x1c]
push eax
push ebx
push esi
call fcn.0047e8c0
mov edi, 0x10
add esp, 0x10
cmp dword [esp + 0x4c], edi
jb 0x43dc28
mov ecx, dword [esp + 0x38]
push ecx
call fcn.00495fd1
add esp, 4
cmp dword [esp + 0x30], edi
mov dword [esp + 0x4c], 0xf
mov dword [esp + 0x48], ebx
mov byte [esp + 0x38], bl
jb 0x43dc4b
mov edx, dword [esp + 0x1c]
push edx
call fcn.00495fd1
add esp, 4
lea ecx, [esp + 0x178]
mov dword [esp + 0x3ac], 0xffffffff
call fcn.00475620
jmp 0x43de64
cmp esi, dword [ebp + 8]
jb 0x43dc71
call fcn.00496100
push 8
push ebx
push 0x4c9acc
mov ecx, esi
call fcn.00411510
cmp eax, edi
je 0x43dde3
push 0x206
lea eax, [esp + 0x19a]
push ebx
push eax
mov word [esp + 0x1a0], bx
call fcn.00499a30
add esp, 0xc
lea ecx, [esp + 0x194]
push ecx
push ebx
push ebx
push 0x2b
push ebx
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea eax, [esp + 0x194]
mov dword [esp + 0x4c], 7
mov dword [esp + 0x48], ebx
mov word [esp + 0x38], bx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x43dcd4
sub eax, edx
sar eax, 1
push eax
lea edx, [esp + 0x198]
push edx
lea ecx, [esp + 0x3c]
call fcn.00405680
mov dword [esp + 0x3ac], 3
push 8
push 0x4c9acc
lea ecx, [esp + 0x20]
mov dword [esp + 0x38], 0xf
mov dword [esp + 0x34], ebx
mov byte [esp + 0x24], bl
call fcn.00402d90
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x17c]
push ecx
mov byte [esp + 0x3b4], 4
call fcn.00473880
add esp, 8
mov edi, eax
mov byte [esp + 0x3ac], 5
cmp esi, dword [ebp + 8]
jb 0x43dd51
call fcn.00496100
push edi
lea edx, [esp + 0x1c]
push edx
push ebx
push esi
call fcn.0047e8c0
mov edi, 0x10
add esp, 0x10
cmp dword [esp + 0x190], edi
jb 0x43dd7f
mov eax, dword [esp + 0x17c]
push eax
call fcn.00495fd1
add esp, 4
cmp dword [esp + 0x30], edi
mov dword [esp + 0x190], 0xf
mov dword [esp + 0x18c], ebx
mov byte [esp + 0x17c], bl
jb 0x43ddab
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.00495fd1
add esp, 4
mov dword [esp + 0x3ac], 0xffffffff
cmp dword [esp + 0x4c], 8
mov dword [esp + 0x30], 0xf
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
jb 0x43de64
mov edx, dword [esp + 0x38]
push edx
call fcn.00495fd1
add esp, 4
jmp 0x43de64
mov dword [esp + 0x3ac], edi
test byte [esp + 0x14], 1
je 0x43de02
and dword [esp + 0x14], 0xfffffffe
lea ecx, [esp + 0xe4]
call fcn.00472c30
cmp dword [0x4e8f68], 1
jne 0x43de48
call fcn.004722e0
cmp eax, 3
jg 0x43de48
push 3
push 0x4f
push str.R:BuildWorkTempQQ1.87HummerPack4921AutoProject_setup3HummerSetup7zFilePathCallback.cpp
lea ecx, [esp + 0x5c]
call fcn.00473160
add eax, 4
push str.Check_failed:_false.
mov dword [esp + 0x3b0], 7
or dword [esp + 0x18], 2
push eax
call fcn.004041d0
add esp, 8
mov dword [esp + 0x3ac], edi
test byte [esp + 0x14], 2
je 0x43de64
and dword [esp + 0x14], 0xfffffffd
lea ecx, [esp + 0x50]
call fcn.00472c30
cmp esi, dword [ebp + 8]
jb 0x43de6e
call fcn.00496100
add esi, 0x1c
jmp 0x43db48
mov ecx, dword [esp + 0x3a4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x388]
xor ecx, esp
call fcn.00495cb8
add esp, 0x39c
ret 4