Function at 0x434b30
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5dfb12
mov eax, dword fs:[0]
push eax
sub esp, 0x28c
mov eax, dword [0x67432c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x268], ebx
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.00480620
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea edi, [ebp - 0x218]
add edi, 0xfffffffe
nop word [eax + eax]
mov ax, word [edi + 2]
lea edi, [edi + 2]
test ax, ax
jne 0x434ba0
mov eax, dword [0x5e6bac]
mov dword [edi], eax
cmp word [ebp - 0x218], 0
jne 0x434bc1
xor ecx, ecx
jmp 0x434bdf
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x434bd0
sub ecx, edx
sar ecx, 1
push ecx
lea eax, [ebp - 0x218]
mov ecx, ebx
push eax
call fcn.00402ac0
mov eax, dword [0x679464]
test eax, eax
jne 0x434c2c
push 0x15c
call fcn.0046d554
add esp, 4
mov dword [ebp - 0x264], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x434c1e
mov ecx, eax
call fcn.00443ec0
jmp 0x434c20
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x679464], eax
mov ecx, eax
call fcn.00471d04
mov edx, eax
mov dword [ebp - 0x24c], 7
xor eax, eax
mov dword [ebp - 0x250], 0
mov word [ebp - 0x260], ax
cmp word [edx], ax
jne 0x434c5b
xor ecx, ecx
jmp 0x434c6f
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x434c60
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x260]
call fcn.00402ac0
mov dword [ebp - 4], 1
call fcn.00452596
test al, al
je 0x434ca8
imul ecx, dword [ecx + 0x1ccbb27c], 0xab7fcde4
jecxz 0x434c96
mov bh, byte [edx - 0x216c52bd]
and eax, 0x8bc96773
popfd
cwde
std
invalid
lea ecx, [ebp - 0x298]
call fcn.0046432a
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 2
call fcn.004643f0
test eax, eax
je 0x434e5a
lea eax, [ebp - 0x264]
mov dword [ebp - 0x264], 0
push eax
lea ecx, [ebp - 0x298]
call fcn.004645dd
call fcn.004523f8
test al, al
je 0x434cff
imul edx, edx, 0x5fe31918
imul ebp, dword [esi], 0x72
arpl word [esp + eax*8], bp
loopne 0x434d01
aaa
cmc
push 0xb
xor eax, eax
mov dword [ebp - 0x21c], 7
push str.WOver32.dll
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov word [ebp - 0x230], ax
call fcn.00402ac0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 3
push eax
push ebx
lea eax, [ebp - 0x260]
mov ecx, ebx
push eax
call fcn.004313d0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x434d6a
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00402c10
push 0xb
xor eax, eax
mov dword [ebp - 0x21c], 7
push str.WOver64.dll
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov word [ebp - 0x230], ax
call fcn.00402ac0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 4
push eax
push ebx
lea eax, [ebp - 0x260]
mov ecx, ebx
push eax
call fcn.004313d0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x434dd5
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00402c10
call fcn.0045250c
test al, al
je 0x434dfd
xchg ebx, eax
mov ebx, 0x8b7d5549
sbb ebp, ecx
jecxz 0x434dfb
sbb dh, byte [0xb61c9289]
cmp cl, ah
jb 0x434e51
scasd eax, dword es:[edi]
imul edx, dword [esi - 0x56d8cda8], 0x41
mov cl, 0x74
push esi
je 0x434e53
call fcn.00451fa8
test al, al
je 0x434e1f
mov ah, 0xef
mov eax, dword [ebp + 0x56]
enter 0xffffffffffffe17a, 0xffffffffffffffc6
mov ebp, 0x2f7d23d6
ja 0x434e63
ror byte [ecx + 0x3475ae32], cl
xchg edx, eax
test al, 0xe8
aam 1
add byte [eax + eax*8 + 0x15d41c74], al
call fcn.0045225a
test al, al
je 0x434e44
aam 0x15
sub edx, dword [0x7113c6b3]
adc dl, 4
jmp 0x4b029217
push dword [ebp - 0x264]
lea ecx, [ebp - 0x298]
call fcn.004645fb
cmpsb byte [esi], byte es:[edi]
test dword [edx], 0xd6e900
add byte [eax], al
add al, byte [eax]
jmp 0x434f30
push 0xb
xor eax, eax
mov dword [ebp - 0x21c], 7
push str.WOver32.dll
inc dword [edi]
add byte [eax], al
add byte [eax - 0x7c], ch
mov bl, byte [esi]
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov word [ebp - 0x230], ax
call fcn.00402ac0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 5
push eax
push ebx
lea eax, [ebp - 0x260]
mov ecx, ebx
push eax
call fcn.004313d0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x434ec5
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00402c10
sar ch, 1
invalid
push 0xb
xor eax, eax
mov dword [ebp - 0x21c], 7
push str.WOver64.dll
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov word [ebp - 0x230], ax
call fcn.00402ac0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 6
push eax
push ebx
lea eax, [ebp - 0x260]
mov ecx, ebx
push eax
call fcn.004313d0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x434f30
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00402c10
call fcn.00452215
test al, al
je 0x434f54
inc edx
jl 0x434ebc
int 0x3d
sal esp, 1
wait
ljmp 0x178d
call fcn.004520bc
test al, al
je 0x434f7b
push es
xor bl, byte [eax + 0x32]
outsd dx, dword [esi]
and ecx, dword [edi - 0x64]
lahf
imul edx, dword [eax + 0x20263b2d], 0xf404bd2b
push ss
fist word [edx + 0x13]
and al, 0x74
push edi
push 6
fist dword [eax - 0x7a383fcd]
nop
std
invalid
xor eax, eax
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0
mov dword [ebp - 0x274], 0
mov dword [ebp - 0x234], 7
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
mov byte [ebp - 4], 7
call fcn.004520bc
test al, al
je 0x434fe2
cdq
out dx, al
imul edx, dword [esi], 0xc334cd2c
invalid
push 6
push str.CLSID_
lea ecx, [ebp - 0x248]
call fcn.00402ac0
cmp dword [ebp - 0x234], 8
lea ecx, [ebp - 0x26c]
push ecx
push 0xf013f
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push 0
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [ebp - 0x264], eax
call fcn.0045236e
test al, al
je 0x435048
pushfd
in eax, dx
xlatb
add al, 0xca
pop ebx
iretd
call fcn.00452101
test al, al
je 0x435069
or edi, dword [ebp + 0x14]
xchg esp, eax
lcall 0x17bc, 0x4f9fef65
jb 0x435051
aam 0x64
xor dword [edi - 0x67ba7b3d], eax
adc al, 0x98
cld
call fcn.0045218b
test al, al
je 0x43508a
mov ebx, 0x942fae78
mov cl, 0xa0
fild word [ebx + ebx*4 - 0x174d1d1e]
stosb byte es:[edi], al
int3
cmp dword [ebp - 0x264], 0
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ebx, dword [ebp - 0x268]
jne 0x4350b9
push dword [ebp - 0x26c]
mov ecx, ebx
call fcn.00431a60
mov eax, dword [ebp - 0x26c]
test eax, eax
je 0x4350b9
inc dword [ebp + 0x500374c0]
push eax
call edi
push 0x17
push str.SOFTWAREClassesCLSID_
lea ecx, [ebp - 0x248]
call fcn.00402ac0
cmp dword [ebp - 0x234], 8
lea ecx, [ebp - 0x270]
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push ecx
push 0xf013f
push 0
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call esi
mov dword [ebp - 0x264], eax
call fcn.00452329
test al, al
je 0x435128
in eax, 0x2b
cmc
pop es
aad 0x19
mov ch, 0x20
inc byte [edx - 0xa]
wait
xlatb
jne 0x4350b1
invalid
cmp dword [ebp - 0x264], 0
jne 0x43514b
push dword [ebp - 0x270]
mov ecx, ebx
call fcn.00431a60
mov eax, dword [ebp - 0x270]
test eax, eax
je 0x43514b
leave
invalid
push eax
call edi
push 8
push str.TypeLib_
lea ecx, [ebp - 0x248]
call fcn.00402ac0
cmp dword [ebp - 0x234], 8
lea ecx, [ebp - 0x274]
push ecx
push 0xf013f
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push 0
push eax
push SysReAllocString
call esi
mov dword [ebp - 0x264], eax
call fcn.00452596
test al, al
je 0x4351a6
xlatb
xchg edi, eax
adc byte [edi], 0x86
dec eax
push es
int1
js 0x43513b
jo 0x4351ae
sub eax, 0x83e50910
mov ebp, 0xfffffd9c
add byte [ebp + 0x1e], dh
cmp dword [ebp - 0x264], 0
jne 0x4351cd
push ds
push dword [ebp - 0x274]
mov ecx, dword [ebp - 0x268]
call int.004323b0
mov eax, dword [ebp - 0x274]
test eax, eax
je 0x4351cd
dec dword [ebx - 0x26773]
invalid
push eax
call edi
call fcn.004524c7
test al, al
je 0x4351e8
imul esp, esi, 0x3d
movsx ebx, word [esi + 0x4913fe42]
xor byte [ecx], 0x9b
mov bl, 0xc5
loopne 0x4351b4
das
mov ecx, dword [ebp - 0x268]
call fcn.00432c10
call fcn.004523f8
test al, al
je 0x435217
sbb byte [esi + 0x77], dl
mov al, byte [0x94d859ae]
test edx, ebx
mov edi, 0x3361271f
mov dword [0xe6cac41d], eax
mov byte [ecx], cl
push eax
sub ah, byte [edi + 0x1d03ee8]
add byte [eax + eax*8 - 0x67f7ea8c], al
not dword [eax]
cmp byte fs:[esi - 0x65], dl
call fcn.0045225a
test al, al
je 0x435235
or byte [eax + 0x386410f7], bl
push esi
wait
stosb byte es:[edi], al
lcall 0x1f43, 0xc49fe9f
invalid
call fcn.004523b3
test al, al
je 0x435250
push edx
xor esi, dword [eax]
rcl esi, 1
pop eax
jb 0x435265
iretd
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x43526e
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.00402c10
mov eax, 0xe8fffffd
mov byte [0x33fffcd9], al
rol bh, 0x85
int3
xor eax, eax
mov dword [ebp - 0x234], 7
lea ecx, [ebp - 0x298]
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
call fcn.0046433d
mov eax, dword [ebp - 0x24c]
cmp eax, 8
jb 0x4352b4
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.00402c10
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0046d802
mov esp, ebp
pop ebp
ret