Function at 0x100163a0
Capabilities:
Get common file path

Disassembly:
mov eax, 0x10182fb3
call fcn.10098054
sub esp, 0x14c
and dword [ebp - 0x54], 0
push ebx
push edi
mov ecx, dword [ebp + 0xc]
push 1
pop ebx
cmp dword [ecx - 0xc], 0
lea eax, [ecx - 0xc]
mov dword [ebp - 4], ebx
jl 0x100163d4
push eax
mov dword [ebp - 0x1c], ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp 0x100163e5
mov eax, dword [0x101bf0e0]
push ecx
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
call fcn.100012ef
push esi
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x18], eax
and byte [ebp - 0x158], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x157]
mov esi, 0x104
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x158]
push esi
push eax
mov byte [ebp - 4], 3
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
lea eax, [ebp - 0x158]
test eax, eax
je 0x10016433
lea eax, [ebp - 0x158]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
lea ecx, [ebp - 0x158]
push ecx
push eax
lea ecx, [ebp - 0x18]
call fcn.10004761
mov eax, dword [0x101bf0e0]
push ebx
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], eax
call fcn.100011f7
test eax, eax
je 0x10016466
push ebx
push 0x5c
push dword [ebp - 0x14]
call fcn.10098520
add esp, 0xc
lea eax, [ebp - 0x10]
push ebx
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 4
call fcn.10006d6c
push dword [ebp - 0x14]
mov eax, dword [eax]
push eax
call fcn.10098e13
mov ebx, eax
pop ecx
neg ebx
pop ecx
sbb bl, bl
lea ecx, [ebp - 0x10]
inc bl
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 3
call fcn.10001469
test bl, bl
je 0x100164b6
mov eax, dword [ebp - 0x18]
push 1
lea ecx, [ebp - 0x18]
mov eax, dword [eax - 8]
dec eax
push eax
call fcn.100053a1
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x24], eax
and byte [ebp - 0x158], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x157]
mov byte [ebp - 4], 5
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x158]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea eax, [ebp - 0x158]
test eax, eax
je 0x100164fe
lea eax, [ebp - 0x158]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
lea ecx, [ebp - 0x158]
push ecx
push eax
lea ecx, [ebp - 0x24]
call fcn.10004761
mov eax, dword [0x101bf0e0]
push 1
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], eax
call fcn.100011f7
test eax, eax
je 0x10016533
push 1
push 0x5c
push dword [ebp - 0x14]
call fcn.10098520
add esp, 0xc
lea eax, [ebp - 0x10]
push 1
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 6
call fcn.10006d6c
push dword [ebp - 0x14]
mov eax, dword [eax]
push eax
call fcn.10098e13
mov ebx, eax
pop ecx
neg ebx
pop ecx
sbb bl, bl
lea ecx, [ebp - 0x10]
inc bl
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 5
call fcn.10001469
test bl, bl
je 0x10016584
mov eax, dword [ebp - 0x24]
push 1
lea ecx, [ebp - 0x24]
mov eax, dword [eax - 8]
dec eax
push eax
call fcn.100053a1
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x20], eax
and byte [ebp - 0x158], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x157]
push esi
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x158]
mov byte [ebp - 4], 7
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea eax, [ebp - 0x158]
test eax, eax
jne 0x100165c7
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
jmp 0x100165d6
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [ebp - 0x158]
push eax
call esi
lea ecx, [ebp - 0x158]
push ecx
push eax
lea ecx, [ebp - 0x20]
call fcn.10004761
mov eax, dword [0x101bf0e0]
push 1
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], eax
call fcn.100011f7
test eax, eax
je 0x1001660b
push 1
push 0x5c
push dword [ebp - 0x14]
call fcn.10098520
add esp, 0xc
lea eax, [ebp - 0x10]
push 1
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 8
call fcn.10006d6c
push dword [ebp - 0x14]
mov eax, dword [eax]
push eax
call fcn.10098e13
mov ebx, eax
pop ecx
neg ebx
pop ecx
sbb bl, bl
lea ecx, [ebp - 0x10]
inc bl
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 7
call fcn.10001469
test bl, bl
je 0x1001665c
mov eax, dword [ebp - 0x20]
push 1
lea ecx, [ebp - 0x20]
mov eax, dword [eax - 8]
dec eax
push eax
call fcn.100053a1
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x10]
push 0
push eax
mov byte [ebp - 4], 9
call fcn.1000d0e1
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0xa
call fcn.10004792
lea ecx, [ebp - 0x10]
call fcn.10001469
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x34], eax
and byte [ebp - 0x158], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x157]
mov byte [ebp - 4], 0xb
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x158]
xor edi, edi
push eax
push edi
push edi
push 5
push edi
call fcn.10016f8f
lea eax, [ebp - 0x158]
add esp, 0x14
test eax, eax
je 0x100166d6
lea eax, [ebp - 0x158]
push eax
call esi
lea ecx, [ebp - 0x158]
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.10004761
mov eax, dword [0x101bf0e0]
push 1
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], eax
call fcn.100011f7
test eax, eax
je 0x1001670b
push 1
push 0x5c
push dword [ebp - 0x14]
call fcn.10098520
add esp, 0xc
lea eax, [ebp - 0x10]
push 1
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xc
call fcn.10006d6c
push dword [ebp - 0x14]
mov eax, dword [eax]
push eax
call fcn.10098e13
mov ebx, eax
pop ecx
neg ebx
pop ecx
sbb bl, bl
lea ecx, [ebp - 0x10]
inc bl
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xb
call fcn.10001469
test bl, bl
je 0x1001675c
mov eax, dword [ebp - 0x34]
push 1
lea ecx, [ebp - 0x34]
mov eax, dword [eax - 8]
dec eax
push eax
call fcn.100053a1
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x2c], eax
and byte [ebp - 0x158], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x157]
mov byte [ebp - 4], 0xd
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x158]
xor edi, edi
push eax
push edi
push edi
push 0x1a
push edi
call fcn.10016f8f
lea eax, [ebp - 0x158]
add esp, 0x14
test eax, eax
je 0x100167a8
lea eax, [ebp - 0x158]
push eax
call esi
lea ecx, [ebp - 0x158]
push ecx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10004761
mov eax, dword [0x101bf0e0]
push 1
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], eax
call fcn.100011f7
test eax, eax
je 0x100167dd
push 1
push 0x5c
push dword [ebp - 0x14]
call fcn.10098520
add esp, 0xc
lea eax, [ebp - 0x10]
push 1
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xe
call fcn.10006d6c
push dword [ebp - 0x14]
mov eax, dword [eax]
push eax
call fcn.10098e13
mov ebx, eax
pop ecx
neg ebx
pop ecx
sbb bl, bl
lea ecx, [ebp - 0x10]
inc bl
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xd
call fcn.10001469
test bl, bl
je 0x1001682e
mov eax, dword [ebp - 0x2c]
push 1
lea ecx, [ebp - 0x2c]
mov eax, dword [eax - 8]
dec eax
push eax
call fcn.100053a1
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x28], eax
and byte [ebp - 0x158], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x157]
mov byte [ebp - 4], 0xf
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x158]
xor edi, edi
push eax
push edi
push edi
push 0x23
push edi
call fcn.10016f8f
lea eax, [ebp - 0x158]
add esp, 0x14
test eax, eax
je 0x1001687a
lea eax, [ebp - 0x158]
push eax
call esi
lea ecx, [ebp - 0x158]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10004761
mov eax, dword [0x101bf0e0]
push 1
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], eax
call fcn.100011f7
test eax, eax
je 0x100168af
push 1
push 0x5c
push dword [ebp - 0x14]
call fcn.10098520
add esp, 0xc
lea eax, [ebp - 0x10]
push 1
push eax
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x10
call fcn.10006d6c
push dword [ebp - 0x14]
mov eax, dword [eax]
push eax
call fcn.10098e13
mov ebx, eax
pop ecx
neg ebx
pop ecx
sbb bl, bl
lea ecx, [ebp - 0x10]
inc bl
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xf
call fcn.10001469
test bl, bl
je 0x10016900
mov eax, dword [ebp - 0x28]
push 1
lea ecx, [ebp - 0x28]
mov eax, dword [eax - 8]
dec eax
push eax
call fcn.100053a1
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x30], eax
and byte [ebp - 0x158], 0
push 0x40
pop ecx
xor eax, eax
lea edi, [ebp - 0x157]
mov byte [ebp - 4], 0x11
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x158]
xor edi, edi
push eax
push edi
push edi
push 0x1c
push edi
call fcn.10016f8f
lea eax, [ebp - 0x158]
add esp, 0x14
test eax, eax
je 0x1001694c
lea eax, [ebp - 0x158]
push eax
call esi
lea ecx, [ebp - 0x158]
push ecx
push eax
lea ecx, [ebp - 0x30]
call fcn.10004761
mov eax, dword [0x101bf0e0]
push 1
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], eax
call fcn.100011f7
test eax, eax
pop esi
je 0x10016982
push 1
push 0x5c
push dword [ebp - 0x14]
call fcn.10098520
add esp, 0xc
lea eax, [ebp - 0x10]
push 1
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x12
call fcn.10006d6c
push dword [ebp - 0x14]
mov eax, dword [eax]
push eax
call fcn.10098e13
mov ebx, eax
pop ecx
neg ebx
pop ecx
sbb bl, bl
lea ecx, [ebp - 0x10]
inc bl
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x11
call fcn.10001469
test bl, bl
je 0x100169d3
mov eax, dword [ebp - 0x30]
push 1
lea ecx, [ebp - 0x30]
mov eax, dword [eax - 8]
dec eax
push eax
call fcn.100053a1
mov eax, dword [0x101bf0e0]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 0x13
mov eax, dword [eax - 8]
cmp eax, 2
jle 0x10016a11
lea eax, [ebp - 0x10]
push 2
push eax
lea ecx, [ebp - 0x18]
call fcn.10016eee
push eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x14
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x13
call fcn.10001469
lea eax, [ebp - 0x4e]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x4d]
push edi
push eax
call fcn.1001926e
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 0x15
cmp dword [eax - 8], edi
jle 0x10016a96
push str._Windows_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x18]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x16
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
push str._WindowsDirectory_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x18]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x17
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
mov eax, dword [ebp - 0x3c]
cmp dword [eax - 8], edi
jle 0x10016ad2
push str._ModulePath_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x3c]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x18
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
mov eax, dword [ebp - 0x20]
cmp dword [eax - 8], edi
jle 0x10016b0e
push str._SystemDirectory_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x20]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x19
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
mov eax, dword [ebp - 0x24]
cmp dword [eax - 8], edi
jle 0x10016b4a
push str._TempDirectory_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x24]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x1a
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
mov eax, dword [ebp - 0x34]
cmp dword [eax - 8], edi
jle 0x10016b86
push str._Personal_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x34]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x1b
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
mov eax, dword [ebp - 0x2c]
cmp dword [eax - 8], edi
jle 0x10016bc2
push str._AppData_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x2c]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x1c
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
mov eax, dword [ebp - 0x28]
cmp dword [eax - 8], edi
jle 0x10016bfe
push str._CommonAppData_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x1d
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
mov eax, dword [ebp - 0x30]
cmp dword [eax - 8], edi
jle 0x10016c3a
push str._LocalAppData_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x30]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x1e
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
mov eax, dword [ebp - 0x38]
cmp dword [eax - 8], edi
jle 0x10016c76
push str._SystemDriver_
lea ecx, [ebp - 0x10]
call fcn.100011a1
lea eax, [ebp - 0x38]
lea ecx, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 0x1f
call fcn.100190fe
mov ecx, eax
call fcn.10004792
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x15
call fcn.10001469
cmp dword [ebp + 0x10], edi
je 0x10016d75
lea eax, [ebp + 0x10]
lea ecx, [ebp - 0x4c]
push eax
call fcn.10019294
mov eax, dword [ebp + 0x10]
cmp eax, dword [ebp - 0x48]
mov dword [ebp - 0x10], eax
je 0x10016e66
mov edi, dword [sym.imp.USER32.dll_CharLowerA]
mov ecx, dword [0x101bf0e0]
mov dword [ebp - 0x14], ecx
push dword [eax + 0xc]
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 0x20
push 0x101c0cd8
push eax
call fcn.1000494e
add esp, 0xc
lea ecx, [ebp - 0x14]
call fcn.10001421
push dword [ebp - 0x14]
call edi
mov ecx, dword [ebp - 0x1c]
cmp dword [ecx - 0xc], 0
lea eax, [ecx - 0xc]
jl 0x10016ce6
push eax
mov dword [ebp + 0x10], ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp 0x10016cf7
mov eax, dword [0x101bf0e0]
push ecx
lea ecx, [ebp + 0x10]
mov dword [ebp + 0x10], eax
call fcn.100012ef
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x21
call fcn.10001421
push dword [ebp + 0x10]
call edi
mov eax, dword [ebp + 0x10]
cmp dword [eax - 8], 0
jl 0x10016d48
push dword [ebp - 0x14]
push eax
call fcn.10005a68
pop ecx
test eax, eax
pop ecx
je 0x10016d48
sub eax, dword [ebp + 0x10]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x10016d48
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x1c]
push dword [eax - 8]
push ebx
call fcn.100053a1
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x1c]
push dword [eax + 0x10]
push ebx
call fcn.10003d00
lea ecx, [ebp + 0x10]
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x15
call fcn.10001469
lea ecx, [ebp - 0x10]
call fcn.100193d8
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x48]
jne 0x10016ca0
jmp 0x10016e66
lea eax, [ebp + 0x10]
lea ecx, [ebp - 0x4c]
push eax
call fcn.10019294
mov eax, dword [ebp + 0x10]
cmp eax, dword [ebp - 0x48]
mov dword [ebp - 0x10], eax
je 0x10016e66
mov edi, dword [sym.imp.USER32.dll_CharLowerA]
mov ecx, dword [0x101bf0e0]
mov dword [ebp - 0x14], ecx
push dword [eax + 0x10]
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 0x22
push 0x101c0cd8
push eax
call fcn.1000494e
add esp, 0xc
lea ecx, [ebp - 0x14]
call fcn.10001421
push dword [ebp - 0x14]
call edi
mov ecx, dword [ebp - 0x1c]
cmp dword [ecx - 0xc], 0
lea eax, [ecx - 0xc]
jl 0x10016ddc
push eax
mov dword [ebp + 0x10], ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp 0x10016ded
mov eax, dword [0x101bf0e0]
push ecx
lea ecx, [ebp + 0x10]
mov dword [ebp + 0x10], eax
call fcn.100012ef
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0x23
call fcn.10001421
push dword [ebp + 0x10]
call edi
mov eax, dword [ebp + 0x10]
cmp dword [eax - 8], 0
jl 0x10016e3e
push dword [ebp - 0x14]
push eax
call fcn.10005a68
pop ecx
test eax, eax
pop ecx
je 0x10016e3e
sub eax, dword [ebp + 0x10]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x10016e3e
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x1c]
push dword [eax - 8]
push ebx
call fcn.100053a1
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x1c]
push dword [eax + 0xc]
push ebx
call fcn.10003d00
lea ecx, [ebp + 0x10]
call fcn.10001469
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x15
call fcn.10001469
lea ecx, [ebp - 0x10]
call fcn.100193d8
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x48]
jne 0x10016d96
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x1c]
push eax
call fcn.1000472e
mov dword [ebp - 0x54], 1
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x13
call fcn.10019166
lea ecx, [ebp - 0x38]
call fcn.10001469
lea ecx, [ebp - 0x30]
call fcn.10001469
lea ecx, [ebp - 0x28]
call fcn.10001469
lea ecx, [ebp - 0x2c]
call fcn.10001469
lea ecx, [ebp - 0x34]
call fcn.10001469
lea ecx, [ebp - 0x3c]
call fcn.10001469
lea ecx, [ebp - 0x20]
call fcn.10001469
lea ecx, [ebp - 0x24]
call fcn.10001469
lea ecx, [ebp - 0x18]
call fcn.10001469
lea ecx, [ebp - 0x1c]
call fcn.10001469
lea ecx, [ebp + 0xc]
call fcn.10001469
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
pop edi
pop ebx
mov dword fs:[0], ecx
leave
ret