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

Disassembly:
push 0xffffffffffffffff
push 0x59a823
mov eax, dword fs:[0]
push eax
sub esp, 0xe4
push ebx
push ebp
push esi
push edi
mov eax, dword [0x619e70]
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.0056cb85
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x4432cb
mov dword [eax], vtable.CTList_class_CCounterItem_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov ebp, eax
jmp 0x4432cd
xor ebp, ebp
cmp ebx, ecx
je 0x443357
mov edi, dword [ebx + 4]
test edi, edi
je 0x443357
mov eax, dword [edi + 4]
test eax, eax
je 0x443357
mov esi, dword [eax + 0x1c]
push 8
call fcn.0056cb85
add esp, 4
test eax, eax
je 0x443301
mov dword [eax], vtable.CCounterItem.0
mov dword [eax + 4], esi
mov ecx, eax
jmp 0x443303
xor ecx, ecx
test ebp, ebp
je 0x443331
mov edx, dword [ebp + 4]
test edx, edx
je 0x443331
mov eax, dword [edx + 4]
test eax, eax
je 0x443331
mov esi, dword [ecx + 4]
cmp dword [eax + 4], esi
je 0x44333b
test edx, edx
je 0x443331
mov eax, dword [edx + 8]
test eax, eax
je 0x443331
mov edx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x443318
push ecx
mov ecx, ebp
call fcn.00442ed0
jmp 0x443343
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
test edi, edi
je 0x443357
mov eax, dword [edi + 8]
test eax, eax
je 0x443357
mov edi, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x4432e3
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x1138]
mov eax, dword [ecx + 8]
cmp eax, dword [ebp + 8]
je 0x443396
xor edx, edx
test ebx, ebx
je 0x443396
mov eax, dword [ebx + 4]
test eax, eax
je 0x443396
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x443396
lea ecx, [ecx]
mov dword [ecx + 0x1c], edx
inc edx
test eax, eax
je 0x443396
mov eax, dword [eax + 8]
test eax, eax
je 0x443396
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x443380
mov ecx, ebp
call fcn.0043a860
mov edx, dword [ebp]
mov eax, dword [edx]
push 1
mov ecx, ebp
call eax
test ebx, ebx
je 0x4434ab
mov edi, dword [ebx + 4]
mov dword [esp + 0x24], edi
test edi, edi
je 0x4434ab
mov esi, dword [edi + 4]
test esi, esi
je 0x4434ab
lea ebx, [ebx]
mov ecx, esi
call fcn.004794c0
mov ecx, esi
mov ebp, eax
call fcn.00479450
cmp dword [esi + 0x58], ebp
mov dword [esp + 0x18], eax
jge 0x4433ec
mov dword [esi + 0x58], ebp
cmp dword [esi + 0x4c], 0
jne 0x44348f
mov edi, dword [esi + 0x1c]
mov edx, 1
or al, 0xff
xor cl, cl
cmp dword [esi + 0x58], edx
jle 0x44341a
mov ebx, dword [esi + 0x58]
lea ebx, [ebx]
add edx, edx
add al, al
inc cl
cmp edx, ebx
jl 0x443410
mov edx, dword [esi + 0x53c]
test edx, edx
jle 0x443435
movzx ebx, cl
cmp ebx, edx
jge 0x443435
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 + 0x60]
or bl, 0xff
xor cl, cl
mov dword [esi + 0x24], edx
cmp eax, 0xffffffff
jne 0x443465
cmp dword [esp + 0x18], 0
jle 0x443460
mov eax, ebp
cdq
idiv dword [esp + 0x18]
jmp 0x443465
mov eax, 1
mov edx, 1
cmp eax, edx
jle 0x44347a
mov edi, edi
add edx, edx
add bl, bl
inc cl
cmp edx, eax
jl 0x443470
mov edx, edi
movzx eax, bl
sar edx, cl
not eax
and edi, eax
mov dword [esi + 0x2c], edi
mov edi, dword [esp + 0x24]
mov dword [esi + 0x28], edx
test edi, edi
je 0x4434ab
mov eax, dword [edi + 8]
test eax, eax
je 0x4434ab
mov esi, dword [eax + 4]
mov edi, eax
mov dword [esp + 0x24], edi
test esi, esi
jne 0x4433d0
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x1130]
test eax, eax
je 0x443564
mov eax, dword [eax + 4]
mov dword [esp + 0x30], eax
test eax, eax
je 0x443564
mov edx, eax
mov edi, dword [edx + 4]
test edi, edi
je 0x443564
lea esp, [esp]
call fcn.0043bf70
mov ebx, eax
mov esi, dword [ebx + 0x30]
mov ecx, dword [esi + 4]
mov ebp, dword [esi + 8]
xor eax, eax
test ecx, ecx
je 0x443531
cmp dword [ecx + 4], edi
je 0x44350d
mov eax, ecx
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x443531
mov edx, dword [ecx + 8]
mov dword [esp + 0x18], edx
jmp 0x4434f6
push 1
test eax, eax
je 0x443522
mov edx, dword [esp + 0x1c]
mov dword [eax + 8], edx
mov eax, dword [ecx]
mov edx, dword [eax]
call edx
jmp 0x44352e
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 + 0x30]
mov eax, dword [ecx + 8]
dec ebp
cmp eax, ebp
jne 0x443546
mov edx, dword [edi]
mov eax, dword [edx]
push 1
mov ecx, edi
call eax
mov eax, dword [esp + 0x30]
test eax, eax
je 0x443564
mov eax, dword [eax + 8]
test eax, eax
je 0x443564
mov edi, dword [eax + 4]
mov dword [esp + 0x30], eax
test edi, edi
jne 0x4434e0
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 0x443597
lea esp, [esp]
mov esi, dword [esi + 8]
cmp ecx, eax
je 0x443591
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
xor eax, eax
mov ecx, esi
cmp esi, eax
jne 0x443580
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 0x443939
mov edx, dword [esp + 0x20]
mov ebp, dword [edx + 4]
test ebp, ebp
je 0x443703
mov edi, dword [ebp + 4]
test edi, edi
je 0x443703
mov edx, ecx
mov edi, edi
cmp dword [esp + 0x1c], 0
jne 0x44364b
mov eax, dword [edi + 0x24]
push 0x1d4
mov dword [esp + 0x7c], eax
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x18], eax
xor esi, esi
mov dword [esp + 0x100], esi
cmp eax, esi
je 0x443605
mov ecx, eax
call fcn.00445350
mov esi, eax
mov ebx, dword [esp + 0x14]
mov ecx, dword [ebx + 0x18]
mov dword [esi + 0x10], ecx
mov edx, dword [edi + 0x24]
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.0041c7e0
call fcn.0043bf70
mov ecx, dword [eax + 0x30]
push esi
call fcn.0041c7e0
inc dword [ebx + 0x18]
mov edx, ebx
xor eax, eax
cmp dword [edx + 0x18], eax
jle 0x443665
mov ecx, dword [edi + 0x24]
cmp dword [esp + eax*4 + 0x78], ecx
je 0x4436e3
inc eax
cmp eax, dword [edx + 0x18]
jl 0x443655
push 0x1d4
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 1
test eax, eax
je 0x443690
mov ecx, eax
call fcn.00445350
mov esi, eax
jmp 0x443692
xor esi, esi
mov ebx, dword [esp + 0x14]
mov ecx, dword [ebx + 0x18]
mov dword [esi + 0x10], ecx
mov edx, dword [edi + 0x24]
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.0041c7e0
call fcn.0043bf70
mov ecx, dword [eax + 0x30]
push esi
call fcn.0041c7e0
mov eax, dword [ebx + 0x18]
mov ecx, dword [edi + 0x24]
mov dword [esp + eax*4 + 0x78], ecx
inc eax
mov dword [ebx + 0x18], eax
mov edx, ebx
test ebp, ebp
je 0x4436f5
mov eax, dword [ebp + 8]
test eax, eax
je 0x4436f5
mov edi, dword [eax + 4]
mov ebp, eax
jmp 0x4436f7
xor edi, edi
inc dword [esp + 0x1c]
test edi, edi
jne 0x4435d0
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 4]
mov dword [esp + 0x24], eax
test eax, eax
je 0x443939
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x443939
mov edx, dword [ebx + 0x3c]
test edx, edx
je 0x44391b
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x1130]
mov ecx, dword [ebx + 0x24]
test eax, eax
je 0x44391b
mov eax, dword [eax + 4]
test eax, eax
je 0x44391b
mov esi, dword [eax + 4]
test esi, esi
je 0x44391b
cmp dword [esi + 0x14], ecx
je 0x44377b
test eax, eax
je 0x44391b
mov eax, dword [eax + 8]
test eax, eax
je 0x44391b
mov esi, dword [eax + 4]
test esi, esi
jne 0x443757
jmp 0x44391b
cmp dword [edx + 0x10], 0
jl 0x44391b
cmp dword [esi + 0x1c], 0
jne 0x4437ae
push 0xc
call fcn.0056cb85
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x4437a9
mov dword [eax], vtable.CTList_class_CCPUNode_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
jmp 0x4437ab
xor eax, eax
mov dword [esi + 0x1c], eax
mov ecx, dword [ebx + 0x3c]
mov edx, dword [ecx + 0x10]
push edx
mov ecx, esi
call fcn.00445710
mov edi, eax
test edi, edi
jne 0x443808
push 0x10
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 2
test eax, eax
je 0x4437ef
mov ecx, dword [ebx + 0x3c]
mov edx, dword [ecx + 0x10]
push edx
mov ecx, eax
call fcn.0044f8a0
jmp 0x4437f1
xor eax, eax
mov ecx, dword [esi + 0x1c]
or ebp, 0xffffffff
push eax
mov dword [esp + 0x104], ebp
mov edi, eax
call fcn.00442ca0
jmp 0x44380b
or ebp, 0xffffffff
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + 0xc]
test ecx, ecx
jl 0x4438ce
push ecx
mov ecx, edi
call fcn.0044fe80
mov esi, eax
test esi, esi
jne 0x443867
push 0xc
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 3
test eax, eax
je 0x443854
mov ecx, dword [ebx + 0x3c]
mov edx, dword [ecx + 0xc]
push edx
mov ecx, eax
call fcn.0044fb40
jmp 0x443856
xor eax, eax
push eax
mov ecx, edi
mov dword [esp + 0x104], ebp
mov esi, eax
call fcn.0044fe20
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + 8]
push ecx
mov ecx, esi
call fcn.0044fe80
test eax, eax
jne 0x44391b
push 0x14
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 4
test eax, eax
je 0x4438ba
mov edx, dword [ebx + 0x3c]
mov ecx, dword [edx + 8]
push ecx
mov ecx, eax
call fcn.0044fab0
mov ecx, dword [esi + 8]
push eax
mov dword [esp + 0x104], ebp
call fcn.00442bd0
jmp 0x44391b
mov ecx, dword [esi + 8]
xor eax, eax
push eax
mov dword [esp + 0x104], ebp
call fcn.00442bd0
jmp 0x44391b
mov edx, dword [eax + 8]
push edx
mov ecx, edi
call fcn.0044ff20
test eax, eax
jne 0x44391b
push 0x14
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x100], 5
test eax, eax
je 0x44390a
mov ecx, dword [ebx + 0x3c]
mov edx, dword [ecx + 8]
push edx
mov ecx, eax
call fcn.0044fab0
jmp 0x44390c
xor eax, eax
push eax
mov ecx, edi
mov dword [esp + 0x104], ebp
call fcn.0044fec0
mov eax, dword [esp + 0x24]
test eax, eax
je 0x443939
mov eax, dword [eax + 8]
test eax, eax
je 0x443939
mov ebx, dword [eax + 4]
mov dword [esp + 0x24], eax
test ebx, ebx
jne 0x443721
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.0043a860
mov eax, dword [esp + 0x20]
cmp eax, esi
je 0x443b0f
mov ebp, dword [eax + 4]
mov dword [esp + 0x24], ebp
test ebp, ebp
je 0x443b0f
mov esi, dword [ebp + 4]
test esi, esi
je 0x443b0f
jmp 0x443980
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x1130]
mov ecx, dword [esi + 0x24]
test eax, eax
je 0x443ae4
mov eax, dword [eax + 4]
test eax, eax
je 0x443ae4
mov edi, dword [eax + 4]
test edi, edi
je 0x443ae4
jmp 0x4439b0
cmp dword [edi + 0x14], ecx
je 0x4439d4
test eax, eax
je 0x443ae4
mov eax, dword [eax + 8]
test eax, eax
je 0x443ae4
mov edi, dword [eax + 4]
test edi, edi
jne 0x4439b0
jmp 0x443ae4
mov eax, dword [esi + 0x28]
push eax
mov ecx, edi
call fcn.00445600
mov ebx, eax
test ebx, ebx
je 0x4439f9
mov ecx, dword [ebx + 0x10]
push esi
call fcn.00442a10
mov ecx, dword [edi + 0x24]
push esi
call fcn.00442a10
jmp 0x443a71
push 0x58
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 6
test eax, eax
je 0x443a21
mov ecx, eax
call fcn.0044fb80
mov ebp, eax
jmp 0x443a23
xor ebp, ebp
mov ecx, dword [esi + 0x28]
mov dword [ebp + 4], ecx
mov ecx, dword [ebp + 0x10]
push esi
mov dword [esp + 0x104], 0xffffffff
mov ebx, ebp
call fcn.00442a10
mov ecx, dword [edi + 0x24]
push esi
call fcn.00442a10
mov ecx, dword [edi + 0x20]
push ebp
call fcn.00442b40
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x1134]
push ebp
call fcn.00442b40
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
mov dword [esi + 0x48], eax
inc eax
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x443ae4
mov eax, dword [eax + 0x10]
push eax
mov ecx, edi
call fcn.00445710
test eax, eax
je 0x443ae4
cmp dword [eax + 8], 0
je 0x443aaf
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + 0xc]
push edx
mov ecx, eax
call fcn.0044fe80
test eax, eax
je 0x443ae4
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + 8]
push edx
mov ecx, eax
call fcn.0044fe80
jmp 0x443ac3
cmp dword [eax + 0xc], 0
je 0x443ae4
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + 8]
push edx
mov ecx, eax
call fcn.0044ff20
mov edi, eax
test edi, edi
je 0x443ae4
inc dword [edi + 8]
mov eax, dword [esi + 0x28]
push eax
mov ecx, edi
call fcn.0044fd90
test eax, eax
jne 0x443ae4
mov ecx, dword [edi + 0x10]
push ebx
call fcn.00442b40
mov ecx, dword [esp + 0x1c]
mov dword [esi + 0x44], ecx
test ebp, ebp
je 0x443b01
mov eax, dword [ebp + 8]
test eax, eax
je 0x443b01
mov esi, dword [eax + 4]
mov ebp, eax
mov dword [esp + 0x24], ebp
jmp 0x443b03
xor esi, esi
inc dword [esp + 0x1c]
test esi, esi
jne 0x443980
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x1130]
test eax, eax
je 0x4452b5
mov eax, dword [eax + 4]
mov dword [esp + 0x74], eax
test eax, eax
je 0x4452b5
mov eax, dword [eax + 4]
mov dword [esp + 0x14], eax
test eax, eax
je 0x4452b5
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.0056cb85
xor ebp, ebp
add esp, 4
cmp eax, ebp
je 0x443b73
mov dword [eax], vtable.CTList_class_CCPUThread_.0
mov dword [eax + 4], ebp
mov dword [eax + 8], ebp
mov dword [esp + 0x18], eax
jmp 0x443b77
mov dword [esp + 0x18], ebp
push 0xc
call fcn.0056cb85
add esp, 4
cmp eax, ebp
je 0x443b95
mov dword [eax], vtable.CTList_class_CCounterItem_.0
mov dword [eax + 4], ebp
mov dword [eax + 8], ebp
mov ebx, eax
jmp 0x443b97
xor ebx, ebx
cmp esi, ebp
je 0x443c41
mov ebp, dword [esi + 4]
test ebp, ebp
je 0x443c41
mov esi, dword [ebp + 4]
test esi, esi
je 0x443c41
push 8
call fcn.0056cb85
add esp, 4
test eax, eax
je 0x443bd6
mov ecx, dword [esi + 0x49c]
mov dword [eax + 4], ecx
mov dword [eax], vtable.CCounterItem.0
mov ecx, eax
jmp 0x443bd8
xor ecx, ecx
test ebx, ebx
je 0x443c09
mov edx, dword [ebx + 4]
test edx, edx
je 0x443c09
mov eax, dword [edx + 4]
test eax, eax
je 0x443c09
mov edi, dword [ecx + 4]
lea ecx, [ecx]
cmp dword [eax + 4], edi
je 0x443c1d
test edx, edx
je 0x443c09
mov eax, dword [edx + 8]
test eax, eax
je 0x443c09
mov edx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x443bf0
push ecx
mov ecx, ebx
call fcn.00442ed0
mov ecx, dword [esp + 0x18]
push esi
call fcn.00442a10
jmp 0x443c25
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
test ebp, ebp
je 0x443c3d
mov eax, dword [ebp + 8]
test eax, eax
je 0x443c3d
mov esi, dword [eax + 4]
mov ebp, eax
test esi, esi
jne 0x443bb5
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.0056cbbf
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 0x443c7d
mov ebp, dword [eax + 4]
test ebp, ebp
je 0x443c7d
mov edi, dword [ebp + 4]
jmp 0x443c7f
xor edi, edi
test edi, edi
je 0x443d52
xor esi, esi
lea esp, [esp]
push 0x24
call fcn.0056cb85
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.0056cb85
add esp, 8
test eax, eax
je 0x443cff
xor ecx, ecx
mov dword [eax], vtable.CTList_class_CCPUThread_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
jmp 0x443d01
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.0056cb85
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x443d2c
mov dword [eax], vtable.CTList_class_CCacheDescriptor_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
jmp 0x443d2e
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 0x443d52
mov eax, dword [ebp + 8]
cmp eax, ecx
je 0x443d52
mov edi, dword [eax + 4]
mov ebp, eax
test edi, edi
jne 0x443c90
mov esi, dword [ebx + 4]
xor edi, edi
cmp esi, edi
je 0x443d79
jmp 0x443d60
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x443d72
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 0x443d60
mov ecx, dword [ebx + 4]
mov esi, ecx
cmp esi, edi
je 0x443d97
mov esi, dword [esi + 8]
cmp ecx, edi
je 0x443d91
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov ecx, esi
cmp esi, edi
jne 0x443d82
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 0x443dc9
mov esi, dword [esi + 8]
cmp ecx, edi
je 0x443dc3
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, edi
jne 0x443db4
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 0x443ead
lea esp, [esp]
mov eax, dword [esp + 0x20]
test eax, eax
je 0x443e48
mov esi, dword [eax + 4]
test esi, esi
je 0x443e48
mov eax, dword [esi + 4]
test eax, eax
je 0x443e48
mov ecx, dword [ebx + 0x30]
mov edx, dword [ecx + edi*4]
mov edx, dword [edx + 8]
mov ebp, dword [eax + 0x49c]
lea ecx, [ecx + edi*4]
cmp ebp, dword [edx + 0x49c]
jne 0x443e34
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.00442a10
test esi, esi
je 0x443e48
mov eax, dword [esi + 8]
test eax, eax
je 0x443e48
mov esi, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x443e06
cmp dword [esp + 0x58], 0
je 0x443ea1
mov edx, dword [esp + 0x58]
mov ebp, dword [edx + 4]
test ebp, ebp
je 0x443ea1
mov esi, dword [ebp + 4]
test esi, esi
je 0x443ea1
mov ecx, esi
call fcn.0044ff60
test eax, eax
je 0x443e8d
mov ecx, dword [ebx + 0x30]
mov edx, dword [ecx + edi*4]
mov edx, dword [edx + 8]
mov eax, dword [eax + 0x49c]
lea ecx, [ecx + edi*4]
cmp eax, dword [edx + 0x49c]
jne 0x443e8d
mov eax, dword [ecx]
inc dword [eax]
mov dword [esi + 0xc], edi
test ebp, ebp
je 0x443ea1
mov eax, dword [ebp + 8]
test eax, eax
je 0x443ea1
mov esi, dword [eax + 4]
mov ebp, eax
test esi, esi
jne 0x443e61
inc edi
cmp edi, dword [ebx + 0x2c]
jl 0x443df0
xor ebp, ebp
push 0xc
call fcn.0056cb85
add esp, 4
cmp eax, ebp
je 0x443ecf
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 0x443ed5
xor ebx, ebx
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x443fba
mov eax, dword [eax + 4]
mov dword [esp + 0x24], eax
cmp eax, ebp
je 0x443fba
mov eax, dword [eax + 4]
cmp eax, ebp
je 0x443fba
mov eax, dword [eax + 0x54]
cmp eax, ebp
je 0x443f9c
mov edi, dword [eax + 4]
cmp edi, ebp
je 0x443f9c
mov ecx, dword [edi + 4]
cmp ecx, ebp
je 0x443f9c
lea esp, [esp]
cmp ebx, ebp
je 0x443f7a
mov edx, dword [ebx + 4]
cmp edx, ebp
je 0x443f7a
mov eax, dword [edx + 4]
cmp eax, ebp
je 0x443f7a
mov esi, dword [ecx + 8]
cmp dword [eax + 8], esi
jne 0x443f66
mov ebx, dword [eax + 4]
cmp ebx, dword [ecx + 4]
jne 0x443f62
mov ebx, dword [eax + 0xc]
cmp ebx, dword [ecx + 0xc]
jne 0x443f62
mov ebx, dword [eax + 0x18]
cmp ebx, dword [ecx + 0x18]
jne 0x443f62
mov ebx, dword [eax + 0x14]
cmp ebx, dword [ecx + 0x14]
jne 0x443f62
mov eax, dword [eax + 0x10]
cmp eax, dword [ecx + 0x10]
je 0x443f84
mov ebx, dword [esp + 0x18]
cmp edx, ebp
je 0x443f7a
mov eax, dword [edx + 8]
cmp eax, ebp
je 0x443f7a
mov edx, eax
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x443f35
push ecx
mov ecx, ebx
call fcn.00442d30
jmp 0x443f88
mov ebx, dword [esp + 0x18]
cmp edi, ebp
je 0x443f9c
mov eax, dword [edi + 8]
cmp eax, ebp
je 0x443f9c
mov ecx, dword [eax + 4]
mov edi, eax
cmp ecx, ebp
jne 0x443f20
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x443fba
mov eax, dword [eax + 8]
cmp eax, ebp
je 0x443fba
mov dword [esp + 0x24], eax
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x443efb
cmp ebx, ebp
je 0x44414c
mov eax, dword [ebx + 4]
mov dword [esp + 0x4c], eax
cmp eax, ebp
je 0x44414c
mov ecx, eax
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x44414c
push 0xc
call fcn.0056cb85
xor ecx, ecx
add esp, 4
cmp eax, ecx
je 0x443ffe
mov dword [eax], vtable.CTList_class_CCounterItem_.0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov edi, eax
jmp 0x444000
xor edi, edi
mov eax, dword [esp + 0x20]
cmp eax, ecx
je 0x4440c9
mov ebp, dword [eax + 4]
cmp ebp, ecx
je 0x4440c9
mov esi, dword [ebp + 4]
test esi, esi
je 0x4440c9
push ebx
mov ecx, esi
call fcn.00479df0
test eax, eax
je 0x4440b1
mov eax, dword [ebx + 0x10]
dec eax
mov ecx, 1
jmp 0x444040
mov edx, eax
sar edx, cl
add ecx, ecx
or eax, edx
cmp ecx, 0x20
jb 0x444040
mov esi, dword [esi + 0x1c]
not eax
push 8
and esi, eax
call fcn.0056cb85
add esp, 4
test eax, eax
je 0x44406f
mov dword [eax], vtable.CCounterItem.0
mov dword [eax + 4], esi
mov ecx, eax
jmp 0x444071
xor ecx, ecx
test edi, edi
je 0x44409f
mov edx, dword [edi + 4]
test edx, edx
je 0x44409f
mov eax, dword [edx + 4]
test eax, eax
je 0x44409f
mov esi, dword [ecx + 4]
cmp dword [eax + 4], esi
je 0x4440a9
test edx, edx
je 0x44409f
mov eax, dword [edx + 8]
test eax, eax
je 0x44409f
mov edx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x444086
push ecx
mov ecx, edi
call fcn.00442ed0
jmp 0x4440b1
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
test ebp, ebp
je 0x4440c9
mov eax, dword [ebp + 8]
test eax, eax
je 0x4440c9
mov esi, dword [eax + 4]
mov ebp, eax
test esi, esi
jne 0x444022
mov eax, dword [edi + 8]
mov dword [ebx + 0x3c], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x28]
push ebx
call fcn.00442d30
mov esi, dword [edi + 4]
xor ebx, ebx
cmp esi, ebx
je 0x4440fe
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x4440f7
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 0x4440e5
mov ecx, dword [edi + 4]
mov esi, ecx
cmp esi, ebx
je 0x44411c
mov esi, dword [esi + 8]
cmp ecx, ebx
je 0x444116
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, ebx
jne 0x444107
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 0x44414c
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx + 8]
test eax, eax
je 0x44414c
mov ebx, dword [eax + 4]
mov dword [esp + 0x4c], eax
test ebx, ebx
jne 0x443fde
mov edi, dword [esp + 0x14]
xor ebx, ebx
cmp dword [edi + 0x2c], ebx
mov dword [esp + 0x1c], ebx
jle 0x44443d
nop
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x30]
mov ecx, dword [esp + 0x1c]
cmp dword [eax + ecx*4], ebx
je 0x444425
mov edi, dword [esp + 0x18]
mov ecx, dword [edi + 4]
mov esi, ecx
cmp esi, ebx
je 0x444196
mov esi, dword [esi + 8]
cmp ecx, ebx
je 0x444190
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, ebx
jne 0x444181
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 0x444295
mov edx, dword [eax + 4]
mov dword [esp + 0x38], edx
cmp edx, ebx
je 0x444295
mov eax, dword [edx + 4]
cmp eax, ebx
je 0x444295
mov eax, dword [eax + 0x54]
cmp eax, ebx
je 0x444279
mov esi, dword [eax + 4]
cmp esi, ebx
je 0x444279
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x444279
jmp 0x4441fa
mov edi, dword [esp + 0x18]
mov edx, dword [edi + 4]
cmp edx, ebx
je 0x444255
mov eax, dword [edx + 4]
cmp eax, ebx
je 0x444255
mov edi, dword [ecx + 8]
jmp 0x444210
cmp dword [eax + 8], edi
jne 0x44423d
mov ebp, dword [eax + 4]
cmp ebp, dword [ecx + 4]
jne 0x44423d
mov ebp, dword [eax + 0xc]
cmp ebp, dword [ecx + 0xc]
jne 0x44423d
mov ebp, dword [eax + 0x18]
cmp ebp, dword [ecx + 0x18]
jne 0x44423d
mov ebp, dword [eax + 0x14]
cmp ebp, dword [ecx + 0x14]
jne 0x44423d
mov eax, dword [eax + 0x10]
cmp eax, dword [ecx + 0x10]
je 0x44425d
cmp edx, ebx
je 0x444251
mov eax, dword [edx + 8]
cmp eax, ebx
je 0x444251
mov edx, eax
mov eax, dword [eax + 4]
cmp eax, ebx
jne 0x444210
mov edi, dword [esp + 0x18]
push ecx
mov ecx, edi
call fcn.00442d30
cmp esi, ebx
je 0x444271
mov eax, dword [esi + 8]
cmp eax, ebx
je 0x444271
mov ecx, dword [eax + 4]
mov esi, eax
cmp ecx, ebx
jne 0x4441f6
mov edx, dword [esp + 0x38]
mov edi, dword [esp + 0x18]
cmp edx, ebx
je 0x444295
mov eax, dword [edx + 8]
cmp eax, ebx
je 0x444295
mov edx, eax
mov eax, dword [eax + 4]
mov dword [esp + 0x38], edx
cmp eax, ebx
jne 0x4441d3
mov eax, dword [edi + 4]
mov dword [esp + 0x64], eax
cmp eax, ebx
je 0x444425
mov ebp, dword [eax + 4]
cmp ebp, ebx
je 0x444425
push 0xc
call fcn.0056cb85
add esp, 4
cmp eax, ebx
je 0x4442cd
mov dword [eax], vtable.CTList_class_CCounterItem_.0
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov edi, eax
jmp 0x4442cf
xor edi, edi
cmp dword [esp + 0x34], ebx
je 0x444399
mov ecx, dword [esp + 0x34]
mov ebx, dword [ecx + 4]
test ebx, ebx
je 0x444399
mov esi, dword [ebx + 4]
test esi, esi
je 0x444399
push ebp
mov ecx, esi
call fcn.00479df0
test eax, eax
je 0x444381
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 0x444310
mov esi, dword [esi + 0x1c]
not eax
push 8
and esi, eax
call fcn.0056cb85
add esp, 4
test eax, eax
je 0x44433f
mov dword [eax], vtable.CCounterItem.0
mov dword [eax + 4], esi
mov ecx, eax
jmp 0x444341
xor ecx, ecx
test edi, edi
je 0x44436f
mov edx, dword [edi + 4]
test edx, edx
je 0x44436f
mov eax, dword [edx + 4]
test eax, eax
je 0x44436f
mov esi, dword [ecx + 4]
cmp dword [eax + 4], esi
je 0x444379
test edx, edx
je 0x44436f
mov eax, dword [edx + 8]
test eax, eax
je 0x44436f
mov edx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x444356
push ecx
mov ecx, edi
call fcn.00442ed0
jmp 0x444381
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
test ebx, ebx
je 0x444399
mov eax, dword [ebx + 8]
test eax, eax
je 0x444399
mov esi, dword [eax + 4]
mov ebx, eax
test esi, esi
jne 0x4442f3
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.00442d30
mov esi, dword [edi + 4]
xor ebx, ebx
cmp esi, ebx
je 0x4443d9
nop
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x4443d2
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 0x4443c0
mov ecx, dword [edi + 4]
mov esi, ecx
cmp esi, ebx
je 0x4443f7
mov esi, dword [esi + 8]
cmp ecx, ebx
je 0x4443f1
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, ebx
jne 0x4443e2
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 0x444425
mov eax, dword [eax + 8]
cmp eax, ebx
je 0x444425
mov ebp, dword [eax + 4]
mov dword [esp + 0x64], eax
cmp ebp, ebx
jne 0x4442af
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
inc eax
cmp eax, dword [ecx + 0x2c]
mov dword [esp + 0x1c], eax
jl 0x444160
mov edi, ecx
mov ebp, dword [esp + 0x18]
mov ecx, dword [ebp + 4]
mov esi, ecx
cmp esi, ebx
je 0x444465
lea ebx, [ebx]
mov esi, dword [esi + 8]
cmp ecx, ebx
je 0x44445f
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
cmp esi, ebx
jne 0x444450
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.004456e0
mov esi, eax
cmp esi, ebx
je 0x444846
mov eax, dword [esi + 0x614]
cmp eax, ebx
je 0x4444c2
mov ecx, dword [eax + 0x144]
and ecx, 0xffff000
cmp ecx, 0x1802000
jne 0x4444c2
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
cmp dword [esi + 0x618], ebx
je 0x4444ed
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x618]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x618]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x610], ebx
je 0x44456c
cmp dword [edi + 0x2c], 1
jg 0x44456c
push 0x2802000
mov ecx, edi
call fcn.00445bc0
mov ecx, eax
mov eax, dword [esi + 0x610]
fld dword [eax + 0x158]
fstp dword [esp + 0x18]
fldz
fld dword [esp + 0x18]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x444568
fld dword [ecx + 0x158]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 0x41
je 0x444550
push 1
fstp st(1)
push ecx
fstp dword [esp]
call fcn.0046d590
jmp 0x44456c
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x44456a
push 1
push ecx
fstp dword [esp]
call fcn.0046d590
jmp 0x44456c
fstp st(0)
fstp st(0)
mov eax, dword [esi + 0x620]
cmp eax, ebx
je 0x4445a7
mov ecx, dword [eax + 0x144]
and ecx, 0xffff000
cmp ecx, 0x405000
jne 0x4445a7
movzx edx, byte [edi + 0x14]
shl edx, 4
or dword [eax + 0x144], edx
mov ecx, dword [esi + 0x620]
mov eax, dword [edi]
mov edx, dword [eax + 0x14]
push ecx
mov ecx, edi
call edx
mov eax, dword [esi + 0x624]
cmp eax, ebx
je 0x444642
mov eax, dword [eax + 0x144]
and eax, 0xffff000
cmp eax, 0xc05000
jne 0x44460b
push 0x805000
mov ecx, edi
call fcn.00445bc0
mov ecx, eax
fld dword [ecx + 0x158]
fstp dword [esp + 0x18]
fldz
fcomp dword [esp + 0x18]
fnstsw ax
test ah, 5
jnp 0x44460b
mov edx, dword [esi + 0x624]
fld dword [edx + 0x158]
push 1
fstp dword [esp + 0x1c]
push ecx
fld dword [esp + 0x20]
fstp dword [esp]
call fcn.0046d590
mov eax, dword [esi + 0x624]
mov ecx, dword [eax + 0x144]
and ecx, 0xffff000
cmp ecx, 0xc05000
je 0x444642
movzx edx, byte [edi + 0x14]
shl edx, 4
or dword [eax + 0x144], edx
mov ecx, dword [esi + 0x624]
mov eax, dword [edi]
mov edx, dword [eax + 0x14]
push ecx
mov ecx, edi
call edx
cmp dword [esi + 0x628], ebx
je 0x44466d
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 0x444698
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 0x4446c3
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 0x4446ee
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 0x444719
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 + 0x63c], ebx
je 0x444744
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x63c]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x63c]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x640], ebx
je 0x44476f
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x640]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x640]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x644], ebx
je 0x44479a
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x644]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x644]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x648], ebx
je 0x4447c5
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x648]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x648]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x658], ebx
je 0x4447f0
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x658]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x658]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x65c], ebx
je 0x44481b
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x65c]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x65c]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x684], ebx
je 0x444846
movzx ecx, byte [edi + 0x14]
mov eax, dword [esi + 0x684]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x684]
mov edx, dword [edx + 0x14]
push eax
mov ecx, edi
call edx
push 0x40e000
mov ecx, edi
call fcn.00445bc0
mov eax, dword [edi + 0x2c]
cmp eax, 1
jle 0x444aad
xor edi, edi
test eax, eax
jle 0x444aad
mov eax, dword [esp + 0x14]
lea ebx, [edi + 7]
or ebp, 0xffffffff
mov ecx, dword [eax + 0x30]
mov edx, dword [ecx + edi*4]
cmp dword [edx + 0xc], 0
jne 0x44496a
push 0x168
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], ebx
test eax, eax
je 0x4448ab
push 0
mov ecx, eax
call fcn.0046f440
mov esi, eax
jmp 0x4448ad
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 + 0x49c]
mov dword [esp + 0x100], ebp
cmp eax, 0x10
je 0x444921
cmp eax, 0x20
je 0x444911
cmp eax, 0x40
je 0x444901
push edi
push str.Core_Set__d
lea edx, [esi + 4]
push 0x100
push edx
call fcn.0043a290
add esp, 0x10
jmp 0x444937
push 0x5a6304
push 0x100
lea eax, [esi + 4]
push eax
jmp 0x44492f
push 0x5a62fc
push 0x100
lea ecx, [esi + 4]
push ecx
jmp 0x44492f
push 0x5a62f0
push 0x100
lea edx, [esi + 4]
push edx
call fcn.0043a290
add esp, 0xc
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.0043bf70
mov ecx, dword [eax + 0x38]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x38]
push esi
call fcn.00442dc0
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x30]
mov ecx, dword [edx + edi*4]
cmp dword [ecx + 0x10], 0
jne 0x444aa3
push 0x16c
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 8
test eax, eax
je 0x4449a7
push 0
mov ecx, eax
call fcn.0046dbb0
mov esi, eax
jmp 0x4449a9
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 + 0x49c]
mov dword [esp + 0x100], ebp
cmp eax, 0x10
je 0x444a1f
cmp eax, 0x20
je 0x444a0f
cmp eax, 0x40
je 0x4449ff
push edi
push str.Core_Set__d
lea ecx, [esi + 4]
push 0x100
push ecx
call fcn.0043a290
add esp, 0x10
jmp 0x444a35
push str.P_Cores__Max_
push 0x100
lea edx, [esi + 4]
push edx
jmp 0x444a2d
push str.E_Cores__Max_
push 0x100
lea eax, [esi + 4]
push eax
jmp 0x444a2d
push str.LP_Cores__Max_
push 0x100
lea ecx, [esi + 4]
push ecx
call fcn.0043a290
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 0x444a70
cmp dword [eax + 0x610], 0
je 0x444a70
mov edx, dword [eax + 0x610]
fld dword [edx + 0x158]
push 1
fstp dword [esp + 0x1c]
push ecx
fld dword [esp + 0x20]
mov ecx, esi
fstp dword [esp]
call fcn.0046d590
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.0043bf70
mov ecx, dword [eax + 0x38]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x38]
push esi
call fcn.00442dc0
mov eax, dword [esp + 0x14]
inc edi
cmp edi, dword [eax + 0x2c]
jl 0x444872
mov edx, dword [esp + 0x14]
cmp dword [edx + 0x1c], 0
je 0x444d49
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, edx
call fcn.00445850
cmp eax, 1
jle 0x444d49
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x1c]
xor ebp, ebp
test eax, eax
je 0x444d49
mov eax, dword [eax + 4]
mov dword [esp + 0x6c], eax
test eax, eax
je 0x444d49
mov eax, dword [eax + 4]
test eax, eax
je 0x444d49
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x444c3a
mov ecx, dword [ecx + 4]
mov dword [esp + 0x54], ecx
test ecx, ecx
je 0x444d2b
mov eax, dword [ecx + 4]
test eax, eax
je 0x444d2b
nop
mov eax, dword [eax + 8]
test eax, eax
je 0x444c0c
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x444c0c
mov edi, dword [ebx + 4]
test edi, edi
je 0x444c0c
cmp dword [edi + 0xc], 0
jne 0x444be8
push 0x168
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 9
test eax, eax
je 0x444b78
push 0
mov ecx, eax
call fcn.0046f440
mov esi, eax
jmp 0x444b7a
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.0043a290
fldz
add esp, 0x10
push 1
push ecx
mov ecx, esi
fstp dword [esp]
call fcn.0046d590
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.0043bf70
mov ecx, dword [eax + 0x38]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x38]
push esi
call fcn.00442dc0
fldz
mov edx, dword [edi + 0xc]
inc ebp
fstp dword [edx + 0x154]
test ebx, ebx
je 0x444c0c
mov eax, dword [ebx + 8]
test eax, eax
je 0x444c0c
mov edi, dword [eax + 4]
mov ebx, eax
test edi, edi
jne 0x444b41
cmp dword [esp + 0x54], 0
je 0x444d2b
mov eax, dword [esp + 0x54]
mov eax, dword [eax + 8]
test eax, eax
je 0x444d2b
mov dword [esp + 0x54], eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x444b20
jmp 0x444d2b
mov eax, dword [eax + 0xc]
test eax, eax
je 0x444d2b
mov ebx, dword [eax + 4]
test ebx, ebx
je 0x444d2b
mov edi, dword [ebx + 4]
test edi, edi
je 0x444d2b
jmp 0x444c60
cmp dword [edi + 0xc], 0
jne 0x444d07
push 0x168
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 0xa
test eax, eax
je 0x444c97
push 0
mov ecx, eax
call fcn.0046f440
mov esi, eax
jmp 0x444c99
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.0043a290
fldz
add esp, 0x10
push 1
push ecx
mov ecx, esi
fstp dword [esp]
call fcn.0046d590
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.0043bf70
mov ecx, dword [eax + 0x38]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x38]
push esi
call fcn.00442dc0
fldz
mov edx, dword [edi + 0xc]
inc ebp
fstp dword [edx + 0x154]
test ebx, ebx
je 0x444d2b
mov eax, dword [ebx + 8]
test eax, eax
je 0x444d2b
mov edi, dword [eax + 4]
mov ebx, eax
test edi, edi
jne 0x444c60
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x444d49
mov eax, dword [eax + 8]
test eax, eax
je 0x444d49
mov dword [esp + 0x6c], eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x444afa
mov eax, dword [esp + 0x58]
test eax, eax
je 0x444f06
mov ebp, dword [eax + 4]
test ebp, ebp
je 0x444f06
mov ecx, dword [ebp + 4]
test ecx, ecx
je 0x444f06
mov edi, dword [esp + 0x14]
call fcn.0044ff60
mov esi, eax
test esi, esi
je 0x444eee
mov eax, dword [esi + 0x610]
test eax, eax
je 0x444deb
mov ecx, dword [esi + 0x49c]
cmp ecx, 0x10
je 0x444dc1
cmp ecx, 0x20
je 0x444db6
add eax, 4
cmp ecx, 0x40
je 0x444dab
mov ecx, dword [esi + 0x48]
push ecx
push 0x5a62ac
jmp 0x444dcd
mov edx, dword [esi + 0x48]
push edx
push 0x5a62a0
jmp 0x444dcd
mov ecx, dword [esi + 0x48]
push ecx
push 0x5a6294
jmp 0x444dca
mov edx, dword [esi + 0x48]
push edx
push 0x5a6288
add eax, 4
push 0x100
push eax
call fcn.0043a290
mov ecx, dword [esi + 0x610]
mov eax, dword [edi]
mov edx, dword [eax + 0x14]
add esp, 0x10
push ecx
mov ecx, edi
call edx
mov eax, dword [esi + 0x624]
test eax, eax
je 0x444e4a
mov eax, dword [eax + 0x144]
and eax, 0xffff000
cmp eax, 0xc05000
jne 0x444e4a
movzx ecx, byte [esi + 0x28]
mov eax, dword [esi + 0x624]
shl ecx, 4
or dword [eax + 0x144], ecx
mov edx, dword [esi + 0x48]
mov eax, dword [esi + 0x624]
push edx
push 0x5a62ac
add eax, 4
push 0x100
push eax
call fcn.0043a290
mov edx, dword [edi]
mov eax, dword [esi + 0x624]
mov edx, dword [edx + 0x14]
add esp, 0x10
push eax
mov ecx, edi
call edx
cmp dword [esi + 0x67c], 0
je 0x444eee
movzx ecx, byte [esi + 0x28]
mov eax, dword [esi + 0x67c]
shl ecx, 4
or dword [eax + 0x144], ecx
mov eax, dword [esi + 0x49c]
cmp eax, 0x10
je 0x444ebe
cmp eax, 0x20
je 0x444ea4
cmp eax, 0x40
je 0x444e8a
mov edx, dword [esi + 0x48]
push edx
push 0x5a62ac
jmp 0x444ec7
mov ecx, dword [esi + 0x48]
mov edx, dword [esi + 0x67c]
push ecx
push 0x5a62a0
push 0x100
add edx, 4
push edx
jmp 0x444ed6
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x67c]
push eax
push 0x5a6294
push 0x100
add ecx, 4
push ecx
jmp 0x444ed6
mov edx, dword [esi + 0x48]
push edx
push 0x5a6288
mov eax, dword [esi + 0x67c]
push 0x100
add eax, 4
push eax
call fcn.0043a290
mov edx, dword [edi]
mov eax, dword [esi + 0x67c]
mov edx, dword [edx + 0x14]
add esp, 0x10
push eax
mov ecx, edi
call edx
test ebp, ebp
je 0x444f06
mov eax, dword [ebp + 8]
test eax, eax
je 0x444f06
mov ecx, dword [eax + 4]
mov ebp, eax
test ecx, ecx
jne 0x444d6f
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4451cb
mov eax, dword [eax + 4]
mov dword [esp + 0x24], eax
test eax, eax
je 0x4451cb
mov ebp, dword [eax + 4]
test ebp, ebp
je 0x4451cb
lea esp, [esp]
push 0x168
call fcn.0056cb85
add esp, 4
mov dword [esp + 0x28], eax
mov dword [esp + 0x100], 0xb
test eax, eax
je 0x444f5b
push 0
mov ecx, eax
call fcn.0046f440
jmp 0x444f5d
xor eax, eax
mov dword [ebp + 0x678], eax
or dword [eax + 0x144], 0x140e000
mov eax, dword [ebp + 0x44]
mov ecx, dword [ebp + 0x678]
push eax
push str.CPU__d
add ecx, 4
push 0x100
push ecx
mov dword [esp + 0x110], 0xffffffff
call fcn.0043a290
mov edi, dword [esp + 0x24]
mov edx, dword [edi]
mov eax, dword [ebp + 0x678]
mov edx, dword [edx + 0x14]
add esp, 0x10
push eax
mov ecx, edi
call edx
mov esi, dword [ebp + 0x678]
call fcn.0043bf70
mov ecx, dword [eax + 0x38]
mov ecx, dword [ecx + 8]
mov dword [esi + 0x148], ecx
mov ecx, dword [eax + 0x38]
push esi
call fcn.00442dc0
mov eax, dword [edi + 0x2c]
cmp eax, 1
jle 0x44501d
xor ecx, ecx
test eax, eax
jle 0x44501d
mov edx, dword [ebp + 0x49c]
mov eax, dword [edi + 0x30]
mov esi, dword [eax]
mov esi, dword [esi + 8]
cmp dword [esi + 0x49c], edx
je 0x444ffb
inc ecx
add eax, 4
cmp ecx, dword [edi + 0x2c]
jl 0x444fe3
jmp 0x44501d
mov eax, dword [ebp + 0x678]
and ecx, 0xfff
or dword [eax + 0x144], ecx
mov eax, dword [ebp + 0x610]
test eax, eax
je 0x44501d
or dword [eax + 0x144], ecx
mov eax, dword [edi + 0x1c]
test eax, eax
je 0x445125
mov eax, dword [eax + 4]
xor ebx, ebx
mov dword [esp + 0x30], eax
test eax, eax
je 0x445125
mov edx, eax
mov eax, dword [edx + 4]
test eax, eax
je 0x445125
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4450ba
mov edi, dword [ecx + 4]
test edi, edi
je 0x4450f0
mov eax, dword [edi + 4]
test eax, eax
je 0x4450f0
mov eax, dword [eax + 8]
test eax, eax
je 0x4450a4
mov esi, dword [eax + 4]
test esi, esi
je 0x4450a4
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x4450a4
jmp 0x445080
mov eax, dword [ebp + 0x28]
push eax
call fcn.0044fd90
test eax, eax
jne 0x445113
inc ebx
test esi, esi
je 0x4450a4
mov esi, dword [esi + 8]
test esi, esi
je 0x4450a4
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x445080
test edi, edi
je 0x4450f0
mov eax, dword [edi + 8]
test eax, eax
je 0x4450f0
mov edi, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x445063
jmp 0x4450f0
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4450f0
mov esi, dword [eax + 4]
test esi, esi
je 0x4450f0
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x4450f0
nop
mov edx, dword [ebp + 0x28]
push edx
call fcn.0044fd90
test eax, eax
jne 0x445113
inc ebx
test esi, esi
je 0x4450f0
mov esi, dword [esi + 8]
test esi, esi
je 0x4450f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4450d0
cmp dword [esp + 0x30], 0
je 0x445125
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 8]
test eax, eax
je 0x445125
mov dword [esp + 0x30], eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x445046
jmp 0x445125
mov eax, dword [ebp + 0x678]
and ebx, 0xfff
or dword [eax + 0x144], ebx
mov eax, dword [ebp + 0x3c]
test eax, eax
je 0x445177
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x445138
cmp ecx, 0xffffffff
jne 0x445177
cmp dword [eax + 8], 0
jne 0x445177
cmp dword [eax + 4], 0
jne 0x445177
cmp dword [eax], 0
jne 0x445177
mov eax, dword [ebp + 0x614]
test eax, eax
je 0x445177
mov ecx, dword [eax + 0x144]
and ecx, 0xffff000
cmp ecx, 0x1c02000
jne 0x445177
mov esi, dword [esp + 0x14]
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0x14]
mov ecx, esi
call eax
jmp 0x44517b
mov esi, dword [esp + 0x14]
mov eax, dword [ebp + 0x3c]
test eax, eax
je 0x4451ad
cmp dword [eax + 0xc], 0
jl 0x4451ad
cmp dword [eax + 8], 0
jne 0x4451ad
cmp dword [eax + 4], 0
jne 0x4451ad
cmp dword [eax], 0
jne 0x4451ad
mov eax, dword [ebp + 0x61c]
test eax, eax
je 0x4451ad
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 0x4451cf
mov eax, dword [eax + 8]
test eax, eax
je 0x4451cf
mov ebp, dword [eax + 4]
mov dword [esp + 0x24], eax
test ebp, ebp
jne 0x444f30
mov esi, dword [esp + 0x14]
mov ecx, esi
xor edi, edi
call fcn.004452f0
test eax, eax
jle 0x445293
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.00445750
test eax, eax
jle 0x445247
mov esi, dword [esp + 0x40]
mov ecx, esi
test esi, esi
je 0x44524b
mov eax, dword [esi + 4]
test eax, eax
je 0x44524b
mov edx, 1
lea esp, [esp]
or dword [eax + 8], edx
test ecx, ecx
je 0x445247
mov eax, dword [ecx + 8]
test eax, eax
je 0x445247
mov ecx, eax
mov eax, dword [eax + 4]
test eax, eax
jne 0x445230
mov esi, dword [esp + 0x40]
mov dword [esp + 0x100], 0xffffffff
mov dword [esp + 0x3c], ebx
mov ecx, esi
test esi, esi
je 0x445275
mov esi, dword [esi + 8]
test ecx, ecx
je 0x44526f
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, esi
test esi, esi
jne 0x445260
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.004452f0
cmp edi, eax
jl 0x4451f0
mov eax, dword [esp + 0x74]
test eax, eax
je 0x4452b5
mov eax, dword [eax + 8]
test eax, eax
je 0x4452b5
mov dword [esp + 0x74], eax
mov eax, dword [eax + 4]
mov dword [esp + 0x14], eax
test eax, eax
jne 0x443b3f
mov ecx, dword [esp + 0xf8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf0
ret