Function at 0x49b440
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push 0xffffffffffffffff
push 0x4c5fb4
mov eax, dword fs:[0]
push eax
mov eax, 0x17284
call fcn.004b1040
mov eax, dword [0x4da8f0]
xor eax, esp
mov dword [esp + 0x17280], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4da8f0]
xor eax, esp
push eax
lea eax, [esp + 0x17298]
mov dword fs:[0], eax
mov ebx, dword [esp + 0x172a8]
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebp, ebp
test byte [0x543e58], 1
mov word [0x540fd0], ax
mov word [0x5407d0], cx
mov word [0x53ffd0], dx
mov byte [0x53fe3c], al
jne 0x49b4e0
or dword [0x543e58], 1
mov dword [esp + 0x172a0], ebp
mov ecx, 0x543858
call fcn.00497d00
push 0x4c6c40
call fcn.004b2e7f
add esp, 4
mov dword [esp + 0x172a0], 0xffffffff
mov ecx, 0x543858
mov dword [0x5417d4], 0x543858
call fcn.00470d80
mov ecx, 0x543900
call fcn.00470d80
mov ecx, 0x5439a8
call fcn.00470d80
mov al, byte [0x51b789]
mov byte [0x543e56], al
cmp ebx, ebp
jne 0x49b541
mov ecx, dword [0x51c8dc]
mov edx, dword [0x508300]
push 0x543858
push 0x495750
push ecx
push str.FINDFILES
push edx
call dword [sym.imp.USER32.dll_DialogBoxParamW]
test eax, eax
je 0x49be6f
push 0x498470
push ebp
push ebp
push 7
call fcn.0048f9f0
push 0x4cee38
call fcn.0048d8b0
cmp ebx, ebp
je 0x49b638
xor eax, eax
jmp 0x49b570
mov cl, byte [eax + 0x529c73]
mov byte [esp + eax + 0x4e88], cl
inc eax
test cl, cl
jne 0x49b570
mov byte [0x543e50], cl
push 0x4c7f44
mov ecx, 0x5439a8
mov byte [0x543e52], 1
mov byte [0x543e51], 1
call fcn.00471170
mov ecx, dword [0x52b4a4]
call fcn.00470d20
push 0x400
lea eax, [esp + 0x5a98]
push eax
lea ecx, [esp + 0x529c]
push ecx
mov ecx, dword [0x52b4a4]
call fcn.00471240
test al, al
je 0x49b709
jmp 0x49b5e0
push 0x400
lea edx, [esp + 0x5a98]
push edx
mov eax, edx
push eax
lea ecx, [esp + 0x52a0]
push ecx
call fcn.004566d0
lea edx, [esp + 0x5a94]
push edx
mov ecx, 0x543858
call fcn.00471170
push 0x400
lea eax, [esp + 0x5a98]
push eax
lea ecx, [esp + 0x529c]
push ecx
mov ecx, dword [0x52b4a4]
call fcn.00471240
test al, al
jne 0x49b5e0
jmp 0x49b709
cmp byte [0x543a50], 0
mov byte [esp + 0x4e88], 0
je 0x49b709
cmp byte [0x543e53], 0
je 0x49b672
lea edi, [esp + 0x4e88]
dec edi
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x49b660
mov dx, word [0x4cee34]
mov word [edi], dx
cmp byte [0x543e54], 0
je 0x49b694
lea edi, [esp + 0x4e88]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x49b683
mov ax, word [0x4cee30]
mov word [edi], ax
cmp byte [0x543e55], 0
je 0x49b6b7
lea edi, [esp + 0x4e88]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x49b6a5
mov cx, word [0x4cee2c]
mov word [edi], cx
lea edi, [esp + 0x4e88]
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x49b6c0
mov dx, word [str.htc]
mov eax, 0x543a50
mov word [edi], dx
mov edx, eax
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x49b6e0
lea edi, [esp + 0x4e88]
sub eax, edx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x49b6f1
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp byte [0x51b789], 0
je 0x49b729
push 0x400
lea eax, [esp + 0x6298]
push eax
mov ecx, 0x5229e0
call fcn.00413300
cmp byte [0x543e50], 0
mov dword [0x5417d0], ebp
mov byte [0x53fe3d], 0
mov byte [0x53fe3e], 1
mov edi, 2
je 0x49b758
cmp byte [0x543e56], 0
jne 0x49b758
mov ecx, edi
jmp 0x49b75a
xor ecx, ecx
mov eax, 0x543900
cmp ebx, ebp
je 0x49b765
mov eax, ebx
push 3
push ebp
push ecx
push eax
lea ecx, [esp + 0x2a6c]
call fcn.00469960
mov dword [esp + 0x172a0], 1
lea ecx, [esp + 0xd78]
call fcn.004129c0
lea ecx, [esp + 0xd9c]
call fcn.004129c0
lea ecx, [esp + 0xdc0]
call fcn.004129c0
lea ecx, [esp + 0x164]
push ecx
lea ecx, [esp + 0x2a60]
call fcn.0046a4b0
test eax, eax
jne 0x49bd80
cmp byte [0x51c858], 0
jne 0x49bd80
call fcn.0044d040
mov eax, dword [0x5417d0]
cmp eax, ebp
je 0x49b7f6
movzx edx, byte [0x543e56]
push edx
push eax
mov eax, dword [0x51b784]
push eax
call fcn.00497de0
mov dword [0x5417d0], ebp
cmp word [esp + 0x564], 0x2e
jne 0x49b813
cmp word [esp + 0x566], 0x5c
lea ecx, [esp + 0x568]
je 0x49b81a
lea ecx, [esp + 0x564]
lea edx, [esp + 0x5a94]
movzx eax, word [ecx]
mov word [edx], ax
add ecx, edi
add edx, edi
cmp ax, bp
jne 0x49b821
push 0x50
lea ecx, [esp + 0x5a98]
push ecx
call fcn.0044cc10
push eax
push 0x523
call fcn.004671c0
push eax
lea edx, [esp + 0x6a9c]
push edx
mov edx, 0x400
call fcn.00483770
mov ecx, dword [0x51b784]
add esp, 0xc
lea eax, [esp + 0x6a94]
push eax
push 0x9b
push ecx
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
cmp byte [0x543e52], 0
je 0x49b8ce
cmp byte [esp + 0xd74], 0
jne 0x49b8ce
mov ecx, 0x5439a8
call fcn.00470d20
mov ecx, 0x5439a8
call fcn.004713e0
mov esi, eax
cmp esi, ebp
je 0x49b8ce
push ebp
lea edx, [esp + 0x568]
push edx
push esi
call fcn.0044c4e0
test al, al
jne 0x49b93b
mov ecx, 0x5439a8
call fcn.004713e0
mov esi, eax
cmp esi, ebp
jne 0x49b8a7
cmp byte [0x543e51], 0
je 0x49bd64
cmp byte [esp + 0xd74], 0
je 0x49b8f3
cmp byte [esp + 0x4e88], 0
jne 0x49bd64
mov ecx, 0x543858
call fcn.00470d20
mov ecx, 0x543858
call fcn.004713e0
cmp eax, ebp
je 0x49bd64
nop
push 4
lea ecx, [esp + 0x568]
push ecx
push eax
call fcn.0044c4e0
test al, al
jne 0x49bc63
mov ecx, 0x543858
call fcn.004713e0
cmp eax, ebp
jne 0x49b910
jmp 0x49bd64
cmp word [esi], 0x2a
jne 0x49b970
cmp word [esi + 2], bp
jne 0x49b970
cmp byte [0x543e56], 0
jne 0x49b970
push 1
push ebp
push ebp
push ebp
push ebp
lea eax, [esp + 0x578]
push eax
mov ecx, 0x5229e0
call fcn.00417420
test al, al
je 0x49b8ce
cmp byte [0x543e56], 0
mov dword [0x51c02c], edi
je 0x49b986
mov byte [0x522f1c], 1
cmp byte [esp + 0x4e88], 0
push 1
setne cl
movzx edx, cl
push edx
lea eax, [esp + 0x56c]
push eax
mov ecx, 0x5229e0
call fcn.00416a50
cmp eax, edi
jne 0x49b9bf
call fcn.00453bf0
test al, al
je 0x49bd80
jmp 0x49bd64
cmp eax, 1
jne 0x49b8ce
push eax
push ebp
push ebp
push ebp
xor ecx, ecx
lea edx, [esp + 0x52a4]
push edx
lea eax, [esp + 0x578]
mov word [esp + 0x52a8], cx
push eax
mov ecx, 0x5229e0
call fcn.00417420
lea ecx, [esp + 0x5294]
push ecx
lea edx, [esp + 0x568]
push edx
call fcn.00478290
test eax, eax
je 0x49baa2
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
lea eax, [esp + 0x5294]
push eax
call esi
cmp eax, 0xffffffff
jne 0x49bd64
push 0x4c7e10
lea ecx, [esp + 0x5298]
push ecx
call fcn.004587a0
lea edx, [esp + 0x5294]
push edx
lea eax, [esp + 0x568]
push eax
call fcn.00478290
test eax, eax
je 0x49ba64
lea ecx, [esp + 0x5294]
push ecx
call esi
cmp eax, 0xffffffff
jne 0x49bd64
push 0x4c7e18
lea edx, [esp + 0x5298]
push edx
call fcn.004587a0
lea eax, [esp + 0x5294]
push eax
lea ecx, [esp + 0x568]
push ecx
call fcn.00478290
test eax, eax
je 0x49baa2
lea edx, [esp + 0x5294]
push edx
call esi
cmp eax, 0xffffffff
jne 0x49bd64
cmp byte [esp + 0x4e88], 0
jne 0x49bb72
push 1
lea eax, [esp + 0x1608]
push eax
mov ecx, 0x5229e0
xor ebx, ebx
call fcn.004129d0
test al, al
je 0x49bd64
mov edi, edi
cmp byte [0x51c858], 0
jne 0x49bd64
inc ebx
test bl, 0x1f
jne 0x49bae8
call fcn.0044d040
mov ecx, 0x543858
call fcn.00470d20
mov ecx, 0x543858
call fcn.004713e0
cmp eax, ebp
je 0x49bb51
push 4
lea ecx, [esp + 0x1608]
push ecx
push eax
call fcn.0044c4e0
test al, al
jne 0x49bb24
mov ecx, 0x543858
call fcn.004713e0
cmp eax, ebp
jne 0x49bb00
jmp 0x49bb51
mov edx, dword [esp + 0x1e14]
push 0x4c7a6a
push edx
call fcn.00435af0
movzx eax, al
push eax
lea ecx, [esp + 0x160c]
push ecx
push ebp
lea edx, [esp + 0x574]
push edx
push ebp
call fcn.00492ce0
push 1
lea eax, [esp + 0x1608]
push eax
mov ecx, 0x5229e0
call fcn.004129d0
test al, al
jne 0x49bad0
jmp 0x49bd64
lea ecx, [esp + 0x14]
push ecx
mov ecx, 0x5229e0
call fcn.00413350
mov ecx, 0x5229e0
call fcn.00411c10
and eax, 0x400
and edx, ebp
or eax, edx
je 0x49bbb3
push 0x3ac
call fcn.004671c0
push eax
push 0x52aca2
call fcn.0049ac10
add esp, 8
jmp 0x49bd64
push ebp
call fcn.00488820
push 0x400
push 0x52aca2
mov ecx, 0x5229e0
call fcn.00413320
mov edx, dword [esp + 0x94]
mov ecx, dword [0x52b4a4]
mov dword [0x528c34], edx
call fcn.00470d80
mov ecx, 0x543858
call fcn.00470d20
mov ecx, 0x543858
call fcn.004713e0
cmp eax, ebp
je 0x49bc1a
lea ecx, [ecx]
mov ecx, dword [0x52b4a4]
push eax
call fcn.00471180
mov ecx, 0x543858
call fcn.004713e0
cmp eax, ebp
jne 0x49bc00
lea eax, [esp + 0x4e88]
push eax
push 0x4cee24
push 0x529c72
mov byte [0x528352], 1
mov dword [0x5282f4], ebp
mov dword [0x528318], ebp
call fcn.004b106b
add esp, 0xc
mov ecx, 0x5229e0
mov byte [0x529c4c], 1
mov dword [0x51c02c], edi
call fcn.00413d30
jmp 0x49bd64
cmp byte [esp + 0x4e88], 0
jne 0x49bca6
lea edx, [esp + 0x564]
push edx
lea eax, [esp + 0x168]
push eax
push ebp
push ebp
lea ecx, [esp + 0x4e98]
push ecx
push ebp
push ebp
call fcn.0043b7d0
push ebp
push ebp
push ebp
push ebp
push ebp
push ebp
lea edx, [esp + 0x72ac]
push edx
call fcn.0043b7d0
jmp 0x49bd64
lea ecx, [esp + 0x1e34]
call fcn.00434590
mov byte [esp + 0x172a0], 2
push 4
lea eax, [esp + 0x568]
push eax
lea ecx, [esp + 0x16c]
push ecx
lea ecx, [esp + 0x1e40]
call fcn.004349d0
test al, al
je 0x49bd50
lea edx, [esp + 0x564]
push edx
lea eax, [esp + 0x168]
push eax
push ebp
push ebp
lea ecx, [esp + 0x4e98]
push ecx
push ebp
push ebp
call fcn.0043b7d0
push 0x10000
lea edx, [esp + 0x7298]
push edx
lea ecx, [esp + 0x1e3c]
call fcn.00435300
cmp eax, ebp
je 0x49bd50
lea ebx, [ebx]
push ebp
push ebp
push ebp
push ebp
push ebp
push eax
lea eax, [esp + 0x72ac]
push eax
call fcn.0043b7d0
push 0x10000
lea ecx, [esp + 0x7298]
push ecx
lea ecx, [esp + 0x1e3c]
call fcn.00435300
cmp eax, ebp
jne 0x49bd20
mov byte [esp + 0x172a0], 1
lea ecx, [esp + 0x1e34]
call fcn.004349a0
lea edx, [esp + 0x164]
push edx
lea ecx, [esp + 0x2a60]
call fcn.0046a4b0
test eax, eax
je 0x49b7c1
cmp byte [0x51c858], 0
mov byte [0x53fe3e], 0
je 0x49bda0
cmp byte [0x53fe3c], 0
je 0x49bda0
mov byte [0x51c858], 0
mov eax, dword [0x5417d0]
cmp eax, ebp
je 0x49bdc4
movzx ecx, byte [0x543e56]
mov edx, dword [0x51b784]
push ecx
push eax
push edx
call fcn.00497de0
mov dword [0x5417d0], ebp
push 0x270
mov byte [0x53fe3d], 0
call fcn.004671c0
push eax
mov eax, dword [0x51b784]
push 0x9b
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
cmp byte [0x51c858], 0
je 0x49bdff
mov ecx, dword [0x51b784]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x49be04
call fcn.0048d420
cmp word [0x5407d0], bp
je 0x49be27
push 0x5407d0
mov ecx, 0x5220b8
call fcn.0044a780
cmp word [0x540fd0], bp
je 0x49be49
jmp 0x49be3a
cmp word [0x540fd0], bp
je 0x49be58
mov ecx, 0x5220b8
call fcn.00448b30
push 0x540fd0
mov ecx, 0x5220b8
call fcn.0044a930
push 0x53ffd0
mov ecx, 0x5220b8
call fcn.00448c50
mov dword [esp + 0x172a0], 0xffffffff
lea ecx, [esp + 0x2a5c]
call fcn.00469c00
mov ecx, dword [esp + 0x17298]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x17280]
xor ecx, esp
call fcn.004b102c
add esp, 0x17290
ret 4