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

Disassembly:
push 0xffffffffffffffff
push 0x671347be
mov eax, dword fs:[0]
push eax
sub esp, 0x88
push ebx
push ebp
push esi
push edi
mov eax, dword [0x67221378]
xor eax, esp
push eax
lea eax, [esp + 0x9c]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x20], ebx
mov ebp, dword [esp + 0xac]
lea eax, [ebx + 0x4c]
push eax
mov ecx, ebp
call sym.QtCore4.dll_public:_bool___thiscall_QString::operator_class_QString_const__const
test al, al
je 0x670358b6
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x67036058
mov dword [esp + 0x14], sym.QtCore4.dll_struct_QVectorData_QVectorData::shared_null
mov ecx, sym.QtCore4.dll_struct_QVectorData_QVectorData::shared_null
mov edx, 1
lock xadd dword [ecx], edx
xor edi, edi
mov dword [esp + 0xa4], 1
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], sym.QtCore4.dll_struct_QListData::Data_QListData::shared_null
mov eax, sym.QtCore4.dll_struct_QListData::Data_QListData::shared_null
mov ecx, 1
lock xadd dword [eax], ecx
mov ecx, dword [ebp]
mov eax, 0x30
mov word [esp + 0x28], ax
mov eax, dword [ecx + 8]
xor edx, edx
xor esi, esi
cmp eax, edi
mov byte [esp + 0xa4], 2
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x24], 0xffffffff
jle 0x67035da0
jmp 0x67035934
mov edx, dword [esp + 0x2c]
mov eax, dword [ebp]
mov ecx, dword [eax + 0xc]
lea eax, [ecx + edi*2]
movzx ecx, word [eax]
cmp cx, 0x27
jne 0x6703597f
inc edx
mov dword [esp + 0x24], edi
mov dword [esp + 0x2c], edx
cmp word [esp + 0x28], cx
je 0x67035965
mov edx, 0x27
mov word [esp + 0x28], dx
jmp case.0x670359af.66
cmp word [eax - 2], 0x5c
je case.0x670359af.66
mov eax, 0x30
mov word [esp + 0x28], ax
jmp case.0x670359af.66
cmp word [esp + 0x28], 0x27
je case.0x670359af.66
mov eax, 0xff
cmp ax, cx
sbb al, al
not al
and al, cl
movsx ecx, al
add ecx, 0xffffffbf
cmp ecx, 0x39
ja case.0x670359af.66
movzx ecx, byte [ecx + 0x6703609c]
jmp dword [ecx*4 + 0x67036078]
cmp dword [ebx + 0x54], 0xe
je case.0x670359af.66
xor ebx, ebx
cmp al, 0x68
setne bl
mov edx, edi
sub edx, dword [esp + 0x2c]
push 2
mov dword [esp + 0x44], edx
mov edx, edi
mov ecx, ebp
dec ebx
and ebx, 0xfffffff0
add ebx, 0x20
mov dword [esp + 0x40], ebx
call fcn.6702e9d0
mov dword [esp + 0x48], eax
add esp, 4
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x18]
call fcn.67032c20
mov ecx, dword [esp + 0x24]
push ecx
mov edx, edi
sub edx, esi
push edx
lea eax, [esp + 0x24]
push ebp
push eax
call fcn.67034f40
mov ecx, dword [esp + 0x54]
add esp, 0x10
or dword [esp + 0x18], ebx
lea edi, [edi + ecx - 1]
jmp 0x67035d8e
cmp dword [ebx + 0x54], 0xe
je case.0x670359af.66
mov eax, edi
sub eax, edx
push 2
mov edx, edi
mov ecx, ebp
mov dword [esp + 0x64], 8
mov dword [esp + 0x68], eax
call fcn.6702e9d0
add esp, 4
lea ecx, [esp + 0x60]
mov ebx, eax
push ecx
lea ecx, [esp + 0x18]
mov dword [esp + 0x6c], ebx
call fcn.67032c20
mov edx, dword [esp + 0x24]
push edx
mov eax, edi
sub eax, esi
push eax
lea ecx, [esp + 0x24]
push ebp
push ecx
call fcn.67034f40
add esp, 0x10
or dword [esp + 0x18], 8
jmp 0x67035d8a
cmp dword [ebx + 0x54], 0xe
je case.0x670359af.66
mov eax, edi
sub eax, edx
push 2
mov edx, edi
mov ecx, ebp
mov dword [esp + 0x88], 4
mov dword [esp + 0x8c], eax
call fcn.6702e9d0
add esp, 4
lea ecx, [esp + 0x84]
mov ebx, eax
push ecx
lea ecx, [esp + 0x18]
mov dword [esp + 0x90], ebx
call fcn.67032c20
mov edx, dword [esp + 0x24]
push edx
mov eax, edi
sub eax, esi
push eax
lea ecx, [esp + 0x24]
push ebp
push ecx
call fcn.67034f40
add esp, 0x10
or dword [esp + 0x18], 4
jmp 0x67035d8a
cmp dword [ebx + 0x54], 0xe
je case.0x670359af.66
mov eax, edi
sub eax, edx
push 3
mov edx, edi
mov ecx, ebp
mov dword [esp + 0x70], 2
mov dword [esp + 0x74], eax
call fcn.6702e9d0
add esp, 4
xor ebx, ebx
cmp eax, 3
setge bl
lea ecx, [esp + 0x6c]
push ecx
lea ecx, [esp + 0x18]
lea ebx, [ebx + ebx + 1]
mov dword [esp + 0x78], ebx
call fcn.67032c20
mov edx, dword [esp + 0x24]
push edx
mov eax, edi
sub eax, esi
push eax
lea ecx, [esp + 0x24]
push ebp
push ecx
call fcn.67034f40
add esp, 0x10
or dword [esp + 0x18], 2
jmp 0x67035d8a
cmp dword [ebx + 0x54], 0xe
je case.0x670359af.66
cmp al, 0x41
sete bl
xor eax, eax
mov edx, edi
sub edx, dword [esp + 0x2c]
test bl, bl
setne al
lea ecx, [esp + 0x78]
push ecx
lea ecx, [esp + 0x18]
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], eax
call fcn.67032c20
mov edx, dword [esp + 0x24]
push edx
mov eax, edi
sub eax, esi
push eax
lea ecx, [esp + 0x24]
push ebp
push ecx
call fcn.67034f40
mov eax, dword [ebp]
mov ecx, dword [eax + 8]
or dword [esp + 0x28], 1
lea edx, [edi + 1]
add esp, 0x10
cmp edx, ecx
jge 0x67035d8e
mov eax, dword [eax + 0xc]
neg bl
sbb bl, bl
and bl, 0xe0
add bl, 0x70
movzx cx, bl
cmp word [eax + edi*2 + 2], cx
jne 0x67035d8e
mov edi, edx
jmp 0x67035d8e
cmp dword [ebx + 0x54], 0xf
je case.0x670359af.66
push 4
mov edx, edi
mov ecx, ebp
call fcn.6702e9d0
add esp, 4
cmp eax, 2
jl case.0x670359af.66
mov ebx, eax
sub ebx, 4
neg ebx
sbb ebx, ebx
and ebx, 0x400
xor edx, edx
mov ecx, edi
sub ecx, dword [esp + 0x2c]
add ebx, 0x400
cmp eax, 4
sete dl
lea eax, [esp + 0x48]
mov dword [esp + 0x4c], ecx
push eax
lea ecx, [esp + 0x18]
mov dword [esp + 0x4c], ebx
lea edx, [edx + edx + 2]
mov dword [esp + 0x54], edx
call fcn.67032c20
mov ecx, dword [esp + 0x24]
push ecx
mov edx, edi
sub edx, esi
push edx
lea eax, [esp + 0x24]
push ebp
push eax
call fcn.67034f40
mov ecx, dword [esp + 0x60]
add esp, 0x10
or dword [esp + 0x18], ebx
lea edi, [edi + ecx - 1]
jmp 0x67035d8e
cmp dword [ebx + 0x54], 0xf
je case.0x670359af.66
mov eax, edi
sub eax, edx
push 4
mov edx, edi
mov ecx, ebp
mov dword [esp + 0x94], 0x200
mov dword [esp + 0x98], eax
call fcn.6702e9d0
add esp, 4
lea ecx, [esp + 0x90]
mov ebx, eax
push ecx
lea ecx, [esp + 0x18]
mov dword [esp + 0x9c], ebx
call fcn.67032c20
mov edx, edi
sub edx, esi
push edx
push esi
lea eax, [esp + 0x40]
push eax
mov ecx, ebp
call sym.QtCore4.dll_public:_class_QString___thiscall_QString::mid_int__int_
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0xac], 3
call fcn.6702e890
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xa8], 4
call fcn.6701fb90
lea ecx, [esp + 0x34]
mov byte [esp + 0xa4], 3
call sym.QtCore4.dll_public:_void___thiscall_QString::destructor_void_
lea ecx, [esp + 0x38]
mov byte [esp + 0xa4], 2
call sym.QtCore4.dll_public:_void___thiscall_QString::destructor_void_
or dword [esp + 0x18], 0x200
jmp 0x67035d8a
cmp dword [ebx + 0x54], 0xf
je case.0x670359af.66
push 4
mov edx, edi
mov ecx, ebp
call fcn.6702e9d0
mov ebx, eax
xor edx, edx
add esp, 4
cmp ebx, 3
setl dl
mov eax, edi
sub eax, dword [esp + 0x2c]
lea ecx, [esp + 0x54]
push ecx
lea ecx, [esp + 0x18]
mov dword [esp + 0x5c], eax
dec edx
and edx, 0xf00
add edx, 0x100
mov dword [esp + 0x58], edx
mov dword [esp + 0x60], ebx
call fcn.67032c20
mov edx, dword [esp + 0x24]
push edx
mov eax, edi
sub eax, esi
push eax
lea ecx, [esp + 0x24]
push ebp
push ecx
call fcn.67034f40
mov edx, dword [esp + 0x64]
add esp, 0x10
or dword [esp + 0x18], edx
lea edi, [edi + ebx - 1]
mov ebx, dword [esp + 0x20]
lea esi, [edi + 1]
inc edi
cmp edi, dword [esp + 0x30]
jl 0x67035930
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 8]
test edx, edx
jne 0x67035e2a
cmp dword [ebx + 0x60], 1
jne 0x67035e2a
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0xa4], 1
test ecx, ecx
je 0x67035dfc
or eax, 0xffffffff
lock xadd dword [ecx], eax
jne 0x67035df8
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0xc]
lea edx, [eax + ecx*4 + 0x14]
mov ecx, dword [eax + 8]
push edx
lea edx, [eax + ecx*4 + 0x14]
push edx
lea ecx, [esp + 0x24]
mov esi, eax
call fcn.67017070
mov eax, dword [esi]
test eax, eax
jne 0x67035df8
push esi
call sym.QtCore4.dll_void___cdecl_qFree_void__
add esp, 4
mov eax, dword [esp + 0x14]
mov dword [esp + 0xa4], 0xffffffff
test eax, eax
je 0x67035e23
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x67035e23
mov edx, dword [esp + 0x14]
push 4
push edx
call sym.QtCore4.dll_public:_static_void___cdecl_QVectorData::free_struct_QVectorData___int_
add esp, 8
xor al, al
jmp 0x6703605a
mov ecx, dword [esp + 0x18]
and ecx, 0x11
cmp ecx, 0x10
jne 0x67035e7f
test edx, edx
jle 0x67035e7f
xor edi, edi
mov ebx, edx
mov edi, edi
mov eax, dword [eax]
cmp eax, 1
je 0x67035e5c
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
push ecx
push edx
lea ecx, [esp + 0x1c]
call fcn.67030860
mov eax, dword [esp + 0x14]
cmp dword [edi + eax + 0x10], 0x10
jne 0x67035e73
mov dword [edi + eax + 0x10], 0x20
mov eax, dword [esp + 0x14]
add edi, 0xc
sub ebx, 1
jne 0x67035e40
mov ebx, dword [esp + 0x20]
mov eax, dword [ebp]
cmp esi, dword [eax + 8]
jge 0x67035ea3
mov ecx, dword [esp + 0x24]
push ecx
mov edx, esi
sub edx, dword [esp + 0x34]
lea eax, [esp + 0x20]
push edx
push ebp
push eax
call fcn.67034f40
add esp, 0x10
jmp 0x67035eee
mov dword [esp + 0x2c], sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov ecx, sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov edx, 1
lock xadd dword [ecx], edx
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xa8], 5
call fcn.6701fb90
mov byte [esp + 0xa4], 2
mov ecx, sym.QtCore4.dll_struct_QString::Data_QString::shared_null
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x67035eee
push ecx
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
push ebp
lea ecx, [ebx + 0x4c]
call fcn.6705a9c0
mov eax, dword [esp + 0x1c]
cmp dword [ebx + 0x48], eax
lea edi, [ebx + 0x48]
je 0x67035f79
mov dword [esp + 0x30], eax
mov ecx, 1
lock xadd dword [eax], ecx
mov edx, dword [edi]
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x67035f62
mov ebp, dword [edi]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
lea esi, [ebp + ecx*4 + 0x14]
lea ebx, [ebp + edx*4 + 0x14]
cmp ebx, esi
je 0x67035f4e
nop
mov eax, dword [esi - 4]
sub esi, 4
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x67035f4a
mov edx, dword [esi]
push edx
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
cmp esi, ebx
jne 0x67035f30
mov eax, dword [ebp]
test eax, eax
jne 0x67035f5e
push ebp
call sym.QtCore4.dll_void___cdecl_qFree_void__
add esp, 4
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x30]
mov dword [edi], eax
test byte [eax + 0x10], 1
jne 0x67035f79
mov ecx, dword [eax + 4]
push ecx
mov ecx, edi
call fcn.67019c70
mov edi, dword [esp + 0x14]
lea esi, [ebx + 0x14]
mov edx, edi
mov eax, 1
lock xadd dword [edx], eax
mov ecx, dword [esi]
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x67035fa3
mov eax, dword [esi]
push 4
push eax
call sym.QtCore4.dll_public:_static_void___cdecl_QVectorData::free_struct_QVectorData___int_
add esp, 8
mov dword [esi], edi
test byte [edi + 0xc], 1
jne 0x67035fba
mov eax, dword [edi + 4]
mov ecx, dword [edi + 8]
push eax
push ecx
mov ecx, esi
call fcn.67030860
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [ebx + 8], edx
mov dword [ebx + 0x28], 0xffffffff
mov byte [esp + 0xa4], 1
test eax, eax
je 0x6703602d
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x6703602d
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 8]
lea esi, [eax + edx*4 + 0x14]
lea edi, [eax + ecx*4 + 0x14]
mov ebx, eax
cmp edi, esi
je 0x6703601e
lea esp, [esp]
mov edx, dword [esi - 4]
sub esi, 4
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x6703601a
mov ecx, dword [esi]
push ecx
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
cmp esi, edi
jne 0x67036000
mov edx, dword [ebx]
test edx, edx
jne 0x6703602d
push ebx
call sym.QtCore4.dll_void___cdecl_qFree_void__
add esp, 4
mov eax, dword [esp + 0x14]
mov dword [esp + 0xa4], 0xffffffff
test eax, eax
je 0x67036058
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x67036058
mov edx, dword [esp + 0x14]
push 4
push edx
call sym.QtCore4.dll_public:_static_void___cdecl_QVectorData::free_struct_QVectorData___int_
add esp, 8
mov al, 1
mov ecx, dword [esp + 0x9c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x94
ret 4