Function at 0x449c20
Capabilities:
Get common file path

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x57f3dc
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x4e8
mov al, byte [0x5c6d3b]
push esi
push edi
mov byte [ebp - 0x14], al
lea eax, [ebp - 0x2f0]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x4f8]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
push str.eDlRtZyh6xcSYIySXE0KDFYjrAg
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0xa0], 0
movups xmmword [ebp - 0xb4], xmm0
call fcn.0042cb00
cmp byte [ebp - 0x14], 0
mov dword [ebp - 4], 0
je 0x44a3cd
push 0x1d
xorps xmm0, xmm0
mov dword [ebp - 0x8c], 0
push str.NkhBHSUYr8IDlGgOzUmPRC1vtIFUn
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], 0
movups xmmword [ebp - 0x9c], xmm0
call fcn.0042cb00
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x84]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x74], 0
push str.TmREOdmENSKh866RA
movups xmmword [ebp - 0x84], xmm0
mov dword [ebp - 0x70], 0
call fcn.0042cb00
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x6c]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x5c], 0
push str.UElmWMDQsnAFEldJRI
movups xmmword [ebp - 0x6c], xmm0
mov dword [ebp - 0x58], 0
call fcn.0042cb00
mov byte [ebp - 4], 3
lea edx, [ebp - 0x4f8]
mov byte [ebp - 0x18], 0
lea ecx, [ebp - 0xcc]
push dword [ebp - 0x18]
call fcn.00453810
sub esp, 0x14
mov byte [ebp - 4], 4
lea eax, [ebp - 0x9c]
mov ecx, esp
push eax
call fcn.004306a0
lea ecx, [ebp - 0x20]
call fcn.00446d80
mov byte [ebp - 4], 5
lea edx, [ebp - 0x1c]
mov eax, dword [eax]
lea ecx, [ebp - 0xe4]
mov byte [ebp - 0x18], 0
push dword [ebp - 0x18]
mov dword [ebp - 0x1c], eax
call fcn.0045b3c0
add esp, 0x1c
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0xcc]
call fcn.0045b500
lea ecx, [ebp - 0xe4]
call fcn.00430800
mov byte [ebp - 4], 4
or edi, 0xffffffff
mov edx, dword [ebp - 0x20]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449de5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x44], 0
push 0x597b10
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x40], 0
movups xmmword [ebp - 0x54], xmm0
call fcn.0042cb00
sub esp, 0x18
mov byte [ebp - 4], 7
lea eax, [ebp - 0x84]
mov ecx, esp
push eax
call fcn.004306a0
lea ecx, [ebp - 0x18]
call fcn.00446d80
add esp, 0x18
mov byte [ebp - 4], 8
xorps xmm0, xmm0
mov edx, dword [eax]
mov ecx, edx
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x449e50
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x3c]
call fcn.0042cb00
mov byte [ebp - 4], 0xa
mov eax, edi
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449e87
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x54]
call fcn.0044a480
test al, al
jne 0x449eee
sub esp, 0x18
lea eax, [ebp - 0x6c]
mov ecx, esp
push eax
call fcn.004306a0
lea ecx, [ebp - 0x1c]
call fcn.00446d80
add esp, 0x18
mov byte [ebp - 4], 0xb
mov edx, dword [eax]
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x449eb7
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x54]
call fcn.0042d2a0
mov byte [ebp - 4], 0xa
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449eee
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x40], 8
lea eax, [ebp - 0x54]
push dword [ebp - 0x44]
cmovae eax, dword [ebp - 0x54]
lea ecx, [ebp - 0x3c]
push eax
call fcn.0042b100
cmp dword [ebp - 0x28], 8
lea esi, [ebp - 0x3c]
cmovae esi, dword [ebp - 0x3c]
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x44a44b
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x18], eax
push esi
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0xc
call fcn.00430f00
test al, al
jne 0x449f69
test esi, esi
jne 0x449f45
xor ecx, ecx
jmp 0x449f5f
mov ecx, esi
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x449f50
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [ebp - 0x18]
call fcn.00431230
mov byte [ebp - 4], 0xd
lea esi, [ebp - 0xcc]
cmp dword [ebp - 0xb8], 8
cmovae esi, dword [ebp - 0xcc]
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x44a455
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x1c], eax
push esi
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xe
call fcn.00430f00
test al, al
jne 0x449fd9
test esi, esi
jne 0x449fb6
xor ecx, ecx
jmp 0x449fcf
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x449fc0
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [ebp - 0x1c]
call fcn.00431230
sub esp, 0x18
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0xb4]
mov ecx, esp
push eax
call fcn.004306a0
lea ecx, [ebp - 0x24]
call fcn.00446d80
add esp, 0x18
mov esi, eax
mov byte [ebp - 4], 0x10
call fcn.00430c90
mov ecx, eax
test ecx, ecx
je 0x44a45f
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x2f0]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0x20]
call fcn.00430f00
test al, al
jne 0x44a05f
lea ecx, [ebp - 0x2f0]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x44a040
sub ecx, edx
lea eax, [ebp - 0x2f0]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x20]
call fcn.00431230
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 0x12
push eax
push 7
lea eax, [ebp - 0x1c]
mov edx, esi
push 0
push eax
lea ecx, [ebp - 0x20]
call fcn.0044e700
mov edx, dword [ebp - 0x20]
add esp, 0x10
mov byte [ebp - 0x14], al
add edx, 0xfffffff0
mov ecx, edi
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x44a099
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44a0b3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x1c]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44a0cd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], edi
dec edi
test edi, edi
jg 0x44a0e5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp byte [ebp - 0x14], 0
mov ecx, dword [ebp - 0x28]
je 0x44a246
cmp ecx, 8
jb 0x44a129
mov edx, dword [ebp - 0x3c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a11f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0x40]
xor eax, eax
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 7
mov word [ebp - 0x3c], ax
cmp ecx, 8
jb 0x44a177
mov edx, dword [ebp - 0x54]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a16d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
lea ecx, [ebp - 0xcc]
call fcn.00430800
mov ecx, dword [ebp - 0x58]
cmp ecx, 8
jb 0x44a1bc
mov edx, dword [ebp - 0x6c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a1b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0x70]
cmp ecx, 8
jb 0x44a1f9
mov edx, dword [ebp - 0x84]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a1ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0x88]
cmp ecx, 8
jb 0x44a422
mov edx, dword [ebp - 0x9c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a233
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
mov byte [ebp - 0x14], 1
jmp 0x44a391
cmp ecx, 8
jb 0x44a27d
mov edx, dword [ebp - 0x3c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a273
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0x40]
xor eax, eax
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 7
mov word [ebp - 0x3c], ax
cmp ecx, 8
jb 0x44a2cb
mov edx, dword [ebp - 0x54]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a2c1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
lea ecx, [ebp - 0xcc]
call fcn.00430800
mov ecx, dword [ebp - 0x58]
cmp ecx, 8
jb 0x44a310
mov edx, dword [ebp - 0x6c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a306
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0x70]
cmp ecx, 8
jb 0x44a34d
mov edx, dword [ebp - 0x84]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a343
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0x88]
cmp ecx, 8
jb 0x44a38d
mov edx, dword [ebp - 0x9c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a383
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a469
push ecx
push edx
call fcn.00550d24
add esp, 8
mov byte [ebp - 0x14], 0
mov ecx, dword [ebp - 0xa0]
cmp ecx, 8
jb 0x44a435
mov edx, dword [ebp - 0xb4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44a42b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44a46e
jmp 0x44a42b
sub esp, 0x18
lea eax, [ebp - 0xb4]
mov ecx, esp
push eax
call fcn.004306a0
lea ecx, [ebp - 0x24]
call fcn.00446d80
add esp, 0x18
mov edx, 7
mov byte [ebp - 4], 0x13
mov ecx, eax
call fcn.0044f1c0
mov edx, dword [ebp - 0x24]
or ecx, 0xffffffff
mov byte [ebp - 0x14], al
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x44a41a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, byte [ebp - 0x14]
test al, al
je 0x44a38d
mov byte [ebp - 0x14], 1
jmp 0x44a391
push ecx
push edx
call fcn.00550d24
add esp, 8
mov ecx, dword [ebp - 0xc]
mov al, byte [ebp - 0x14]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
push 0x80004005
call fcn.00431210
call fcn.00555bff
call fcn.00555bff
int3