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

Disassembly:
push 0xffffffffffffffff
push 0x5961d3
mov eax, dword fs:[0]
push eax
sub esp, 0xe4
push ebx
push ebp
push esi
push edi
mov eax, dword [0x614b80]
xor eax, esp
push eax
lea eax, [esp + 0xf8]
mov dword fs:[0], eax
mov dword [esp + 0x14], ecx
mov ebx, dword [ecx + 0x1138]
push 0xc
mov dword [esp + 0x24], ebx
call fcn.00568473
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x442e9b
mov dword [eax], vtable.CTList_class_CCounterItem_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov ebp, eax
jmp 0x442e9d
xor ebp, ebp
cmp ebx, ecx
je 0x442f27
mov edi, dword [ebx + 4]
test edi, edi
je 0x442f27
mov eax, dword [edi + 4]
test eax, eax
je 0x442f27
mov esi, dword [eax + 0x18]
push 8
call fcn.00568473
add esp, 4
test eax, eax
je 0x442ed1
mov dword [eax], vtable.CCounterItem.0
mov dword [eax + 4], esi
mov ecx, eax
jmp 0x442ed3
xor ecx, ecx
test ebp, ebp
je 0x442f01
mov edx, dword [ebp + 4]
test edx, edx
je 0x442f01
mov eax, dword [edx + 4]
test eax, eax
je 0x442f01
mov esi, dword [ecx + 4]
cmp dword [eax + 4], esi
je 0x442f0b
test edx, edx
je 0x442f01
mov eax, dword [edx + 8]
test eax, eax
je 0x442f01
mov edx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x442ee8
push ecx
mov ecx, ebp
call fcn.004426f0
jmp 0x442f13
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
test edi, edi
je 0x442f27
mov eax, dword [edi + 8]
test eax, eax
je 0x442f27
mov edi, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x442eb3
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x1138]
mov eax, dword [ecx + 8]
cmp eax, dword [ebp + 8]
je 0x442f66
xor edx, edx
test ebx, ebx
je 0x442f66
mov eax, dword [ebx + 4]
test eax, eax
je 0x442f66
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x442f66
lea ecx, [ecx]
mov dword [ecx + 0x18], edx
inc edx
test eax, eax
je 0x442f66
mov eax, dword [eax + 8]
test eax, eax
je 0x442f66
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x442f50
mov ecx, ebp
call fcn.0043a0f0
mov edx, dword [ebp]
mov eax, dword [edx]
push 1
mov ecx, ebp
call eax
test ebx, ebx
je 0x44307b
mov edi, dword [ebx + 4]
mov dword [esp + 0x24], edi
test edi, edi
je 0x44307b
mov esi, dword [edi + 4]
test esi, esi
je 0x44307b
lea ebx, [ebx]
mov ecx, esi
call fcn.004789a0
mov ecx, esi
mov ebp, eax
call fcn.00478930
cmp dword [esi + 0x54], ebp
mov dword [esp + 0x18], eax
jge 0x442fbc
mov dword [esi + 0x54], ebp
cmp dword [esi + 0x48], 0
jne 0x44305f
mov edi, dword [esi + 0x18]
mov edx, 1
or al, 0xff
xor cl, cl
cmp dword [esi + 0x54], edx
jle 0x442fea
mov ebx, dword [esi + 0x54]
lea ebx, [ebx]
add edx, edx
add al, al
inc cl
cmp edx, ebx
jl 0x442fe0
mov edx, dword [esi + 0x538]
test edx, edx
jle 0x443005
movzx ebx, cl
cmp ebx, edx
jge 0x443005
mov cl, dl
mov al, 1
shl al, cl
dec al
not al
movzx eax, al
mov edx, edi
sar edx, cl
not eax
and edi, eax
mov eax, dword [esi + 0x5c]
or bl, 0xff
xor cl, cl
mov dword [esi + 0x20], edx
cmp eax, 0xffffffff
jne 0x443035
cmp dword [esp + 0x18], 0
jle 0x443030
mov eax, ebp
cdq
idiv dword [esp + 0x18]
jmp 0x443035
mov eax, 1
mov edx, 1
cmp eax, edx
jle 0x44304a
mov edi, edi
add edx, edx
add bl, bl
inc cl
cmp edx, eax
jl 0x443040
mov edx, edi
movzx eax, bl
sar edx, cl
not eax
and edi, eax
mov dword [esi + 0x28], edi
mov edi, dword [esp + 0x24]
mov dword [esi + 0x24], edx
test edi, edi
je 0x44307b
mov eax, dword [edi + 8]
test eax, eax
je 0x44307b
mov esi, dword [eax + 4]
mov edi, eax
mov dword [esp + 0x24], edi
test esi, esi
jne 0x442fa0
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x1130]
test eax, eax
je 0x443134
mov eax, dword [eax + 4]
mov dword [esp + 0x30], eax
test eax, eax
je 0x443134
mov edx, eax
mov edi, dword [edx + 4]
test edi, edi
je 0x443134
lea esp, [esp]
call fcn.0043b760
mov ebx, eax
mov esi, dword [ebx + 0x2c]
mov ecx, dword [esi + 4]
mov ebp, dword [esi + 8]
xor eax, eax
test ecx, ecx
je 0x443101
cmp dword [ecx + 4], edi
je 0x4430dd
mov eax, ecx
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x443101
mov edx, dword [ecx + 8]
mov dword [esp + 0x18], edx
jmp 0x4430c6
push 1
test eax, eax
je 0x4430f2
mov edx, dword [esp + 0x1c]
mov dword [eax + 8], edx
mov eax, dword [ecx]
mov edx, dword [eax]
call edx
jmp 0x4430fe
mov eax, dword [ecx + 8]
mov dword [esi + 4], eax
mov edx, dword [ecx]
mov eax, dword [edx]
call eax
dec dword [esi + 8]
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 8]
dec ebp
cmp eax, ebp
jne 0x443116
mov edx, dword [edi]
mov eax, dword [edx]
push 1
mov ecx, edi
call eax
mov eax, dword [esp + 0x30]
test eax, eax
je 0x443134
mov eax, dword [eax + 8]
test eax, eax
je 0x443134
mov edi, dword [eax + 4]
mov dword [esp + 0x30], eax
test edi, edi
jne 0x4430b0
mov ecx, dword [esp + 0x14]
mov edi, dword [ecx + 0x1130]
mov ecx, dword [edi + 4]
mov esi, ecx
xor eax, eax
cmp esi, eax
je 0x443167
lea esp, [esp]
mov esi, dword [esi + 8]
cmp ecx, eax
je 0x443161
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
xor eax, eax
mov ecx, esi
cmp esi, eax
jne 0x443150
mov ecx, dword [esp + 0x14]
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov dword [ecx + 0x18], eax
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x20], eax
je 0x443509
mov edx, dword [esp + 0x20]
mov ebp, dword [edx + 4]
test ebp, ebp
je 0x4432d3
mov edi, dword [ebp + 4]
test edi, edi
je 0x4432d3
mov edx, ecx
mov edi, edi
cmp dword [esp + 0x1c], 0
jne 0x44321b
mov eax, dword [edi + 0x20]
push 0x1d4
mov dword [esp + 0x7c], eax
call fcn.00568473
add esp, 4
mov dword [esp + 0x18], eax
xor esi, esi
mov dword [esp + 0x100], esi
cmp eax, esi
je 0x4431d5
mov ecx, eax
call fcn.00444ef0
mov esi, eax
mov ebx, dword [esp + 0x14]
mov ecx, dword [ebx + 0x18]
mov dword [esi + 0x10], ecx
mov edx, dword [edi + 0x20]
mov dword [esi + 0x14], edx
mov eax, dword [ebx + 0x1130]
mov eax, dword [eax + 8]
mov dword [esi + 0x18], eax
mov ecx, dword [ebx + 0x1130]
push esi
mov dword [esp + 0x104], 0xffffffff
call fcn.0041c300
call fcn.0043b760
mov ecx, dword [eax + 0x2c]
push esi
call fcn.0041c300
inc dword [ebx + 0x18]
mov edx, ebx
xor eax, eax
cmp dword [edx + 0x18], eax
jle 0x443235
mov ecx, dword [edi + 0x20]
cmp dword [esp + eax*4 + 0x78], ecx
je 0x4432b3
inc eax
cmp eax, dword [edx + 0x18]
jl 0x443225
push 0x1d4
call fcn.00568473
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 1
test eax, eax
je 0x443260
mov ecx, eax
call fcn.00444ef0
mov esi, eax
jmp 0x443262
xor esi, esi
mov ebx, dword [esp + 0x14]
mov ecx, dword [ebx + 0x18]
mov dword [esi + 0x10], ecx
mov edx, dword [edi + 0x20]
mov dword [esi + 0x14], edx
mov eax, dword [ebx + 0x1130]
mov eax, dword [eax + 8]
mov dword [esi + 0x18], eax
mov ecx, dword [ebx + 0x1130]
push esi
mov dword [esp + 0x104], 0xffffffff
call fcn.0041c300
call fcn.0043b760
mov ecx, dword [eax + 0x2c]
push esi
call fcn.0041c300
mov eax, dword [ebx + 0x18]
mov ecx, dword [edi + 0x20]
mov dword [esp + eax*4 + 0x78], ecx
inc eax
mov dword [ebx + 0x18], eax
mov edx, ebx
test ebp, ebp
je 0x4432c5
mov eax, dword [ebp + 8]
test eax, eax
je 0x4432c5
mov edi, dword [eax + 4]
mov ebp, eax
jmp 0x4432c7
xor edi, edi
inc dword [esp + 0x1c]
test edi, edi
jne 0x4431a0
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 4]
mov dword [esp + 0x24], eax
test eax, eax
je 0x443509
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x443509
mov edx, dword [ebx + 0x38]
test edx, edx
je 0x4434eb
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x1130]
mov ecx, dword [ebx + 0x20]
test eax, eax
je 0x4434eb
mov eax, dword [eax + 4]
test eax, eax
je 0x4434eb
mov esi, dword [eax + 4]
test esi, esi
je 0x4434eb
cmp dword [esi + 0x14], ecx
je 0x44334b
test eax, eax
je 0x4434eb
mov eax, dword [eax + 8]
test eax, eax
je 0x4434eb
mov esi, dword [eax + 4]
test esi, esi
jne 0x443327
jmp 0x4434eb
cmp dword [edx + 0x10], 0
jl 0x4434eb
cmp dword [esi + 0x1c], 0
jne 0x44337e
push 0xc
call fcn.00568473
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x443379
mov dword [eax], vtable.CTList_class_CCPUNode_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
jmp 0x44337b
xor eax, eax
mov dword [esi + 0x1c], eax
mov ecx, dword [ebx + 0x38]
mov edx, dword [ecx + 0x10]
push edx
mov ecx, esi
call fcn.00445260
mov edi, eax
test edi, edi
jne 0x4433d8
push 0x10
call fcn.00568473
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 2
test eax, eax
je 0x4433bf
mov ecx, dword [ebx + 0x38]
mov edx, dword [ecx + 0x10]
push edx
mov ecx, eax
call fcn.0044f3a0
jmp 0x4433c1
xor eax, eax
mov ecx, dword [esi + 0x1c]
or ebp, 0xffffffff
push eax
mov dword [esp + 0x104], ebp
mov edi, eax
call fcn.004424c0
jmp 0x4433db
or ebp, 0xffffffff
mov eax, dword [ebx + 0x38]
mov ecx, dword [eax + 0xc]
test ecx, ecx
jl 0x44349e
push ecx
mov ecx, edi
call fcn.0044f8d0
mov esi, eax
test esi, esi
jne 0x443437
push 0xc
call fcn.00568473
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 3
test eax, eax
je 0x443424
mov ecx, dword [ebx + 0x38]
mov edx, dword [ecx + 0xc]
push edx
mov ecx, eax
call fcn.0044f640
jmp 0x443426
xor eax, eax
push eax
mov ecx, edi
mov dword [esp + 0x104], ebp
mov esi, eax
call fcn.0044f960
mov eax, dword [ebx + 0x38]
mov ecx, dword [eax + 8]
push ecx
mov ecx, esi
call fcn.0044f8d0
test eax, eax
jne 0x4434eb
push 0x14
call fcn.00568473
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 4
test eax, eax
je 0x44348a
mov edx, dword [ebx + 0x38]
mov ecx, dword [edx + 8]
push ecx
mov ecx, eax
call fcn.0044f5b0
mov ecx, dword [esi + 8]
push eax
mov dword [esp + 0x104], ebp
call fcn.004423f0
jmp 0x4434eb
mov ecx, dword [esi + 8]
xor eax, eax
push eax
mov dword [esp + 0x104], ebp
call fcn.004423f0
jmp 0x4434eb
mov edx, dword [eax + 8]
push edx
mov ecx, edi
call fcn.0044fa20
test eax, eax
jne 0x4434eb
push 0x14
call fcn.00568473
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 5
test eax, eax
je 0x4434da
mov ecx, dword [ebx + 0x38]
mov edx, dword [ecx + 8]
push edx
mov ecx, eax
call fcn.0044f5b0
jmp 0x4434dc
xor eax, eax
push eax
mov ecx, edi
mov dword [esp + 0x104], ebp
call fcn.0044f9c0
mov eax, dword [esp + 0x24]
test eax, eax
je 0x443509
mov eax, dword [eax + 8]
test eax, eax
je 0x443509
mov ebx, dword [eax + 4]
mov dword [esp + 0x24], eax
test ebx, ebx
jne 0x4432f1
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x1134]
xor esi, esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], esi
call fcn.0043a0f0
mov eax, dword [esp + 0x20]
cmp eax, esi
je 0x4436df
mov ebp, dword [eax + 4]
mov dword [esp + 0x24], ebp
test ebp, ebp
je 0x4436df
mov esi, dword [ebp + 4]
test esi, esi
je 0x4436df
jmp 0x443550
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x1130]
mov ecx, dword [esi + 0x20]
test eax, eax
je 0x4436b4
mov eax, dword [eax + 4]
test eax, eax
je 0x4436b4
mov edi, dword [eax + 4]
test edi, edi
je 0x4436b4
jmp 0x443580
cmp dword [edi + 0x14], ecx
je 0x4435a4
test eax, eax
je 0x4436b4
mov eax, dword [eax + 8]
test eax, eax
je 0x4436b4
mov edi, dword [eax + 4]
test edi, edi
jne 0x443580
jmp 0x4436b4
mov eax, dword [esi + 0x24]
push eax
mov ecx, edi
call fcn.004451a0
mov ebx, eax
test ebx, ebx
je 0x4435c9
mov ecx, dword [ebx + 0x10]
push esi
call fcn.00442230
mov ecx, dword [edi + 0x24]
push esi
call fcn.00442230
jmp 0x443641
push 0x58
call fcn.00568473
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 6
test eax, eax
je 0x4435f1
mov ecx, eax
call fcn.0044f680
mov ebp, eax
jmp 0x4435f3
xor ebp, ebp
mov ecx, dword [esi + 0x24]
mov dword [ebp + 4], ecx
mov ecx, dword [ebp + 0x10]
push esi
mov dword [esp + 0x104], 0xffffffff
mov ebx, ebp
call fcn.00442230
mov ecx, dword [edi + 0x24]
push esi
call fcn.00442230
mov ecx, dword [edi + 0x20]
push ebp
call fcn.00442360
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x1134]
push ebp
call fcn.00442360
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
mov dword [esi + 0x44], eax
inc eax
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x38]
test eax, eax
je 0x4436b4
mov eax, dword [eax + 0x10]
push eax
mov ecx, edi
call fcn.00445260
test eax, eax
je 0x4436b4
cmp dword [eax + 8], 0
je 0x44367f
mov ecx, dword [esi + 0x38]
mov edx, dword [ecx + 0xc]
push edx
mov ecx, eax
call fcn.0044f8d0
test eax, eax
je 0x4436b4
mov ecx, dword [esi + 0x38]
mov edx, dword [ecx + 8]
push edx
mov ecx, eax
call fcn.0044f8d0
jmp 0x443693
cmp dword [eax + 0xc], 0
je 0x4436b4
mov ecx, dword [esi + 0x38]
mov edx, dword [ecx + 8]
push edx
mov ecx, eax
call fcn.0044fa20
mov edi, eax
test edi, edi
je 0x4436b4
inc dword [edi + 8]
mov eax, dword [esi + 0x24]
push eax
mov ecx, edi
call fcn.0044f890
test eax, eax
jne 0x4436b4
mov ecx, dword [edi + 0x10]
push ebx
call fcn.00442360
mov ecx, dword [esp + 0x1c]
mov dword [esi + 0x40], ecx
test ebp, ebp
je 0x4436d1
mov eax, dword [ebp + 8]
test eax, eax
je 0x4436d1
mov esi, dword [eax + 4]
mov ebp, eax
mov dword [esp + 0x24], ebp
jmp 0x4436d3
xor esi, esi
inc dword [esp + 0x1c]
test esi, esi
jne 0x443550
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x1130]
test eax, eax
je 0x444e75
mov eax, dword [eax + 4]
mov dword [esp + 0x74], eax
test eax, eax
je 0x444e75
mov eax, dword [eax + 4]
mov dword [esp + 0x14], eax
test eax, eax
je 0x444e75
mov edi, dword [esp + 0x14]
mov esi, dword [edi + 0x24]
mov eax, dword [edi + 0x20]
push 0xc
mov dword [esp + 0x24], esi
mov dword [esp + 0x5c], eax
call fcn.00568473
xor ebp, ebp
add esp, 4
cmp eax, ebp
je 0x443743
mov dword [eax], vtable.CTList_class_CCPUThread_.0
mov dword [eax + 4], ebp
mov dword [eax + 8], ebp
mov dword [esp + 0x18], eax
jmp 0x443747
mov dword [esp + 0x18], ebp
push 0xc
call fcn.00568473
add esp, 4
cmp eax, ebp
je 0x443765
mov dword [eax], vtable.CTList_class_CCounterItem_.0
mov dword [eax + 4], ebp
mov dword [eax + 8], ebp
mov ebx, eax
jmp 0x443767
xor ebx, ebx
cmp esi, ebp
je 0x443811
mov ebp, dword [esi + 4]
test ebp, ebp
je 0x443811
mov esi, dword [ebp + 4]
test esi, esi
je 0x443811
push 8
call fcn.00568473
add esp, 4
test eax, eax
je 0x4437a6
mov ecx, dword [esi + 0x498]
mov dword [eax + 4], ecx
mov dword [eax], vtable.CCounterItem.0
mov ecx, eax
jmp 0x4437a8
xor ecx, ecx
test ebx, ebx
je 0x4437d9
mov edx, dword [ebx + 4]
test edx, edx
je 0x4437d9
mov eax, dword [edx + 4]
test eax, eax
je 0x4437d9
mov edi, dword [ecx + 4]
lea ecx, [ecx]
cmp dword [eax + 4], edi
je 0x4437ed
test edx, edx
je 0x4437d9
mov eax, dword [edx + 8]
test eax, eax
je 0x4437d9
mov edx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x4437c0
push ecx
mov ecx, ebx
call fcn.004426f0
mov ecx, dword [esp + 0x18]
push esi
call fcn.00442230
jmp 0x4437f5
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
test ebp, ebp
je 0x44380d
mov eax, dword [ebp + 8]
test eax, eax
je 0x44380d
mov esi, dword [eax + 4]
mov ebp, eax
test esi, esi
jne 0x443785
mov edi, dword [esp + 0x14]
mov eax, dword [ebx + 8]
xor ecx, ecx
mov dword [edi + 0x2c], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.005684a2
mov ecx, dword [esp + 0x18]
mov dword [ecx + 0x30], eax
mov eax, dword [esp + 0x1c]
add esp, 4
xor ebp, ebp
test eax, eax
je 0x44384d
mov ebp, dword [eax + 4]
test ebp, ebp
je 0x44384d
mov edi, dword [ebp + 4]
jmp 0x44384f
xor edi, edi
test edi, edi
je 0x443922
xor esi, esi
lea esp, [esp]
push 0x24
call fcn.00568473
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0x30]
mov dword [esi + edx], eax
mov eax, dword [ecx + 0x30]
mov edx, dword [esi + eax]
xor eax, eax
mov dword [edx], eax
mov edx, dword [ecx + 0x30]
mov edx, dword [edx + esi]
mov dword [edx + 4], eax
mov edx, dword [ecx + 0x30]
mov edx, dword [edx + esi]
mov dword [edx + 8], edi
mov edx, dword [ecx + 0x30]
mov edx, dword [edx + esi]
mov dword [edx + 0xc], eax
mov edx, dword [ecx + 0x30]
mov edx, dword [edx + esi]
mov dword [edx + 0x10], eax
mov edx, dword [ecx + 0x30]
mov edx, dword [edx + esi]
mov dword [edx + 0x14], eax
mov ecx, dword [ecx + 0x30]
mov edx, dword [ecx + esi]
push 0xc
mov dword [edx + 0x18], eax
call fcn.00568473
add esp, 8
test eax, eax
je 0x4438cf
xor ecx, ecx
mov dword [eax], vtable.CTList_class_CCPUThread_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
jmp 0x4438d1
xor eax, eax
mov edi, dword [esp + 0x14]
mov ecx, dword [edi + 0x30]
mov edx, dword [ecx + esi]
push 0xc
mov dword [edx + 0x1c], eax
call fcn.00568473
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x4438fc
mov dword [eax], vtable.CTList_class_CCacheDescriptor_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
jmp 0x4438fe
xor eax, eax
mov edx, dword [edi + 0x30]
mov edx, dword [edx + esi]
add esi, 4
mov dword [edx + 0x20], eax
cmp ebp, ecx
je 0x443922
mov eax, dword [ebp + 8]
cmp eax, ecx
je 0x443922
mov edi, dword [eax + 4]
mov ebp, eax
test edi, edi
jne 0x443860
mov esi, dword [ebx + 4]
xor edi, edi
cmp esi, edi
je 0x443949
jmp 0x443930
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x443942
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov dword [esi + 4], edi
mov esi, dword [esi + 8]
cmp esi, edi
jne 0x443930
mov ecx, dword [ebx + 4]
mov esi, ecx
cmp esi, edi
je 0x443967
mov esi, dword [esi + 8]
cmp ecx, edi
je 0x443961
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov ecx, esi
cmp esi, edi
jne 0x443952
mov dword [ebx + 4], edi
mov dword [ebx + 8], edi
mov eax, dword [ebx]
mov edx, dword [eax]
push 1
mov ecx, ebx
call edx
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 4]
mov esi, ecx
cmp esi, edi
je 0x443999
mov esi, dword [esi + 8]
cmp ecx, edi
je 0x443993
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, edi
jne 0x443984
mov ecx, dword [esp + 0x18]
xor ebp, ebp
mov dword [ecx + 4], ebp
mov dword [ecx + 8], ebp
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ebx, dword [esp + 0x14]
xor edi, edi
cmp dword [ebx + 0x2c], ebp
jle 0x443a7d
lea esp, [esp]
mov eax, dword [esp + 0x20]
test eax, eax
je 0x443a18
mov esi, dword [eax + 4]
test esi, esi
je 0x443a18
mov eax, dword [esi + 4]
test eax, eax
je 0x443a18
mov ecx, dword [ebx + 0x30]
mov edx, dword [ecx + edi*4]
mov edx, dword [edx + 8]
mov ebp, dword [eax + 0x498]
lea ecx, [ecx + edi*4]
cmp ebp, dword [edx + 0x498]
jne 0x443a04
mov ecx, dword [ecx]
inc dword [ecx + 4]
push eax
mov eax, dword [ebx + 0x30]
mov ecx, dword [eax + edi*4]
mov ecx, dword [ecx + 0x1c]
call fcn.00442230
test esi, esi
je 0x443a18
mov eax, dword [esi + 8]
test eax, eax
je 0x443a18
mov esi, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x4439d6
cmp dword [esp + 0x58], 0
je 0x443a71
mov edx, dword [esp + 0x58]
mov ebp, dword [edx + 4]
test ebp, ebp
je 0x443a71
mov esi, dword [ebp + 4]
test esi, esi
je 0x443a71
mov ecx, esi
call fcn.0044fa60
test eax, eax
je 0x443a5d
mov ecx, dword [ebx + 0x30]
mov edx, dword [ecx + edi*4]
mov edx, dword [edx + 8]
mov eax, dword [eax + 0x498]
lea ecx, [ecx + edi*4]
cmp eax, dword [edx + 0x498]
jne 0x443a5d
mov eax, dword [ecx]
inc dword [eax]
mov dword [esi + 0xc], edi
test ebp, ebp
je 0x443a71
mov eax, dword [ebp + 8]
test eax, eax
je 0x443a71
mov esi, dword [eax + 4]
mov ebp, eax
test esi, esi
jne 0x443a31
inc edi
cmp edi, dword [ebx + 0x2c]
jl 0x4439c0
xor ebp, ebp
push 0xc
call fcn.00568473
add esp, 4
cmp eax, ebp
je 0x443a9f
mov dword [eax], vtable.CTList_class_CCacheDescriptor_.0
mov dword [eax + 4], ebp
mov dword [eax + 8], ebp
mov ebx, eax
mov dword [esp + 0x18], eax
jmp 0x443aa5
xor ebx, ebx
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x443b8a
mov eax, dword [eax + 4]
mov dword [esp + 0x24], eax
cmp eax, ebp
je 0x443b8a
mov eax, dword [eax + 4]
cmp eax, ebp
je 0x443b8a
mov eax, dword [eax + 0x50]
cmp eax, ebp
je 0x443b6c
mov edi, dword [eax + 4]
cmp edi, ebp
je 0x443b6c
mov ecx, dword [edi + 4]
cmp ecx, ebp
je 0x443b6c
lea esp, [esp]
cmp ebx, ebp
je 0x443b4a
mov edx, dword [ebx + 4]
cmp edx, ebp
je 0x443b4a
mov eax, dword [edx + 4]
cmp eax, ebp
je 0x443b4a
mov esi, dword [ecx + 8]
cmp dword [eax + 8], esi
jne 0x443b36
mov ebx, dword [eax + 4]
cmp ebx, dword [ecx + 4]
jne 0x443b32
mov ebx, dword [eax + 0xc]
cmp ebx, dword [ecx + 0xc]
jne 0x443b32
mov ebx, dword [eax + 0x18]
cmp ebx, dword [ecx + 0x18]
jne 0x443b32
mov ebx, dword [eax + 0x14]
cmp ebx, dword [ecx + 0x14]
jne 0x443b32
mov eax, dword [eax + 0x10]
cmp eax, dword [ecx + 0x10]
je 0x443b54
mov ebx, dword [esp + 0x18]
cmp edx, ebp
je 0x443b4a
mov eax, dword [edx + 8]
cmp eax, ebp
je 0x443b4a
mov edx, eax
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x443b05
push ecx
mov ecx, ebx
call fcn.00442550
jmp 0x443b58
mov ebx, dword [esp + 0x18]
cmp edi, ebp
je 0x443b6c
mov eax, dword [edi + 8]
cmp eax, ebp
je 0x443b6c
mov ecx, dword [eax + 4]
mov edi, eax
cmp ecx, ebp
jne 0x443af0
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x443b8a
mov eax, dword [eax + 8]
cmp eax, ebp
je 0x443b8a
mov dword [esp + 0x24], eax
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x443acb
cmp ebx, ebp
je 0x443d1c
mov eax, dword [ebx + 4]
mov dword [esp + 0x4c], eax
cmp eax, ebp
je 0x443d1c
mov ecx, eax
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x443d1c
push 0xc
call fcn.00568473
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x443bce
mov dword [eax], vtable.CTList_class_CCounterItem_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov edi, eax
jmp 0x443bd0
xor edi, edi
mov eax, dword [esp + 0x20]
cmp eax, ecx
je 0x443c99
mov ebp, dword [eax + 4]
cmp ebp, ecx
je 0x443c99
mov esi, dword [ebp + 4]
test esi, esi
je 0x443c99
push ebx
mov ecx, esi
call fcn.004792a0
test eax, eax
je 0x443c81
mov eax, dword [ebx + 0x10]
dec eax
mov ecx, 1
jmp 0x443c10
mov edx, eax
sar edx, cl
add ecx, ecx
or eax, edx
cmp ecx, 0x20
jb 0x443c10
mov esi, dword [esi + 0x18]
not eax
push 8
and esi, eax
call fcn.00568473
add esp, 4
test eax, eax
je 0x443c3f
mov dword [eax], vtable.CCounterItem.0
mov dword [eax + 4], esi
mov ecx, eax
jmp 0x443c41
xor ecx, ecx
test edi, edi
je 0x443c6f
mov edx, dword [edi + 4]
test edx, edx
je 0x443c6f
mov eax, dword [edx + 4]
test eax, eax
je 0x443c6f
mov esi, dword [ecx + 4]
cmp dword [eax + 4], esi
je 0x443c79
test edx, edx
je 0x443c6f
mov eax, dword [edx + 8]
test eax, eax
je 0x443c6f
mov edx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x443c56
push ecx
mov ecx, edi
call fcn.004426f0
jmp 0x443c81
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
test ebp, ebp
je 0x443c99
mov eax, dword [ebp + 8]
test eax, eax
je 0x443c99
mov esi, dword [eax + 4]
mov ebp, eax
test esi, esi
jne 0x443bf2
mov eax, dword [edi + 8]
mov dword [ebx + 0x3c], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x28]
push ebx
call fcn.00442550
mov esi, dword [edi + 4]
xor ebx, ebx
cmp esi, ebx
je 0x443cce
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x443cc7
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov dword [esi + 4], ebx
mov esi, dword [esi + 8]
cmp esi, ebx
jne 0x443cb5
mov ecx, dword [edi + 4]
mov esi, ecx
cmp esi, ebx
je 0x443cec
mov esi, dword [esi + 8]
cmp ecx, ebx
je 0x443ce6
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, ebx
jne 0x443cd7
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov edx, dword [edi]
mov eax, dword [edx]
push 1
mov ecx, edi
call eax
cmp dword [esp + 0x4c], ebx
je 0x443d1c
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx + 8]
test eax, eax
je 0x443d1c
mov ebx, dword [eax + 4]
mov dword [esp + 0x4c], eax
test ebx, ebx
jne 0x443bae
mov edi, dword [esp + 0x14]
xor ebx, ebx
cmp dword [edi + 0x2c], ebx
mov dword [esp + 0x1c], ebx
jle 0x44400d
nop
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x30]
mov ecx, dword [esp + 0x1c]
cmp dword [eax + ecx*4], ebx
je 0x443ff5
mov edi, dword [esp + 0x18]
mov ecx, dword [edi + 4]
mov esi, ecx
cmp esi, ebx
je 0x443d66
mov esi, dword [esi + 8]
cmp ecx, ebx
je 0x443d60
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, ebx
jne 0x443d51
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov edx, dword [ecx + 0x30]
mov ecx, dword [edx + eax*4]
mov eax, dword [ecx + 0x1c]
mov dword [esp + 0x34], eax
cmp eax, ebx
je 0x443e65
mov edx, dword [eax + 4]
mov dword [esp + 0x38], edx
cmp edx, ebx
je 0x443e65
mov eax, dword [edx + 4]
cmp eax, ebx
je 0x443e65
mov eax, dword [eax + 0x50]
cmp eax, ebx
je 0x443e49
mov esi, dword [eax + 4]
cmp esi, ebx
je 0x443e49
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x443e49
jmp 0x443dca
mov edi, dword [esp + 0x18]
mov edx, dword [edi + 4]
cmp edx, ebx
je 0x443e25
mov eax, dword [edx + 4]
cmp eax, ebx
je 0x443e25
mov edi, dword [ecx + 8]
jmp 0x443de0
cmp dword [eax + 8], edi
jne 0x443e0d
mov ebp, dword [eax + 4]
cmp ebp, dword [ecx + 4]
jne 0x443e0d
mov ebp, dword [eax + 0xc]
cmp ebp, dword [ecx + 0xc]
jne 0x443e0d
mov ebp, dword [eax + 0x18]
cmp ebp, dword [ecx + 0x18]
jne 0x443e0d
mov ebp, dword [eax + 0x14]
cmp ebp, dword [ecx + 0x14]
jne 0x443e0d
mov eax, dword [eax + 0x10]
cmp eax, dword [ecx + 0x10]
je 0x443e2d
cmp edx, ebx
je 0x443e21
mov eax, dword [edx + 8]
cmp eax, ebx
je 0x443e21
mov edx, eax
mov eax, dword [eax + 4]
cmp eax, ebx
jne 0x443de0
mov edi, dword [esp + 0x18]
push ecx
mov ecx, edi
call fcn.00442550
cmp esi, ebx
je 0x443e41
mov eax, dword [esi + 8]
cmp eax, ebx
je 0x443e41
mov ecx, dword [eax + 4]
mov esi, eax
cmp ecx, ebx
jne 0x443dc6
mov edx, dword [esp + 0x38]
mov edi, dword [esp + 0x18]
cmp edx, ebx
je 0x443e65
mov eax, dword [edx + 8]
cmp eax, ebx
je 0x443e65
mov edx, eax
mov eax, dword [eax + 4]
mov dword [esp + 0x38], edx
cmp eax, ebx
jne 0x443da3
mov eax, dword [edi + 4]
mov dword [esp + 0x64], eax
cmp eax, ebx
je 0x443ff5
mov ebp, dword [eax + 4]
cmp ebp, ebx
je 0x443ff5
push 0xc
call fcn.00568473
add esp, 4
cmp eax, ebx
je 0x443e9d
mov dword [eax], vtable.CTList_class_CCounterItem_.0
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov edi, eax
jmp 0x443e9f
xor edi, edi
cmp dword [esp + 0x34], ebx
je 0x443f69
mov ecx, dword [esp + 0x34]
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x443f69
mov esi, dword [ebx + 4]
test esi, esi
je 0x443f69
push ebp
mov ecx, esi
call fcn.004792a0
test eax, eax
je 0x443f51
mov eax, dword [ebp + 0x10]
dec eax
mov ecx, 1
lea esp, [esp]
mov edx, eax
sar edx, cl
add ecx, ecx
or eax, edx
cmp ecx, 0x20
jb 0x443ee0
mov esi, dword [esi + 0x18]
not eax
push 8
and esi, eax
call fcn.00568473
add esp, 4
test eax, eax
je 0x443f0f
mov dword [eax], vtable.CCounterItem.0
mov dword [eax + 4], esi
mov ecx, eax
jmp 0x443f11
xor ecx, ecx
test edi, edi
je 0x443f3f
mov edx, dword [edi + 4]
test edx, edx
je 0x443f3f
mov eax, dword [edx + 4]
test eax, eax
je 0x443f3f
mov esi, dword [ecx + 4]
cmp dword [eax + 4], esi
je 0x443f49
test edx, edx
je 0x443f3f
mov eax, dword [edx + 8]
test eax, eax
je 0x443f3f
mov edx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x443f26
push ecx
mov ecx, edi
call fcn.004426f0
jmp 0x443f51
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
test ebx, ebx
je 0x443f69
mov eax, dword [ebx + 8]
test eax, eax
je 0x443f69
mov esi, dword [eax + 4]
mov ebx, eax
test esi, esi
jne 0x443ec3
mov eax, dword [edi + 8]
mov edx, dword [esp + 0x1c]
mov dword [ebp + 0x40], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x30]
mov eax, dword [ecx + edx*4]
mov ecx, dword [eax + 0x20]
push ebp
call fcn.00442550
mov esi, dword [edi + 4]
xor ebx, ebx
cmp esi, ebx
je 0x443fa9
nop
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x443fa2
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov dword [esi + 4], ebx
mov esi, dword [esi + 8]
cmp esi, ebx
jne 0x443f90
mov ecx, dword [edi + 4]
mov esi, ecx
cmp esi, ebx
je 0x443fc7
mov esi, dword [esi + 8]
cmp ecx, ebx
je 0x443fc1
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, ebx
jne 0x443fb2
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov edx, dword [edi]
mov eax, dword [edx]
push 1
mov ecx, edi
call eax
mov eax, dword [esp + 0x64]
cmp eax, ebx
je 0x443ff5
mov eax, dword [eax + 8]
cmp eax, ebx
je 0x443ff5
mov ebp, dword [eax + 4]
mov dword [esp + 0x64], eax
cmp ebp, ebx
jne 0x443e7f
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
inc eax
cmp eax, dword [ecx + 0x2c]
mov dword [esp + 0x1c], eax
jl 0x443d30
mov edi, ecx
mov ebp, dword [esp + 0x18]
mov ecx, dword [ebp + 4]
mov esi, ecx
cmp esi, ebx
je 0x444035
lea ebx, [ebx]
mov esi, dword [esi + 8]
cmp ecx, ebx
je 0x44402f
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, ebx
jne 0x444020
mov dword [ebp + 4], ebx
mov dword [ebp + 8], ebx
mov edx, dword [ebp]
mov eax, dword [edx]
push 1
mov ecx, ebp
call eax
mov ecx, edi
call fcn.00445230
mov esi, eax
cmp esi, ebx
je 0x4443eb
mov eax, dword [esi + 0x608]
cmp eax, ebx
je 0x444092
mov ecx, dword [eax + 0x144]
and ecx, 0xffff000
cmp ecx, 0x1802000
jne 0x444092
movzx edx, byte [edi + 0x14]
shl edx, 4
or dword [eax + 0x144], edx
mov ecx, dword [esi + 0x608]
mov eax, dword [edi]
mov edx, dword [eax + 0x14]
push ecx
mov ecx, edi
call edx
cmp dword [esi + 0x60c], ebx
je 0x4440bd
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x60c]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x60c]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x604], ebx
je 0x44413c
cmp dword [edi + 0x2c], 1
jg 0x44413c
push 0x2802000
mov ecx, edi
call fcn.00445810
mov ecx, eax
mov eax, dword [esi + 0x604]
fld dword [eax + 0x158]
fstp dword [esp + 0x18]
fldz
fld dword [esp + 0x18]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x444138
fld dword [ecx + 0x158]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 0x41
je 0x444120
push 1
fstp st(1)
push ecx
fstp dword [esp]
call fcn.0046cad0
jmp 0x44413c
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x44413a
push 1
push ecx
fstp dword [esp]
call fcn.0046cad0
jmp 0x44413c
fstp st(0)
fstp st(0)
mov eax, dword [esi + 0x614]
cmp eax, ebx
je 0x444177
mov ecx, dword [eax + 0x144]
and ecx, 0xffff000
cmp ecx, 0x405000
jne 0x444177
movzx edx, byte [edi + 0x14]
shl edx, 4
or dword [eax + 0x144], edx
mov ecx, dword [esi + 0x614]
mov eax, dword [edi]
mov edx, dword [eax + 0x14]
push ecx
mov ecx, edi
call edx
mov eax, dword [esi + 0x618]
cmp eax, ebx
je 0x444212
mov eax, dword [eax + 0x144]
and eax, 0xffff000
cmp eax, 0xc05000
jne 0x4441db
push 0x805000
mov ecx, edi
call fcn.00445810
mov ecx, eax
fld dword [ecx + 0x158]
fstp dword [esp + 0x18]
fldz
fcomp dword [esp + 0x18]
fnstsw ax
test ah, 5
jnp 0x4441db
mov edx, dword [esi + 0x618]
fld dword [edx + 0x158]
push 1
fstp dword [esp + 0x1c]
push ecx
fld dword [esp + 0x20]
fstp dword [esp]
call fcn.0046cad0
mov eax, dword [esi + 0x618]
mov ecx, dword [eax + 0x144]
and ecx, 0xffff000
cmp ecx, 0xc05000
je 0x444212
movzx edx, byte [edi + 0x14]
shl edx, 4
or dword [eax + 0x144], edx
mov ecx, dword [esi + 0x618]
mov eax, dword [edi]
mov edx, dword [eax + 0x14]
push ecx
mov ecx, edi
call edx
cmp dword [esi + 0x61c], ebx
je 0x44423d
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x61c]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x61c]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x620], ebx
je 0x444268
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x620]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x620]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x624], ebx
je 0x444293
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x624]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x624]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x628], ebx
je 0x4442be
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x628]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x628]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x62c], ebx
je 0x4442e9
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x62c]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x62c]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x630], ebx
je 0x444314
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x630]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x630]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x634], ebx
je 0x44433f
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x634]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x634]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x638], ebx
je 0x44436a
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x638]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x638]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x64c], ebx
je 0x444395
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x64c]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x64c]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x650], ebx
je 0x4443c0
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x650]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x650]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x678], ebx
je 0x4443eb
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x678]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x678]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
push 0x40e000
mov ecx, edi
call fcn.00445810
mov eax, dword [edi + 0x2c]
cmp eax, 1
jle 0x44466a
xor edi, edi
test eax, eax
jle 0x44466a
mov eax, dword [esp + 0x14]
lea ebx, [edi + 7]
or ebp, 0xffffffff
jmp 0x444420
mov ecx, dword [eax + 0x30]
mov edx, dword [ecx + edi*4]
cmp dword [edx + 0xc], 0
jne 0x444527
push 0x168
call fcn.00568473
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], ebx
test eax, eax
je 0x444459
push 0
mov ecx, eax
call fcn.0046e9b0
mov esi, eax
jmp 0x44445b
xor esi, esi
mov ecx, dword [esp + 0x14]
mov eax, edi
and eax, 0xfff
add eax, 0x80e000
or dword [esi + 0x144], eax
mov edx, dword [ecx + 0x30]
mov eax, dword [edx + edi*4]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0x498]
mov dword [esp + 0x100], ebp
cmp eax, 0x10
je 0x4444cf
cmp eax, 0x20
je 0x4444bf
cmp eax, 0x40
je 0x4444af
push edi
push str.Core_Set__d
lea edx, [esi + 4]
push 0x100
push edx
call fcn.00439b20
add esp, 0x10
jmp 0x4444e5
push str.P_Cores
push 0x100
lea eax, [esi + 4]
push eax
jmp 0x4444dd
push str.E_Cores
push 0x100
lea ecx, [esi + 4]
push ecx
jmp 0x4444dd
push str.LP_Cores
push 0x100
lea edx, [esi + 4]
push edx
call fcn.00439b20
add esp, 0xc
fldz
push 1
push ecx
fstp dword [esp]
mov ecx, esi
call fcn.0046cad0
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x30]
mov edx, dword [eax + edi*4]
mov dword [edx + 0xc], esi
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
push esi
call edx
call fcn.0043b760
mov ecx, dword [eax + 0x34]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x34]
push esi
call fcn.004425e0
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x30]
mov ecx, dword [edx + edi*4]
cmp dword [ecx + 0x10], 0
jne 0x444660
push 0x16c
call fcn.00568473
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 8
test eax, eax
je 0x444564
push 0
mov ecx, eax
call fcn.0046d100
mov esi, eax
jmp 0x444566
xor esi, esi
mov eax, dword [esp + 0x14]
mov edx, edi
and edx, 0xfff
add edx, 0x2c02000
or dword [esi + 0x144], edx
mov ecx, dword [eax + 0x30]
mov edx, dword [ecx + edi*4]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x498]
mov dword [esp + 0x100], ebp
cmp eax, 0x10
je 0x4445dc
cmp eax, 0x20
je 0x4445cc
cmp eax, 0x40
je 0x4445bc
push edi
push str.Core_Set__d
lea ecx, [esi + 4]
push 0x100
push ecx
call fcn.00439b20
add esp, 0x10
jmp 0x4445f2
push str.P_Cores__Max_
push 0x100
lea edx, [esi + 4]
push edx
jmp 0x4445ea
push str.E_Cores__Max_
push 0x100
lea eax, [esi + 4]
push eax
jmp 0x4445ea
push str.LP_Cores__Max_
push 0x100
lea ecx, [esi + 4]
push ecx
call fcn.00439b20
add esp, 0xc
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x30]
mov ecx, dword [eax + edi*4]
mov eax, dword [ecx + 8]
test eax, eax
je 0x44462d
cmp dword [eax + 0x604], 0
je 0x44462d
mov edx, dword [eax + 0x604]
fld dword [edx + 0x158]
push 1
fstp dword [esp + 0x1c]
push ecx
fld dword [esp + 0x20]
mov ecx, esi
fstp dword [esp]
call fcn.0046cad0
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x30]
mov edx, dword [eax + edi*4]
mov dword [edx + 0x10], esi
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
push esi
call edx
call fcn.0043b760
mov ecx, dword [eax + 0x34]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x34]
push esi
call fcn.004425e0
mov eax, dword [esp + 0x14]
inc edi
cmp edi, dword [eax + 0x2c]
jl 0x444420
mov edx, dword [esp + 0x14]
cmp dword [edx + 0x1c], 0
je 0x444909
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, edx
call fcn.004454a0
cmp eax, 1
jle 0x444909
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x1c]
xor ebp, ebp
test eax, eax
je 0x444909
mov eax, dword [eax + 4]
mov dword [esp + 0x6c], eax
test eax, eax
je 0x444909
mov eax, dword [eax + 4]
test eax, eax
je 0x444909
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4447fa
mov ecx, dword [ecx + 4]
mov dword [esp + 0x54], ecx
test ecx, ecx
je 0x4448eb
mov eax, dword [ecx + 4]
test eax, eax
je 0x4448eb
lea esp, [esp]
mov eax, dword [eax + 8]
test eax, eax
je 0x4447cc
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x4447cc
mov edi, dword [ebx + 4]
test edi, edi
je 0x4447cc
cmp dword [edi + 0xc], 0
jne 0x4447a8
push 0x168
call fcn.00568473
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 9
test eax, eax
je 0x444738
push 0
mov ecx, eax
call fcn.0046e9b0
mov esi, eax
jmp 0x44473a
xor esi, esi
push ebp
mov ecx, ebp
push str.CCX__d
and ecx, 0xfff
lea edx, [esi + 4]
add ecx, 0xc0e000
or dword [esi + 0x144], ecx
push 0x100
push edx
mov dword [esp + 0x110], 0xffffffff
call fcn.00439b20
fldz
add esp, 0x10
push 1
push ecx
mov ecx, esi
fstp dword [esp]
call fcn.0046cad0
mov ecx, dword [esp + 0x14]
mov dword [edi + 0xc], esi
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
push esi
call edx
call fcn.0043b760
mov ecx, dword [eax + 0x34]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x34]
push esi
call fcn.004425e0
fldz
mov edx, dword [edi + 0xc]
inc ebp
fstp dword [edx + 0x154]
test ebx, ebx
je 0x4447cc
mov eax, dword [ebx + 8]
test eax, eax
je 0x4447cc
mov edi, dword [eax + 4]
mov ebx, eax
test edi, edi
jne 0x444701
cmp dword [esp + 0x54], 0
je 0x4448eb
mov eax, dword [esp + 0x54]
mov eax, dword [eax + 8]
test eax, eax
je 0x4448eb
mov dword [esp + 0x54], eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x4446e0
jmp 0x4448eb
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4448eb
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x4448eb
mov edi, dword [ebx + 4]
test edi, edi
je 0x4448eb
jmp 0x444820
cmp dword [edi + 0xc], 0
jne 0x4448c7
push 0x168
call fcn.00568473
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 0xa
test eax, eax
je 0x444857
push 0
mov ecx, eax
call fcn.0046e9b0
mov esi, eax
jmp 0x444859
xor esi, esi
push ebp
mov ecx, ebp
push str.CCX__d
and ecx, 0xfff
lea edx, [esi + 4]
add ecx, 0xc0e000
or dword [esi + 0x144], ecx
push 0x100
push edx
mov dword [esp + 0x110], 0xffffffff
call fcn.00439b20
fldz
add esp, 0x10
push 1
push ecx
mov ecx, esi
fstp dword [esp]
call fcn.0046cad0
mov ecx, dword [esp + 0x14]
mov dword [edi + 0xc], esi
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
push esi
call edx
call fcn.0043b760
mov ecx, dword [eax + 0x34]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x34]
push esi
call fcn.004425e0
fldz
mov edx, dword [edi + 0xc]
inc ebp
fstp dword [edx + 0x154]
test ebx, ebx
je 0x4448eb
mov eax, dword [ebx + 8]
test eax, eax
je 0x4448eb
mov edi, dword [eax + 4]
mov ebx, eax
test edi, edi
jne 0x444820
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x444909
mov eax, dword [eax + 8]
test eax, eax
je 0x444909
mov dword [esp + 0x6c], eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x4446b7
mov eax, dword [esp + 0x58]
test eax, eax
je 0x444ac6
mov ebp, dword [eax + 4]
test ebp, ebp
je 0x444ac6
mov ecx, dword [ebp + 4]
test ecx, ecx
je 0x444ac6
mov edi, dword [esp + 0x14]
call fcn.0044fa60
mov esi, eax
test esi, esi
je 0x444aae
mov eax, dword [esi + 0x604]
test eax, eax
je 0x4449ab
mov ecx, dword [esi + 0x498]
cmp ecx, 0x10
je 0x444981
cmp ecx, 0x20
je 0x444976
add eax, 4
cmp ecx, 0x40
je 0x44496b
mov ecx, dword [esi + 0x44]
push ecx
push 0x5a137c
jmp 0x44498d
mov edx, dword [esi + 0x44]
push edx
push 0x5a1370
jmp 0x44498d
mov ecx, dword [esi + 0x44]
push ecx
push 0x5a1364
jmp 0x44498a
mov edx, dword [esi + 0x44]
push edx
push str.LP_Core__d
add eax, 4
push 0x100
push eax
call fcn.00439b20
mov ecx, dword [esi + 0x604]
mov eax, dword [edi]
mov edx, dword [eax + 0x14]
add esp, 0x10
push ecx
mov ecx, edi
call edx
mov eax, dword [esi + 0x618]
test eax, eax
je 0x444a0a
mov eax, dword [eax + 0x144]
and eax, 0xffff000
cmp eax, 0xc05000
jne 0x444a0a
movzx ecx, byte [esi + 0x24]
mov eax, dword [esi + 0x618]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [esi + 0x44]
mov eax, dword [esi + 0x618]
push edx
push 0x5a137c
add eax, 4
push 0x100
push eax
call fcn.00439b20
mov edx, dword [edi]
mov eax, dword [esi + 0x618]
mov edx, dword [edx + 0x14]
add esp, 0x10
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x670], 0
je 0x444aae
movzx ecx, byte [esi + 0x24]
mov eax, dword [esi + 0x670]
shl ecx, 4
or dword [eax + 0x144], ecx
mov eax, dword [esi + 0x498]
cmp eax, 0x10
je 0x444a7e
cmp eax, 0x20
je 0x444a64
cmp eax, 0x40
je 0x444a4a
mov edx, dword [esi + 0x44]
push edx
push 0x5a137c
jmp 0x444a87
mov ecx, dword [esi + 0x44]
mov edx, dword [esi + 0x670]
push ecx
push 0x5a1370
push 0x100
add edx, 4
push edx
jmp 0x444a96
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x670]
push eax
push 0x5a1364
push 0x100
add ecx, 4
push ecx
jmp 0x444a96
mov edx, dword [esi + 0x44]
push edx
push str.LP_Core__d
mov eax, dword [esi + 0x670]
push 0x100
add eax, 4
push eax
call fcn.00439b20
mov edx, dword [edi]
mov eax, dword [esi + 0x670]
mov edx, dword [edx + 0x14]
add esp, 0x10
push eax
mov ecx, edi
call edx
test ebp, ebp
je 0x444ac6
mov eax, dword [ebp + 8]
test eax, eax
je 0x444ac6
mov ecx, dword [eax + 4]
mov ebp, eax
test ecx, ecx
jne 0x44492f
mov eax, dword [esp + 0x20]
test eax, eax
je 0x444d8b
mov eax, dword [eax + 4]
mov dword [esp + 0x24], eax
test eax, eax
je 0x444d8b
mov ebp, dword [eax + 4]
test ebp, ebp
je 0x444d8b
lea esp, [esp]
push 0x168
call fcn.00568473
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 0xb
test eax, eax
je 0x444b1b
push 0
mov ecx, eax
call fcn.0046e9b0
jmp 0x444b1d
xor eax, eax
mov dword [ebp + 0x66c], eax
or dword [eax + 0x144], 0x140e000
mov eax, dword [ebp + 0x40]
mov ecx, dword [ebp + 0x66c]
push eax
push 0x5a1350
add ecx, 4
push 0x100
push ecx
mov dword [esp + 0x110], 0xffffffff
call fcn.00439b20
mov edi, dword [esp + 0x24]
mov edx, dword [edi]
mov eax, dword [ebp + 0x66c]
mov edx, dword [edx + 0x14]
add esp, 0x10
push eax
mov ecx, edi
call edx
mov esi, dword [ebp + 0x66c]
call fcn.0043b760
mov ecx, dword [eax + 0x34]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x34]
push esi
call fcn.004425e0
mov eax, dword [edi + 0x2c]
cmp eax, 1
jle 0x444bdd
xor ecx, ecx
test eax, eax
jle 0x444bdd
mov edx, dword [ebp + 0x498]
mov eax, dword [edi + 0x30]
mov esi, dword [eax]
mov esi, dword [esi + 8]
cmp dword [esi + 0x498], edx
je 0x444bbb
inc ecx
add eax, 4
cmp ecx, dword [edi + 0x2c]
jl 0x444ba3
jmp 0x444bdd
mov eax, dword [ebp + 0x66c]
and ecx, 0xfff
or dword [eax + 0x144], ecx
mov eax, dword [ebp + 0x604]
test eax, eax
je 0x444bdd
or dword [eax + 0x144], ecx
mov eax, dword [edi + 0x1c]
test eax, eax
je 0x444ce5
mov eax, dword [eax + 4]
xor ebx, ebx
mov dword [esp + 0x30], eax
test eax, eax
je 0x444ce5
mov edx, eax
mov eax, dword [edx + 4]
test eax, eax
je 0x444ce5
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x444c7a
mov edi, dword [ecx + 4]
test edi, edi
je 0x444cb0
mov eax, dword [edi + 4]
test eax, eax
je 0x444cb0
mov eax, dword [eax + 8]
test eax, eax
je 0x444c64
mov esi, dword [eax + 4]
test esi, esi
je 0x444c64
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x444c64
jmp 0x444c40
mov eax, dword [ebp + 0x24]
push eax
call fcn.0044f890
test eax, eax
jne 0x444cd3
inc ebx
test esi, esi
je 0x444c64
mov esi, dword [esi + 8]
test esi, esi
je 0x444c64
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x444c40
test edi, edi
je 0x444cb0
mov eax, dword [edi + 8]
test eax, eax
je 0x444cb0
mov edi, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x444c23
jmp 0x444cb0
mov eax, dword [eax + 0xc]
test eax, eax
je 0x444cb0
mov esi, dword [eax + 4]
test esi, esi
je 0x444cb0
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x444cb0
nop
mov edx, dword [ebp + 0x24]
push edx
call fcn.0044f890
test eax, eax
jne 0x444cd3
inc ebx
test esi, esi
je 0x444cb0
mov esi, dword [esi + 8]
test esi, esi
je 0x444cb0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x444c90
cmp dword [esp + 0x30], 0
je 0x444ce5
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 8]
test eax, eax
je 0x444ce5
mov dword [esp + 0x30], eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x444c06
jmp 0x444ce5
mov eax, dword [ebp + 0x66c]
and ebx, 0xfff
or dword [eax + 0x144], ebx
mov eax, dword [ebp + 0x38]
test eax, eax
je 0x444d37
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x444cf8
cmp ecx, 0xffffffff
jne 0x444d37
cmp dword [eax + 8], 0
jne 0x444d37
cmp dword [eax + 4], 0
jne 0x444d37
cmp dword [eax], 0
jne 0x444d37
mov eax, dword [ebp + 0x608]
test eax, eax
je 0x444d37
mov ecx, dword [eax + 0x144]
and ecx, 0xffff000
cmp ecx, 0x1c02000
jne 0x444d37
mov esi, dword [esp + 0x14]
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0x14]
mov ecx, esi
call eax
jmp 0x444d3b
mov esi, dword [esp + 0x14]
mov eax, dword [ebp + 0x38]
test eax, eax
je 0x444d6d
cmp dword [eax + 0xc], 0
jl 0x444d6d
cmp dword [eax + 8], 0
jne 0x444d6d
cmp dword [eax + 4], 0
jne 0x444d6d
cmp dword [eax], 0
jne 0x444d6d
mov eax, dword [ebp + 0x610]
test eax, eax
je 0x444d6d
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0x14]
mov ecx, esi
call eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x444d8f
mov eax, dword [eax + 8]
test eax, eax
je 0x444d8f
mov ebp, dword [eax + 4]
mov dword [esp + 0x24], eax
test ebp, ebp
jne 0x444af0
mov esi, dword [esp + 0x14]
mov ecx, esi
xor edi, edi
call fcn.00444e90
test eax, eax
jle 0x444e53
mov esi, dword [esp + 0x14]
lea ebp, [edi + 0xc]
mov ebx, vtable.CTList_class_CCPUCore_.0
lea esp, [esp]
xor eax, eax
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
lea ecx, [esp + 0x3c]
push ecx
push edi
mov ecx, esi
mov dword [esp + 0x108], ebp
call fcn.004453a0
test eax, eax
jle 0x444e07
mov esi, dword [esp + 0x40]
mov ecx, esi
test esi, esi
je 0x444e0b
mov eax, dword [esi + 4]
test eax, eax
je 0x444e0b
mov edx, 1
lea esp, [esp]
or dword [eax + 8], edx
test ecx, ecx
je 0x444e07
mov eax, dword [ecx + 8]
test eax, eax
je 0x444e07
mov ecx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x444df0
mov esi, dword [esp + 0x40]
mov dword [esp + 0x100], 0xffffffff
mov dword [esp + 0x3c], ebx
mov ecx, esi
test esi, esi
je 0x444e35
mov esi, dword [esi + 8]
test ecx, ecx
je 0x444e2f
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
test esi, esi
jne 0x444e20
mov esi, dword [esp + 0x14]
xor eax, eax
mov ecx, esi
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
inc edi
call fcn.00444e90
cmp edi, eax
jl 0x444db0
mov eax, dword [esp + 0x74]
test eax, eax
je 0x444e75
mov eax, dword [eax + 8]
test eax, eax
je 0x444e75
mov dword [esp + 0x74], eax
mov eax, dword [eax + 4]
mov dword [esp + 0x14], eax
test eax, eax
jne 0x44370f
mov ecx, dword [esp + 0xf8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf0
ret