Function at 0x670a5fc0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x30
mov eax, dword [ecx + 4]
push ebx
push ebp
push esi
push edi
xor edi, edi
xor esi, esi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
mov byte [eax + 0x88], 1
cmp dword [esp + 0x4c], edi
jl 0x670a63d6
jg 0x670a6004
cmp dword [esp + 0x48], edi
jbe 0x670a63d6
jmp 0x670a6004
mov ecx, dword [esp + 0x14]
mov esi, dword [ecx + 4]
mov ebx, 1
mov dword [esp + 0x2c], edi
lea ebp, [esp + 0x13]
mov edx, dword [esi + 0x54]
cmp edx, edi
je 0x670a6053
mov eax, dword [esi + 0x58]
movzx ecx, byte [eax]
dec edx
inc eax
mov dword [esi + 0x54], edx
mov dword [esi + 0x58], eax
cmp ecx, 0xffffffff
je 0x670a6053
mov eax, dword [esi + 0x80]
add dword [eax], ebx
adc dword [eax + 4], edi
cmp cl, 0xd
jne 0x670a6044
test byte [esi + 0x4c], 0x10
jne 0x670a6014
mov byte [esp + 0x13], cl
mov eax, ebx
mov dword [esp + 0x1c], edi
jmp 0x670a6303
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
jmp 0x670a6060
push ebx
push ebp
lea ecx, [esi + 0x54]
call fcn.670a4d40
mov edi, eax
test edi, edi
jle 0x670a60a5
mov ecx, dword [esi + 0x80]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
add dword [esp + 0x20], eax
adc dword [esp + 0x24], edx
cmp eax, ebx
jne 0x670a6098
cmp edx, dword [esp + 0x2c]
jne 0x670a6098
test byte [esi + 0x4c], 0x10
je 0x670a6363
add ebp, edi
sub ebx, eax
sbb dword [esp + 0x2c], edx
jmp 0x670a61e1
cmp byte [esi + 0x89], 0
je 0x670a60d9
test byte [esi + 0x4c], 1
je 0x670a6369
mov ecx, esi
mov byte [esi + 0x89], 0
call sym.QtCore4.dll_public:_bool___thiscall_QIODevicePrivate::isSequential_void_const
test al, al
je 0x670a60d9
lea eax, [esi + 0x78]
mov dword [esi + 0x80], eax
mov dword [esi + 0x84], eax
mov ecx, ebx
or ecx, dword [esp + 0x2c]
je 0x670a6391
test byte [esi + 0x4c], 0x20
jne 0x670a61e1
cmp dword [esp + 0x2c], 0
jg 0x670a61f6
jl 0x670a6108
cmp ebx, 0x4000
jae 0x670a61e1
push 0x4000
lea ecx, [esi + 0x54]
call fcn.670a50a0
mov edx, dword [esi + 0x68]
mov dword [esp + 0x18], eax
cmp edx, dword [esi + 0x70]
jne 0x670a6129
mov eax, dword [esi + 0x6c]
cmp eax, dword [esi + 0x74]
je 0x670a614f
mov ecx, esi
call sym.QtCore4.dll_public:_bool___thiscall_QIODevicePrivate::isSequential_void_const
test al, al
jne 0x670a614f
mov eax, dword [esi + 0x6c]
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx + 0x40]
push eax
mov eax, dword [esi + 0x68]
push eax
call edx
test al, al
je 0x670a63a2
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov edx, dword [esp + 0x18]
mov eax, dword [eax + 0x60]
push 0
push 0x4000
push edx
call eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
test edx, edx
jg 0x670a617c
jl 0x670a6178
test eax, eax
jae 0x670a617c
xor eax, eax
jmp 0x670a6180
mov eax, dword [esp + 0x30]
mov ecx, 0x4000
sub ecx, eax
push ecx
lea ecx, [esi + 0x54]
call fcn.670a4c30
cmp dword [esp + 0x34], 0
jl 0x670a61e1
jg 0x670a61a0
cmp dword [esp + 0x30], 0
jbe 0x670a61e1
mov eax, dword [esi + 0x84]
mov edx, dword [esp + 0x30]
add dword [eax], edx
mov ecx, dword [esp + 0x34]
adc dword [eax + 4], ecx
cmp dword [esi + 0x54], 0
je 0x670a61e1
push ebx
push ebp
lea ecx, [esi + 0x54]
call fcn.670a4d40
mov ecx, dword [esi + 0x80]
mov edi, eax
cdq
add dword [esp + 0x20], eax
adc dword [esp + 0x24], edx
add ebp, edi
sub ebx, eax
sbb dword [esp + 0x2c], edx
add dword [ecx], eax
adc dword [ecx + 4], edx
cmp dword [esp + 0x2c], 0
jl 0x670a628b
jg 0x670a61f6
test ebx, ebx
je 0x670a628b
mov edx, dword [esi + 0x68]
cmp edx, dword [esi + 0x70]
jne 0x670a6206
mov eax, dword [esi + 0x6c]
cmp eax, dword [esi + 0x74]
je 0x670a622c
mov ecx, esi
call sym.QtCore4.dll_public:_bool___thiscall_QIODevicePrivate::isSequential_void_const
test al, al
jne 0x670a622c
mov eax, dword [esi + 0x6c]
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx + 0x40]
push eax
mov eax, dword [esi + 0x68]
push eax
call edx
test al, al
je 0x670a63a2
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov eax, dword [eax + 0x60]
push edx
push ebx
push ebp
call eax
mov ecx, eax
and ecx, edx
cmp ecx, 0xffffffff
jne 0x670a6259
mov edx, dword [esp + 0x20]
mov eax, edx
or eax, dword [esp + 0x24]
je 0x670a636f
jmp 0x670a6297
test edx, edx
jl 0x670a628b
jg 0x670a6263
test eax, eax
je 0x670a628b
mov ecx, dword [esi + 0x80]
add edi, eax
add dword [esp + 0x20], eax
adc dword [esp + 0x24], edx
add ebp, eax
sub ebx, eax
sbb dword [esp + 0x2c], edx
add dword [ecx], eax
adc dword [ecx + 4], edx
mov ecx, dword [esi + 0x84]
add dword [ecx], eax
adc dword [ecx + 4], edx
mov ecx, dword [esp + 0x20]
mov edx, ecx
or ecx, dword [esp + 0x24]
je 0x670a62f9
test byte [esi + 0x4c], 0x10
je 0x670a62f9
mov eax, ebp
sub eax, edi
mov dword [esp + 0x18], ebp
cmp eax, ebp
jae 0x670a62f9
cmp byte [eax], 0xd
je 0x670a62be
mov edi, edi
inc eax
cmp eax, ebp
je 0x670a63b9
cmp byte [eax], 0xd
jne 0x670a62b0
mov edi, eax
cmp eax, ebp
jae 0x670a62ec
mov cl, byte [eax]
inc eax
cmp cl, 0xd
je 0x670a62d1
mov byte [edi], cl
inc edi
jmp 0x670a62e2
add edx, 0xffffffff
adc dword [esp + 0x24], 0xffffffff
dec ebp
add ebx, 1
adc dword [esp + 0x2c], 0
cmp eax, dword [esp + 0x18]
jb 0x670a62c4
mov dword [esp + 0x20], edx
cmp eax, edi
setne al
test al, al
jne 0x670a6060
mov eax, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x3c]
mov esi, eax
cmp eax, 1
jne 0x670a63c8
mov eax, dword [esp + 0x44]
mov cl, byte [esp + 0x13]
mov byte [eax], cl
inc eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x38]
add eax, esi
mov edi, 0
adc edx, edi
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
cmp cl, 0xa
je 0x670a63f2
cmp edx, dword [esp + 0x4c]
jl 0x670a6000
jg 0x670a63f2
cmp eax, dword [esp + 0x48]
jb 0x670a6000
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret 0xc
mov eax, dword [esp + 0x20]
jmp 0x670a62fb
cmp dword [esi + 0x4c], 0
jne 0x670a6378
or eax, 0xffffffff
mov dword [esp + 0x1c], eax
jmp 0x670a6303
push str.QIODevice::read:_WriteOnly_device
call sym.QtCore4.dll_void___cdecl_qWarning_char_const__
add esp, 4
or eax, 0xffffffff
mov dword [esp + 0x1c], eax
jmp 0x670a6303
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x1c], ecx
jmp 0x670a6303
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, eax
or edx, ecx
je 0x670a636f
mov dword [esp + 0x1c], ecx
jmp 0x670a6303
mov ecx, dword [esp + 0x24]
mov eax, edx
mov dword [esp + 0x1c], ecx
jmp 0x670a6303
mov eax, dword [esp + 0x38]
mov ecx, eax
or ecx, edx
jne 0x670a63f2
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 0x2c]
call eax
test al, al
je 0x670a63ee
pop edi
mov eax, esi
pop esi
pop ebp
cdq
pop ebx
add esp, 0x30
ret 0xc
or eax, 0xffffffff
cdq
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret 0xc