Function at 0x48b230
Capabilities:
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c4c40
mov eax, dword fs:[0]
push eax
sub esp, 0x170
mov eax, dword [0x62a780]
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 esi, ecx
mov dword [ebp - 0x178], esi
mov eax, dword [esi + 0x234]
mov byte [eax + esi + 0x1ac], 0
cmp dword [esi + 0x188], 0xffffffff
jle 0x48b3e0
mov ecx, dword [esi + 0x14f4c]
add ecx, 4
call fcn.0044e370
mov edi, eax
test edi, edi
je 0x48b3e0
nop dword [eax]
mov ecx, dword [esi + 0x14f4c]
push edi
add ecx, 4
call fcn.0044e560
cmp dword [edi + 0x118], 0
jne 0x48b2c2
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax]
jmp 0x48b2d9
imul ecx, dword [esi + 0x188], 0x980
push edi
mov ecx, dword [ecx + esi + 0x2d8]
call fcn.0050c1c0
mov ecx, dword [esi + 0x14f4c]
add ecx, 4
call fcn.0044e370
mov edi, eax
test edi, edi
jne 0x48b2a0
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], eax
mov ecx, dword [esi + 0x180]
mov dword [ebp - 4], eax
mov eax, ecx
sar eax, 8
mov byte [ebp - 0x157], al
mov eax, ecx
sar eax, 0x10
mov byte [ebp - 0x158], cl
mov byte [ebp - 0x156], al
lea eax, [ebp - 0x158]
sar ecx, 0x18
push eax
mov byte [ebp - 0x155], cl
lea ecx, [ebp - 0x174]
push edi
mov byte [ebp - 0x154], 0
call fcn.0043ec20
mov eax, dword [0x62eb80]
lea edx, [ebp - 0x174]
mov word [ebp - 0x15c], 0x41
push edx
push edi
mov ecx, dword [eax + 0x34]
lea edx, [ebp - 0x15c]
push edx
push 2
mov eax, dword [ecx]
call dword [eax + 4]
mov edi, dword [ebp - 0x174]
mov dword [ebp - 4], 0xffffffff
test edi, edi
je 0x48b3e0
mov ecx, dword [ebp - 0x16c]
mov eax, 0x66666667
sub ecx, edi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
mov eax, edi
cmp ecx, 0x1000
jb 0x48b3b8
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x48bbe5
push ecx
push edi
call fcn.00558879
add esp, 8
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0
lea eax, [esi + 0x18c]
xor ecx, ecx
cmp byte [eax], 0x20
jne 0x48b3f9
nop dword [eax]
lea eax, [eax + 1]
inc ecx
cmp byte [eax], 0x20
je 0x48b3f0
add ecx, 0x18c
mov byte [ebp - 0x15f], 0
add ecx, esi
push ecx
mov dword [ebp - 0x158], ecx
mov al, byte [ecx]
mov byte [ebp - 0x160], al
lea eax, [ebp - 0x160]
push eax
lea eax, [ebp - 0x50]
push str.users_s_s.use
push eax
call fcn.0043d370
mov cl, byte [ebp - 0x50]
add esp, 0x10
test cl, cl
je 0x48b450
lea eax, [ebp - 0x50]
nop dword [eax]
cmp cl, 0x20
jne 0x48b448
mov byte [eax], 0x2d
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x48b440
lea eax, [ebp - 0x50]
push 0x5d1d00
push eax
call fcn.0056868c
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x48bb35
lea eax, [esi + 0x1ac]
xor edi, edi
cmp byte [eax], 0x20
jne 0x48b481
lea eax, [eax + 1]
inc edi
cmp byte [eax], 0x20
je 0x48b478
movsd xmm0, qword [0x5d1d80]
sub esp, 8
movsd qword [esp], xmm0
push 0x5d4870
push ebx
call fcn.0043d340
lea eax, [esi + 0x1ac]
add eax, edi
push eax
push dword [ebp - 0x158]
push str._s_n_s_n
push ebx
call fcn.0043d340
push dword [esi + 0x14f20]
push dword [esi + 0x14f1c]
push dword [esi + 0x23c]
push dword [esi + 0x238]
push dword [esi + 0x14f10]
push str._d__ld__ld__d__d_n
push ebx
call fcn.0043d340
push dword [esi + 0x14f88]
push dword [esi + 0x14f84]
push str._d__d_n
push ebx
call fcn.0043d340
movzx eax, word [esi + 0x14f6a]
add esp, 0x4c
push eax
movzx eax, word [esi + 0x14f68]
push eax
movzx eax, word [esi + 0x14f66]
push eax
movzx eax, word [esi + 0x14f64]
push eax
movzx eax, word [esi + 0x14f60]
push eax
movzx eax, word [esi + 0x14f62]
push eax
movzx eax, word [esi + 0x14f5e]
push eax
movzx eax, word [esi + 0x14f5c]
push eax
push str._d__d__d__d__d__d__d__d_n
push ebx
call fcn.0043d340
movzx eax, word [esi + 0x14f7a]
push eax
movzx eax, word [esi + 0x14f78]
push eax
movzx eax, word [esi + 0x14f76]
push eax
movzx eax, word [esi + 0x14f74]
push eax
movzx eax, word [esi + 0x14f70]
push eax
movzx eax, word [esi + 0x14f72]
push eax
movzx eax, word [esi + 0x14f6e]
push eax
movzx eax, word [esi + 0x14f6c]
push eax
push str._d__d__d__d__d__d__d__d_n
push ebx
call fcn.0043d340
add esp, 0x50
push dword [esi + 0x14f7c]
push 0x5d49e8
push ebx
call fcn.0043d340
lea edi, [esi + 0x2d1]
mov dword [ebp - 0x164], 0
add esp, 0xc
mov dword [ebp - 0x168], edi
nop dword [eax]
movzx eax, byte [edi]
push eax
movzx eax, byte [edi - 1]
push eax
movzx eax, byte [edi - 2]
push eax
push dword [edi - 0xd]
lea eax, [edi - 0x31]
push eax
push str._s_n_d__d__d__d_n
push ebx
call fcn.0043d340
movzx eax, byte [edi + 3]
push eax
movzx eax, byte [edi + 2]
push eax
movzx eax, byte [edi + 1]
push eax
push dword [edi - 9]
push str._d__d__d__d_n
push ebx
call fcn.0043d340
movzx eax, byte [edi - 3]
push eax
movzx eax, byte [edi - 4]
push eax
movzx eax, byte [edi - 5]
push eax
push dword [edi - 0x11]
push str._d__d__d__d_n
push ebx
call fcn.0043d340
movss xmm0, dword [edi + 0x2f]
add esp, 0x4c
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push 0x5d4870
push ebx
call fcn.0043d340
push dword [edi + 0x27]
push dword [edi + 0x2b]
push str._ld__ld_n
push ebx
call fcn.0043d340
push dword [edi + 0x23]
push dword [edi + 0x1f]
push dword [edi + 0x1b]
push dword [edi + 0x17]
push str._ld__ld__ld__ld_n
push ebx
call fcn.0043d340
push dword [edi + 0x43]
push dword [edi + 0x3f]
push dword [edi + 0x3b]
push dword [edi + 0x37]
push str._d__d__d__d_n
push ebx
call fcn.0043d340
movzx eax, word [edi + 0x47]
add esp, 0x50
push dword [edi + 0x8ff]
push dword [edi + 0x4b]
push eax
push str._ld__ld__d_n
push ebx
call fcn.0043d340
mov ecx, dword [ebp - 0x164]
lea eax, [edi + 0x53]
add esp, 0x14
mov dword [ebp - 0x158], eax
cmp ecx, dword [esi + 0x188]
jne 0x48b6b6
mov ecx, eax
call fcn.00513c20
jmp 0x48b6bc
mov dword [ebp - 0x158], eax
movzx eax, word [edi + 0x61]
push eax
movzx eax, word [edi + 0x5f]
push eax
movzx eax, word [edi + 0x5d]
push eax
movzx eax, word [edi + 0x5b]
push eax
movzx eax, word [edi + 0x57]
push eax
movzx eax, word [edi + 0x59]
push eax
movzx eax, word [edi + 0x55]
push eax
mov eax, dword [ebp - 0x158]
movzx eax, word [eax]
push eax
push str._d__d__d__d__d__d__d__d_n
push ebx
call fcn.0043d340
lea esi, [edi + 0x83]
add esp, 0x28
mov edi, 2
lea eax, [esi - 0x20]
push eax
push 0x5d0658
push ebx
call fcn.0043d340
movss xmm0, dword [esi]
add esp, 4
movzx eax, byte [esi - 7]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push eax
movzx eax, byte [esi - 8]
push eax
push dword [esi - 0xc]
movzx eax, byte [esi - 0xd]
push eax
movzx eax, byte [esi - 0xe]
push eax
movzx eax, byte [esi - 0xf]
push eax
movzx eax, byte [esi - 0x10]
push eax
push str._d__d__d__d__ld__d__d__f_n
push ebx
call fcn.0043d340
add esp, 0x2c
lea esi, [esi + 0x34]
sub edi, 1
jne 0x48b702
mov esi, dword [ebp - 0x178]
mov eax, dword [ebp - 0x164]
mov edi, dword [ebp - 0x168]
cmp eax, dword [esi + 0x188]
jne 0x48bbc3
cmp dword [esi + 0x14f48], 0
je 0x48b968
mov ecx, esi
call fcn.00474a20
cmp eax, 9
jle 0x48b968
mov eax, dword [esi + 0x14f48]
add eax, 0x184
cmp byte [eax], 0
jle 0x48b7b3
push eax
push 0x5d0658
push ebx
call fcn.0043d340
add esp, 0xc
jmp 0x48b7c1
push str.NO_NAME_n
push ebx
call fcn.0043d340
add esp, 8
mov edx, dword [esi + 0x14f48]
sub esp, 8
movss xmm0, dword [edx + 0x1a8]
movzx eax, byte [edx + 0x1a7]
cvtps2pd xmm0, xmm0
mov ecx, dword [edx + 0x1b0]
movsd qword [esp], xmm0
movss xmm0, dword [edx + 0x1f4]
push eax
movzx eax, byte [edx + 0x1a6]
push eax
movzx eax, byte [edx + 0x1a5]
push eax
movzx eax, byte [edx + 0x1a4]
push eax
sub esp, 8
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push dword [edx + 0x234]
push dword [edx + 0x1b8]
push dword [edx + 0x1bc]
push dword [edx + 0x1b4]
push ecx
push ecx
push dword [edx + 0x224]
push dword [edx + 0x220]
push str._d__d__ld__ld__ld__ld__ld__d__f__d__d__d__d__f_n
push ebx
call fcn.0043d340
mov eax, dword [esi + 0x14f48]
push 0x20
movzx eax, byte [eax + 0x1a7]
mov byte [edi + 0x926], al
mov eax, dword [esi + 0x14f48]
movzx eax, byte [eax + 0x1a6]
mov byte [edi + 0x925], al
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x1b4]
mov dword [edi + 0x943], eax
mov eax, dword [esi + 0x14f48]
movzx eax, byte [eax + 0x1a5]
mov byte [edi + 0x924], al
mov eax, dword [esi + 0x14f48]
movzx eax, byte [eax + 0x1a4]
mov byte [edi + 0x923], al
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x1a8]
mov dword [edi + 0x927], eax
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x220]
mov dword [edi + 0x92f], eax
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x224]
mov dword [edi + 0x933], eax
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x1ac]
mov dword [edi + 0x93b], eax
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x1b0]
mov dword [edi + 0x93f], eax
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x1bc]
mov dword [edi + 0x94b], eax
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x1b8]
mov dword [edi + 0x947], eax
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x234]
mov dword [edi + 0x937], eax
mov eax, dword [esi + 0x14f48]
mov eax, dword [eax + 0x1f4]
mov dword [edi + 0x92b], eax
lea eax, [edi + 0x903]
push eax
mov eax, dword [esi + 0x14f48]
add eax, 0x184
push 0x20
push eax
call fcn.0044d210
add esp, 0x58
jmp 0x48ba40
cmp dword [esi + 0x14f10], 0
jne 0x48b99b
mov ecx, esi
call fcn.00474a20
cmp eax, 0xa
jge 0x48b99b
push str.NO_MONSTER_n
push ebx
call fcn.0043d340
push str.0_0_0_0_0_0_0_0_0.0_0_0_0_0_0.0_n
push ebx
call fcn.0043d340
add esp, 0x10
jmp 0x48ba40
cmp byte [edi + 0x903], 0
lea eax, [edi + 0x903]
jg 0x48bbd1
push str.NO_NAME_n
push ebx
call fcn.0043d340
add esp, 8
movss xmm0, dword [edi + 0x927]
sub esp, 8
movzx eax, byte [edi + 0x926]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
movss xmm0, dword [edi + 0x92b]
push eax
movzx eax, byte [edi + 0x925]
push eax
movzx eax, byte [edi + 0x924]
push eax
movzx eax, byte [edi + 0x923]
push eax
sub esp, 8
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push dword [edi + 0x937]
push dword [edi + 0x947]
push dword [edi + 0x94b]
push dword [edi + 0x943]
push dword [edi + 0x93b]
push dword [edi + 0x93f]
push dword [edi + 0x933]
push dword [edi + 0x92f]
push str._d__d__ld__ld__ld__ld__ld__d__f__d__d__d__d__f_n
push ebx
call fcn.0043d340
add esp, 0x48
lea esi, [edi + 0xcb]
mov dword [ebp - 0x158], 4
mov edi, 5
push dword [esi + 0x50]
push dword [esi]
push str.__d__d
push ebx
call fcn.0043d340
add esp, 0x10
add esi, 4
sub edi, 1
jne 0x48ba55
sub dword [ebp - 0x158], 1
jne 0x48ba50
push 0x5d2f28
push ebx
call fcn.0043d340
mov esi, dword [ebp - 0x168]
add esp, 8
add esi, 0x16b
mov edi, 6
push ebx
mov ecx, esi
call fcn.00522f30
add esi, 0x138
sub edi, 1
jne 0x48ba98
mov edi, dword [ebp - 0x168]
lea eax, [edi + 0x8bf]
push eax
push dword [edi + 0x8bb]
push str._d_n_s_n
push ebx
call fcn.0043d340
mov ecx, dword [edi + 7]
add esp, 0x10
push ebx
call fcn.0050d160
mov ecx, dword [edi + 0xb]
push ebx
call fcn.0050d160
mov ecx, dword [edi + 0xf]
push ebx
call fcn.0050d160
mov ecx, dword [edi + 0x13]
push ebx
call fcn.0050d160
mov eax, dword [ebp - 0x164]
add edi, 0x980
mov esi, dword [ebp - 0x178]
inc eax
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x168], edi
cmp eax, 8
jl 0x48b5c0
mov ecx, dword [esi + 0x14f50]
push ebx
call fcn.0050d160
push ebx
mov ecx, esi
call fcn.0048bbf0
push ebx
call fcn.0056839e
add esp, 4
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x150]
push str._s.crc
push eax
call fcn.0043d370
lea eax, [ebp - 0x17c]
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.00449ee0
mov edi, dword [ebp - 0x17c]
lea eax, [ebp - 0x150]
mov ebx, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
add esp, 0x14
push 0
push eax
call ebx
lea eax, [ebp - 0x150]
push 0x5d1d00
push eax
call fcn.0056868c
push edi
mov esi, eax
push 0x5d1cfc
push esi
call fcn.0043d340
push esi
call fcn.0056839e
add esp, 0x18
lea eax, [ebp - 0x150]
push 2
push eax
call ebx
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.00558887
mov esp, ebp
pop ebp
ret
lea eax, [edi + 0x903]
test eax, eax
je 0x48b9ae
push eax
push 0x5d0658
push ebx
call fcn.0043d340
add esp, 0xc
jmp 0x48b9bc
call fcn.0058ffe0
int3