Function at 0x48b62d
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x54
mov eax, dword [0x6ccd44]
xor eax, esp
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
mov dword [esp + 0x14], eax
mov eax, closesocket
mov dword [esp + 0x10], edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x24], esi
push edi
cmp esi, eax
ja 0x48b7c4
mov edi, dword [ebp + 0x10]
cmp edi, eax
ja 0x48b7c4
xor ebx, ebx
test ecx, ecx
je 0x48b7c4
cmp esi, 1
jbe 0x48b68c
cmp byte [esi + edx - 1], bl
jne 0x48b68c
dec esi
mov dword [esp + 0x28], esi
mov eax, dword [ecx + 0x100c]
test eax, eax
je 0x48b7e0
push esi
push edx
mov ecx, eax
call fcn.00487886
mov dword [esp + 0x18], eax
pop ecx
pop ecx
test eax, eax
jne 0x48b78e
lea ecx, [esi + 4]
mov dword [esp + 0x20], ebx
cmp ecx, 0xffffffff
jae 0x48b6e6
push 0xfffffffffffffffb
pop eax
sub eax, esi
je 0x48b6e6
cmp ecx, 0xffffffef
jae 0x48b6e6
push 0x305
push 0x72335c
lea eax, [esi + 0x14]
push 1
push eax
call fcn.005e7f10
add esp, 0x10
lea ecx, [esi + 4]
jmp 0x48b6e8
mov eax, ebx
push ebx
mov edx, ecx
mov ecx, eax
push ebx
call fcn.004811d1
push esi
push dword [esp + 0x20]
mov ecx, eax
mov dword [esp + 0x34], eax
mov edx, dword [eax - 0x10]
call section..text
mov edx, dword [esp + 0x24]
xor ecx, ecx
push esi
call fcn.00497da8
mov ecx, dword [esp + 0x38]
add esp, 0x14
mov dword [esi + ecx], eax
push dword [ecx - 0x10]
push ecx
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx + 0x100c]
call fcn.00487886
mov dword [esp + 0x18], eax
pop ecx
pop ecx
test eax, eax
je 0x48b775
lea ecx, [eax + 0x34]
push ecx
lea edx, [esp + 0x24]
push edx
mov edx, dword [eax + 0x30]
push ebx
call fcn.00449476
mov eax, dword [esp + 0x24]
add esp, 0xc
test eax, eax
je 0x48b775
cmp edi, dword [esp + 0x20]
jb 0x48b775
push ecx
lea ecx, [esp + 0x24]
push ecx
push eax
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 0x30]
lea ecx, [eax + 0x34]
call fcn.00449476
add esp, 0xc
mov ecx, dword [esp + 0x24]
call fcn.00481286
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x48b7c6
mov eax, dword [esp + 0x10]
test eax, eax
je 0x48b7d8
mov esi, dword [esp + 0x18]
test esi, esi
je 0x48b7c0
cmp edi, dword [eax + 0x30]
jb 0x48b7c0
push dword [eax + 0x30]
add eax, 0x34
mov edx, edi
push eax
mov ecx, esi
call section..text
mov eax, dword [esp + 0x18]
pop ecx
pop ecx
mov ecx, dword [eax + 0x30]
cmp edi, ecx
jbe 0x48b7bb
mov byte [ecx + esi], bl
mov eax, dword [eax + 0x30]
jmp 0x48b7c6
test edi, edi
je 0x48b7bb
xor eax, eax
mov ecx, dword [esp + 0x5c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.005b35b0
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov ecx, dword [ecx + 0x1008]
push esi
push edx
call fcn.00487886
mov edi, eax
pop ecx
pop ecx
test edi, edi
jne 0x48b884
lea edi, [esi + 4]
cmp edi, 0xffffffff
jae 0x48b827
push 0xfffffffffffffffb
pop eax
sub eax, esi
je 0x48b827
cmp edi, 0xffffffef
jae 0x48b827
push 0x32c
push 0x723380
lea eax, [esi + 0x14]
push 1
push eax
call fcn.005e7f10
add esp, 0x10
jmp 0x48b829
mov eax, ebx
push ebx
push ebx
mov edx, edi
mov ecx, eax
call fcn.004811d1
mov edi, dword [esp + 0x30]
mov esi, eax
push edi
push dword [esp + 0x20]
mov ecx, esi
mov edx, dword [esi - 0x10]
call section..text
push edi
mov edx, esi
xor ecx, ecx
call fcn.00497da8
mov ecx, dword [esp + 0x30]
add esp, 0x14
mov dword [edi + esi], eax
push dword [esi - 0x10]
mov ecx, dword [ecx + 0x1008]
push esi
call fcn.00487886
pop ecx
pop ecx
mov ecx, esi
mov edi, eax
call fcn.00481286
xor eax, eax
test edi, edi
je 0x48b7c6
inc eax
jmp 0x48b886
mov eax, ebx
mov esi, dword [ebp + 0x10]
cmp dword [esp + 0x18], ebx
je 0x48b924
cmp esi, dword [edi]
jb 0x48b924
test eax, eax
jne 0x48b928
mov eax, dword [esp + 0x1c]
push ebx
push dword [edi + 0x38]
push dword [eax]
call fcn.005e2940
add esp, 0xc
test eax, eax
jne 0x48b7c4
mov eax, dword [esp + 0x1c]
push dword [eax]
push dword [edi]
push 1
push dword [esp + 0x24]
call fcn.005eac90
add esp, 0x10
test eax, eax
je 0x48b7c4
mov edx, dword [edi]
lea eax, [esp + 0x2c]
mov ecx, dword [esp + 0x18]
push eax
call fcn.0047f77f
lea edx, [esp + 0x2c]
mov ecx, ebx
mov eax, dword [edx + ecx*4]
cmp eax, dword [edi + ecx*4 + 4]
jne 0x48b7c4
inc ecx
cmp ecx, 0xc
jne 0x48b8f1
mov ecx, dword [edi]
cmp esi, ecx
jbe 0x48b911
mov eax, dword [esp + 0x18]
mov byte [ecx + eax], bl
test esi, esi
je 0x48b91d
cmp esi, dword [edi]
jb 0x48b9fb
mov ebx, dword [edi]
jmp 0x48b9fb
test eax, eax
je 0x48b911
mov ecx, dword [edi]
cmp ecx, 0xffffffff
jae 0x48b956
mov eax, ecx
not eax
test eax, eax
je 0x48b956
cmp ecx, 0xffffffef
jae 0x48b956
push 0x340
push 0x7233a4
lea eax, [ecx + 0x10]
push 1
push eax
call fcn.005e7f10
add esp, 0x10
jmp 0x48b958
mov eax, ebx
mov edx, dword [edi]
mov ecx, eax
push ebx
push ebx
call fcn.004811d1
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x24]
push ebx
push dword [edi + 0x38]
mov dword [esp + 0x20], eax
push dword [esi]
call fcn.005e2940
add esp, 0x14
test eax, eax
jne 0x48b7c4
push dword [esi]
push dword [edi]
push 1
push dword [esp + 0x1c]
call fcn.005eac90
add esp, 0x10
test eax, eax
je 0x48b7c4
mov esi, dword [esp + 0x18]
lea eax, [esp + 0x14]
mov edx, dword [edi]
push ecx
mov ecx, dword [esp + 0x14]
push eax
push esi
call fcn.00449476
mov ecx, dword [esp + 0x1c]
add esp, 0xc
test eax, eax
jne 0x48ba02
call fcn.00481286
test esi, esi
jne 0x48b9d2
mov eax, dword [esp + 0x14]
jmp 0x48b7c6
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x2c]
push eax
mov ecx, esi
call fcn.0047f77f
lea edx, [esp + 0x2c]
mov ecx, ebx
mov eax, dword [edx + ecx*4]
cmp eax, dword [edi + ecx*4 + 4]
jne 0x48b9fb
inc ecx
cmp ecx, 0xc
jne 0x48b9e8
mov ebx, dword [esp + 0x14]
mov eax, ebx
jmp 0x48b7c6
call fcn.00481286
jmp 0x48b7c4