Function at 0x49cb90
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6142b5
mov eax, dword fs:[0]
push eax
sub esp, 0x20
mov eax, dword [0x69301c]
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 - 4], 1
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
or edi, 0xffffffff
cmp eax, edi
jne 0x49cbdb
xor esi, esi
jmp 0x49d37c
mov eax, dword [0x6a23f0]
lea ecx, [ebx + 0xac]
test eax, eax
cmove eax, dword [0x69813c]
mov dword [0x698138], eax
mov eax, dword [ebx + 0xac]
call dword [eax + 0x20]
mov eax, dword [ebx + 0xac]
lea ecx, [ebx + 0xac]
call dword [eax + 0x20]
mov dword [ebx + 0x428], 0x6a22d8
mov eax, dword [0x6a23cc]
mov dword [ebx + 0x4d0], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d3d9
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x66944c
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 2
call fcn.00404c40
test al, al
jne 0x49cc65
push 0xb
push 0x66944c
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x801c
push ecx
mov byte [ebp - 4], 3
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49ccb1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d3e3
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x669490
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 4
call fcn.00404c40
test al, al
jne 0x49ccf5
push 0xe
push 0x669490
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x801a
push ecx
mov byte [ebp - 4], 5
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49cd41
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d3ed
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x669470
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 6
call fcn.00404c40
test al, al
jne 0x49cd85
push 0xe
push 0x669470
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x8014
push ecx
mov byte [ebp - 4], 7
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49cdd1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d3f7
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x6694d0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 8
call fcn.00404c40
test al, al
jne 0x49ce15
push 0xf
push 0x6694d0
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x8015
push ecx
mov byte [ebp - 4], 9
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49ce61
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d401
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push str.ID_ST_DST_FILE
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xa
call fcn.00404c40
test al, al
jne 0x49cea5
push 0xe
push str.ID_ST_DST_FILE
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x8018
push ecx
mov byte [ebp - 4], 0xb
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49cef1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d40b
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x669508
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xc
call fcn.00404c40
test al, al
jne 0x49cf35
push 0xe
push 0x669508
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x8013
push ecx
mov byte [ebp - 4], 0xd
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49cf81
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d415
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x6694f0
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xe
call fcn.00404c40
test al, al
jne 0x49cfc5
push 0xb
push 0x6694f0
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x8009
push ecx
mov byte [ebp - 4], 0xf
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49d011
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d41f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x669544
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x10
call fcn.00404c40
test al, al
jne 0x49d055
push 0x12
push 0x669544
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x800a
push ecx
mov byte [ebp - 4], 0x11
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49d0a1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d429
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x669528
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x12
call fcn.00404c40
test al, al
jne 0x49d0e5
push 0xc
push 0x669528
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x800b
push ecx
mov byte [ebp - 4], 0x13
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49d131
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0x24]
mov dword [ebp - 0x28], eax
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d433
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push 0x669578
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x14
call fcn.00404c40
test al, al
jne 0x49d175
push 0xb
push 0x669578
lea ecx, [ebp - 0x24]
call fcn.00405050
push 0x800f
push ecx
mov byte [ebp - 4], 0x15
mov esi, esp
mov dword [ebp - 0x28], esi
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
push eax
call fcn.00404800
add esp, 4
lea ecx, [ebx + 0x2d4]
add eax, 0x10
mov dword [esi], eax
call fcn.0046de90
mov byte [ebp - 4], 1
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49d1c1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebx + 0x428], 0x6a22d8
xorps xmm0, xmm0
mov eax, dword [0x6a23cc]
mov dword [ebx + 0x4d0], eax
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 0x20]
movups xmmword [ebp - 0x20], xmm0
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push 0
push eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x20]
push eax
push ecx
mov esi, esp
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x24], esi
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
push eax
call fcn.00404800
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 0x16
mov esi, esp
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
mov dword [ebp - 0x24], esp
push eax
mov dword [ebp - 0x2c], esi
call fcn.00404800
add eax, 0x10
add esp, 4
mov dword [esi], eax
mov byte [ebp - 4], 0x17
call fcn.004af2f1
push dword [ebx + 0x20]
lea ecx, [ebx + 0xac]
mov eax, dword [eax + 8]
push eax
mov byte [ebp - 4], 1
call fcn.00478540
test eax, eax
jne 0x49d322
call fcn.004a6e1d
mov ecx, eax
test ecx, ecx
je 0x49d43d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
lea edx, [ebx + 0x238]
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x28]
call fcn.00486b30
mov esi, eax
push 0x66956c
push str.TEXT_PROGRAM_INVALID
mov ecx, 0x6a22d8
mov byte [ebp - 4], 0x19
call fcn.0040dc60
push dword [ebx + 0x248]
push dword [ebx + 0x244]
push dword [ebx + 0x240]
push dword [ebx + 0x23c]
push dword [ebx + 0x238]
push dword [esi]
push eax
lea eax, [ebp - 0x24]
push str._s_n_nskin_open_error____s_Code:0x_x___str1:_s_str2:_s_line:_d_col:_d
push eax
call fcn.00404970
mov byte [ebp - 4], 0x18
add esp, 0x24
mov edx, dword [ebp - 0x28]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49d2f1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0x24]
mov ecx, ebx
push 0x10
push 0x669650
push esi
call fcn.004b1fb6
mov byte [ebp - 4], 1
add esi, 0xfffffff0
mov eax, edi
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x49d31e
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
xor esi, esi
jmp 0x49d37c
push 0
push 0x86000000
push 0xcd0000
mov ecx, ebx
call fcn.004b6af9
push 0
push 0
push 1
mov ecx, ebx
call fcn.004b6b3b
push 0xffffffffffffffe6
push dword [ebx + 0x20]
call dword [sym.imp.USER32.dll_GetClassLongW]
and eax, 0xfffffff7
push eax
push 0xffffffffffffffe6
push dword [ebx + 0x20]
call dword [sym.imp.USER32.dll_SetClassLongW]
push 6
push dword [ebx + 0x474]
mov ecx, ebx
push dword [ebx + 0x470]
push 0
push 0
push 0
call fcn.004b6ede
mov esi, 1
mov byte [ebp - 4], 0
mov eax, edi
mov edx, dword [ebp + 8]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x49d39a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
lock xadd dword [eax + 0xc], edi
dec edi
test edi, edi
jg 0x49d3b9
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, esi
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.005eb48e
mov esp, ebp
pop ebp
ret 8
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
push 0x80004005
call fcn.00405000
int3