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

Disassembly:
mov ecx, dword [0x98d270]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x164]
cmp eax, dword [ecx + 8]
jbe 0x66b729
sub esp, 0x1e4
lea edi, [esp + 0x1b8]
xor eax, eax
call fcn.00468c25
lea edi, [esp + 0xd4]
call fcn.00468c29
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
mov ecx, dword [esp + 0x1ec]
mov dword [esp], ecx
call fcn.00409c20
mov ecx, dword [esp + 4]
lea edx, [0x6bd460]
mov dword [esp + 0x124], edx
mov dword [esp + 0x128], ecx
lea ecx, [0x71fe8e]
mov dword [esp], ecx
mov dword [esp + 4], 0x37
lea ecx, [esp + 0x124]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004c5a30
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x114], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x58], edx
lea edi, [esp + 0xf0]
lea esi, [esp + 0xd4]
call fcn.004690fa
lea ecx, [0x6ee100]
mov dword [esp], ecx
lea ecx, [esp + 0xf0]
mov dword [esp + 4], ecx
call fcn.004cf4a0
mov ecx, dword [esp + 8]
test ecx, ecx
je 0x66b723
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x1f0]
mov ebx, eax
xor edx, edx
div ecx
mov dword [esp + 0x5c], eax
xor edx, edx
jmp 0x669fe3
mov ebp, dword [esp + 0x4c]
inc ebp
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x1f0]
mov edx, ebp
cmp edx, eax
jae 0x66afa0
mov dword [esp + 0x4c], edx
mov eax, dword [esp + 0x1e8]
mov dword [esp], eax
imul ecx, edx
mov ebp, dword [esp + 0x1ec]
add ecx, ebp
mov dword [esp + 4], ecx
call fcn.0067ac90
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x1e8]
mov dword [esp], ecx
lea edx, [0x6a9860]
mov dword [esp + 4], edx
lea ebx, [esp + 0xd4]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x10], eax
call fcn.0067b980
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x66af49
mov ebx, dword [esp + 0xe0]
cmp ebx, 0xc
ja 0x66a640
cmp ebx, 2
jne 0x66a55f
mov eax, dword [esp + 0xec]
mov edx, dword [esp + 0x1e8]
mov ebx, dword [edx + 0x2ac]
add ebx, 0xfffffffc
cmp eax, ebx
jbe 0x66a08c
mov ecx, dword [0x95da80]
xor ebx, ebx
jmp 0x66a0bf
mov ecx, dword [edx + 0x28c]
cmp ecx, eax
jb 0x66b71e
mov ebx, dword [edx + 0x290]
sub ecx, eax
sub ebx, eax
neg ebx
sar ebx, 0x1f
and eax, ebx
cmp ecx, 3
jbe 0x66b714
mov ebx, dword [edx + 0x288]
mov ebx, dword [ebx + eax]
xor ecx, ecx
test ecx, ecx
jne 0x669fcd
cmp ebx, 0x53445352
je 0x66a33d
cmp ebx, 0x3031424e
jne 0x66a91a
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov eax, dword [esp + 0xec]
mov dword [esp + 0x40], eax
mov dword [esp], edx
lea ecx, [0x6aaea0]
mov dword [esp + 4], ecx
lea ebx, [esp + 0x78]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov ebx, dword [esp + 0x1f0]
mov dword [esp + 0x10], ebx
call fcn.0067b980
mov eax, dword [esp + 0x14]
test eax, eax
je 0x66a137
mov edx, dword [esp + 0x1e8]
jmp 0x669fcd
lea edi, [esp + 0x164]
xor eax, eax
call fcn.00468c2a
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x164], ecx
mov dword [esp + 0x168], edx
mov ecx, dword [esp + 0x40]
lea edx, [ecx + 8]
mov ebx, dword [esp + 0x1e8]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp ebp, edx
jae 0x66a180
mov edx, dword [0x95da80]
xor ebp, ebp
jmp 0x66a1bd
mov ebp, dword [ebx + 0x28c]
cmp ebp, edx
jb 0x66b70b
mov esi, dword [ebx + 0x290]
sub esi, ecx
sub ebp, ecx
add ebp, 0xfffffff8
add esi, 0xfffffff8
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and edx, esi
cmp ebp, 3
jbe 0x66b6ff
mov ebp, dword [ebx + 0x288]
mov ebp, dword [edx + ebp]
xor edx, edx
mov dword [esp + 0x16c], ebp
test edx, edx
je 0x66a1cf
mov edx, ebx
jmp 0x669fcd
lea edx, [ecx + 0xc]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp ebp, edx
jae 0x66a1e9
mov edx, dword [0x95da80]
xor ebp, ebp
jmp 0x66a226
mov ebp, dword [ebx + 0x28c]
cmp ebp, edx
jb 0x66b6f6
mov esi, dword [ebx + 0x290]
sub esi, ecx
sub ebp, ecx
add ebp, 0xfffffff4
add esi, 0xfffffff4
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and edx, esi
cmp ebp, 3
jbe 0x66b6ea
mov ebp, dword [ebx + 0x288]
mov ebp, dword [edx + ebp]
xor edx, edx
mov dword [esp + 0x170], ebp
test edx, edx
je 0x66a238
mov edx, ebx
jmp 0x669fcd
mov edx, dword [esp + 0xe4]
add edx, 0xffffffef
test edx, edx
jbe 0x66a300
mov dword [esp + 0x34], edx
lea eax, [0x6bd4a0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.0044e050
mov eax, dword [esp + 0x40]
add eax, 0x10
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x12c], ecx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x130], ecx
mov dword [esp + 0x134], ecx
mov edx, dword [esp + 0x1e8]
mov dword [esp], edx
lea ebx, [0x6b0800]
mov dword [esp + 4], ebx
lea ebp, [esp + 0x12c]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.0067b980
mov eax, dword [esp + 0x14]
test eax, eax
je 0x66a2c8
mov edx, dword [esp + 0x1e8]
jmp 0x669fcd
mov eax, dword [esp + 0x12c]
mov ecx, dword [esp + 0x130]
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00451eb0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x174], eax
mov dword [esp + 0x178], ecx
lea eax, [0x6e2c00]
mov dword [esp], eax
lea ecx, [esp + 0x164]
mov dword [esp + 4], ecx
call fcn.00409af0
mov eax, dword [esp + 8]
lea ecx, [0x6e2c00]
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], eax
mov edx, dword [esp + 0x1e8]
jmp 0x66a91a
lea edi, [esp + 0x198]
lea esi, str.RSDS
call fcn.004690f0
mov eax, dword [esp + 0xec]
mov dword [esp + 0x70], eax
lea ecx, [eax + 4]
mov dword [esp + 0x44], ecx
lea edi, [esp + 0x88]
lea esi, [esp + 0x19c]
call fcn.00469118
lea ecx, [0x6e8be0]
mov dword [esp], ecx
lea edx, [esp + 0x88]
mov dword [esp + 4], edx
call fcn.004cf4a0
mov eax, dword [esp + 8]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x1e8]
mov dword [esp], ecx
lea edx, [0x6c5da0]
mov dword [esp + 4], edx
lea ebx, [esp + 0x19c]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
call fcn.0067b980
mov eax, dword [esp + 0x14]
test eax, eax
je 0x66a3d9
mov edx, dword [esp + 0x1e8]
jmp 0x669fcd
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x6c]
lea eax, [ebx + edx + 4]
mov ebp, dword [esp + 0x1e8]
mov esi, dword [ebp + 0x2ac]
add esi, 0xfffffffc
lea edi, [ebx + edx]
cmp eax, esi
jbe 0x66a406
mov eax, dword [0x95da80]
xor ecx, ecx
jmp 0x66a443
mov ecx, dword [ebp + 0x28c]
cmp ecx, eax
jb 0x66b6e5
mov esi, dword [ebp + 0x290]
sub esi, edi
sub ecx, edi
add ecx, 0xfffffffc
add esi, 0xfffffffc
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, eax
cmp ecx, 3
jbe 0x66b6db
mov ecx, dword [ebp + 0x288]
mov ecx, dword [esi + ecx]
xor eax, eax
mov dword [esp + 0x1ac], ecx
test eax, eax
je 0x66a455
mov edx, ebp
jmp 0x669fcd
mov eax, dword [esp + 0xe4]
add eax, 0xffffffe7
lea ecx, [ebx + edx + 8]
test eax, eax
jbe 0x66a522
mov dword [esp + 0x44], ecx
mov dword [esp + 0x38], eax
lea ecx, [0x6bd4a0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.0044e050
mov eax, dword [esp + 0xc]
mov dword [esp + 0x138], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x13c], eax
mov dword [esp + 0x140], eax
mov ecx, dword [esp + 0x1e8]
mov dword [esp], ecx
lea edx, [0x6b0800]
mov dword [esp + 4], edx
lea ebx, [esp + 0x138]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
call fcn.0067b980
mov eax, dword [esp + 0x14]
test eax, eax
je 0x66a4ea
mov edx, dword [esp + 0x1e8]
jmp 0x669fcd
mov eax, dword [esp + 0x138]
mov ecx, dword [esp + 0x13c]
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00451eb0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], ecx
lea eax, [0x6e2c80]
mov dword [esp], eax
lea ecx, [esp + 0x198]
mov dword [esp + 4], ecx
call fcn.00409af0
mov eax, dword [esp + 8]
lea ecx, [0x6e2c80]
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], eax
mov edx, dword [esp + 0x1e8]
jmp 0x66a91a
cmp ebx, 3
jne 0x66a583
mov ecx, dword [esp + 0xec]
mov ebx, dword [esp + 0x1e8]
xor eax, eax
xor edx, edx
lea ebp, [0x98d0c0]
xor esi, esi
jmp 0x66b2f3
cmp ebx, 0xc
jne 0x66a91a
lea edi, [esp + 0x98]
xor eax, eax
call fcn.00468c2b
lea edi, [esp + 0xc0]
call fcn.00468c2b
lea ecx, [0x6e7560]
mov dword [esp], ecx
lea edx, [esp + 0xc0]
mov dword [esp + 4], edx
call fcn.004cf4a0
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x1e8]
mov dword [esp], ebx
lea ebp, [0x6ab5a0]
mov dword [esp + 4], ebp
lea esi, [esp + 0x98]
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.0067b980
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x66a60a
mov edx, dword [esp + 0x1e8]
jmp 0x669fcd
lea eax, [0x6e7560]
mov dword [esp], eax
lea ecx, [esp + 0x98]
mov dword [esp + 4], ecx
call fcn.00409b50
mov eax, dword [esp + 8]
lea ecx, [0x6e7560]
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], eax
jmp 0x66a91a
cmp ebx, 0xd
jne 0x66a724
mov eax, dword [esp + 0xec]
mov ebx, dword [esp + 0x1e8]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp eax, ebp
jbe 0x66a66e
mov ebp, dword [0x95da80]
xor eax, eax
jmp 0x66a6a5
mov ecx, dword [ebx + 0x28c]
cmp ecx, eax
jb 0x66b2b1
mov ebp, dword [ebx + 0x290]
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
cmp ecx, 3
jbe 0x66b2a7
mov ecx, dword [ebx + 0x288]
mov eax, dword [ecx + eax]
xor ebp, ebp
test ebp, ebp
je 0x66a6b0
mov edx, ebx
jmp 0x669fcd
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 0
cmp eax, 0x4c544347
ja 0x66a6f3
test eax, eax
je 0x66a70c
cmp eax, 0x4c544347
je 0x66a70c
jmp 0x66a91a
cmp eax, 0x50474900
je 0x66a70c
cmp eax, 0x50474f00
je 0x66a70c
cmp eax, 0x50475500
jne 0x66a91a
mov dword [esp + 0x154], eax
mov ebp, dword [esp + 0xec]
add ebp, 4
xor eax, eax
jmp 0x66b011
cmp ebx, 0x10
jne 0x66a891
mov dword [esp + 0x144], 0
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0
mov dword [esp + 0x150], 0
mov eax, dword [esp + 0xec]
mov ebx, dword [esp + 0x1e8]
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffc
cmp eax, ebp
jbe 0x66a77e
mov ebp, dword [0x95da80]
xor esi, esi
jmp 0x66a7b6
mov ecx, dword [ebx + 0x28c]
cmp ecx, eax
jb 0x66affa
mov ebp, dword [ebx + 0x290]
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, eax
cmp ecx, 3
jbe 0x66aff0
mov esi, dword [ebx + 0x288]
mov esi, dword [ebp + esi]
xor ebp, ebp
mov dword [esp + 0x144], esi
test ebp, ebp
je 0x66a7c8
mov edx, ebx
jmp 0x669fcd
lea ebp, [eax + 4]
lea ecx, [esi + eax + 4]
cmp ecx, ebp
xchg edi, ebx
seta bl
xchg edi, ebx
test esi, esi
seta dl
xchg edi, eax
cmp dl, al
xchg edi, eax
je 0x66a7f1
mov eax, dword [0x95da80]
xor edi, edi
xor esi, esi
xor ecx, ecx
jmp 0x66a83b
mov edi, dword [ebx + 0x2ac]
cmp edi, ebp
jbe 0x66a7ff
cmp edi, ecx
jae 0x66a80d
mov eax, dword [0x95da80]
xor edi, edi
xor esi, esi
xor ecx, ecx
jmp 0x66a83b
mov edx, dword [ebx + 0x290]
cmp edx, ecx
jb 0x66afeb
cmp ecx, ebp
jb 0x66afe4
mov ecx, dword [ebx + 0x288]
sub edx, eax
add edx, 0xfffffffc
mov edi, edx
neg edx
sar edx, 0x1f
and edx, ebp
add ecx, edx
xor eax, eax
mov dword [esp + 0x148], ecx
mov dword [esp + 0x14c], esi
mov dword [esp + 0x150], edi
test eax, eax
je 0x66a85b
mov edx, ebx
jmp 0x669fcd
lea eax, [0x6d4140]
mov dword [esp], eax
lea ecx, [esp + 0x144]
mov dword [esp + 4], ecx
call fcn.00409af0
mov eax, dword [esp + 8]
lea ecx, [0x6d4140]
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], eax
jmp 0x66a91a
cmp ebx, 0x14
jne 0x66a91a
mov eax, dword [esp + 0xec]
mov edx, dword [esp + 0x1e8]
mov ebx, dword [edx + 0x2ac]
add ebx, 0xfffffffc
cmp eax, ebx
jbe 0x66a8bf
mov eax, dword [0x95da80]
xor ecx, ecx
jmp 0x66a8f2
mov ecx, dword [edx + 0x28c]
cmp ecx, eax
jb 0x66afdf
mov ebx, dword [edx + 0x290]
sub ecx, eax
sub ebx, eax
neg ebx
sar ebx, 0x1f
and eax, ebx
cmp ecx, 3
jbe 0x66afd5
mov ecx, dword [edx + 0x288]
mov ecx, dword [ecx + eax]
xor eax, eax
test eax, eax
jne 0x669fcd
mov dword [esp], ecx
call fcn.00409c20
mov eax, dword [esp + 4]
lea ecx, [0x6c39a0]
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], eax
lea edi, [esp + 0x1b8]
lea esi, [esp + 0xd4]
call fcn.004690fa
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0x2c], ecx
lea edi, [esp + 0x17c]
xor eax, eax
call fcn.00468c29
lea ecx, [0x6c0f60]
mov dword [esp], ecx
mov dword [esp + 4], 0x11
lea edx, [esp + 0x17c]
mov dword [esp + 8], edx
call fcn.0040cfd0
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x118], ecx
lea edx, [0x6c0f60]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
call fcn.0040f150
mov ecx, dword [esp + 0xc]
mov dword [ecx + 4], 7
mov edx, dword [0x98d4e0]
test edx, edx
je 0x66a9aa
mov eax, dword [ecx]
call fcn.00468990
mov dword [edi], eax
lea eax, [0x70b77c]
mov dword [ecx], eax
lea ecx, [0x6c0f60]
mov dword [esp], ecx
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 1
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 4
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66a9f1
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70abbd]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 2
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 8
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66aa38
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70bb52]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 3
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 3
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66aa7f
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70a87c]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 4
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 4
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66aac6
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70abc1]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 5
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 9
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66ab0d
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70c008]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 6
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 5
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66ab54
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70aedf]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 7
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 0xb
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66ab9b
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70cbcc]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 8
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 0xd
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66abe2
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70e035]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 9
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 7
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66ac29
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70b783]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 0xa
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 8
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66ac70
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70bb5a]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 0xc
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 0xa
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66acb7
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70c534]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 0xd
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 4
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66acfe
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70abc5]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 0xe
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 5
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66ad45
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70aee4]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 0xf
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 3
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66ad8c
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70a87f]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x10
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 5
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66add3
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x70aee9]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x14
call fcn.0040f150
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 0x16
mov ecx, dword [0x98d4e0]
test ecx, ecx
je 0x66ae1a
mov ecx, dword [eax]
call fcn.00468990
mov dword [edi], ecx
lea ecx, [0x713420]
mov dword [eax], ecx
lea eax, [0x6c0f60]
mov dword [esp], eax
mov edx, dword [esp + 0x118]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 8], edx
call fcn.0040f000
movzx eax, byte [esp + 0x10]
test al, al
je 0x66ae57
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
jmp 0x66ae62
mov eax, 1
lea ecx, [0x771da0]
mov dword [esp + 0x1dc], ecx
mov dword [esp + 0x1e0], eax
mov eax, dword [esp + 0x1e8]
mov ecx, dword [eax + 0xfc]
mov edx, dword [eax + 0xf8]
inc edx
mov ebx, dword [eax + 0xf4]
cmp ecx, edx
jae 0x66aeed
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x6db2a0]
mov dword [esp + 0x10], eax
call fcn.0044e1d0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1e8]
mov dword [ebx + 0xfc], eax
mov eax, dword [0x98d4e0]
test eax, eax
je 0x66aee3
call fcn.004689a0
mov dword [edi], ecx
mov eax, dword [ebx + 0xf4]
mov dword [edi + 4], eax
mov dword [ebx + 0xf4], ecx
mov eax, ebx
mov ebx, ecx
mov dword [eax + 0xf8], edx
mov ecx, dword [0x98d4e0]
imul edx, edx, 0x2c
lea edi, [edx + ebx - 0x2c]
test ecx, ecx
je 0x66af36
mov dword [esp + 0x120], edi
lea eax, [0x6db2a0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x1b8]
mov dword [esp + 8], eax
call fcn.00411600
mov eax, dword [esp + 0x1e8]
mov edi, dword [esp + 0x120]
lea esi, [esp + 0x1b8]
call fcn.004690d2
mov edx, eax
jmp 0x669fcd
lea eax, [0x6cc1c0]
mov dword [esp], eax
call fcn.0040c4f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x58]
mov dword [eax + 4], ecx
mov ecx, dword [0x98d4e0]
test ecx, ecx
jne 0x66af75
mov ecx, dword [esp + 0x114]
jmp 0x66af83
call fcn.00468990
mov ecx, dword [esp + 0x114]
mov dword [edi], ecx
mov dword [eax], ecx
lea ecx, [0x773c30]
mov dword [esp + 0x1f4], ecx
mov dword [esp + 0x1f8], eax
add esp, 0x1e4
ret
mov eax, dword [esp + 0x1e8]
mov ecx, dword [eax + 0xf8]
test ecx, ecx
je 0x66afb8
mov byte [eax + 0x2a1], 1
mov dword [esp + 0x1f4], 0
mov dword [esp + 0x1f8], 0
add esp, 0x1e4
ret
mov eax, 3
call fcn.00468a00
call fcn.00468a70
mov eax, ebp
call fcn.00468a70
call fcn.00468a50
mov eax, 3
call fcn.00468a00
call fcn.00468a70
mov dword [eax + esi + 8], edx
add ebp, 0xc
mov esi, dword [esp + 0x1e8]
mov eax, ebx
mov ebx, esi
mov esi, dword [esp + 0xe4]
add esi, 0xfffffffc
cmp eax, esi
jae 0x66b214
mov esi, dword [ebx + 0x2ac]
add esi, 0xfffffffc
cmp ebp, esi
jbe 0x66b03a
mov edi, dword [0x95da80]
xor ecx, ecx
jmp 0x66b071
mov ecx, dword [ebx + 0x28c]
cmp ebp, ecx
ja 0x66b2a0
mov edi, dword [ebx + 0x290]
sub ecx, ebp
sub edi, ebp
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, ebp
cmp ecx, 3
jbe 0x66b296
mov ecx, dword [ebx + 0x288]
mov ecx, dword [edi + ecx]
xor edi, edi
test edi, edi
jne 0x66b214
lea edi, [ebp + 4]
cmp esi, edi
jae 0x66b08a
mov esi, dword [0x95da80]
xor edi, edi
jmp 0x66b0c3
mov esi, dword [ebx + 0x28c]
cmp esi, edi
jb 0x66b28d
mov edx, dword [ebx + 0x290]
sub edx, ebp
sub esi, ebp
add esi, 0xfffffffc
add edx, 0xfffffffc
neg edx
sar edx, 0x1f
and edi, edx
cmp esi, 3
jbe 0x66b281
mov edx, dword [ebx + 0x288]
mov edi, dword [edi + edx]
xor esi, esi
test esi, esi
jne 0x66b214
mov edx, dword [ebx + 0x290]
lea esi, [ebp + 0x48]
cmp edx, esi
jb 0x66b27a
mov dword [esp + 0x68], eax
lea eax, [ebp + 8]
cmp esi, eax
jb 0x66b273
mov esi, dword [ebx + 0x288]
sub edx, ebp
add edx, 0xfffffff8
mov dword [esp + 0x60], edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, esi
xor edx, edx
jmp 0x66b252
mov esi, dword [esp + 0x60]
cmp edx, esi
ja 0x66b26a
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], edi
mov dword [esp + 0x48], ebp
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00451eb0
mov eax, dword [esp + 0x160]
mov ecx, dword [esp + 0x15c]
inc ecx
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x158]
cmp eax, ecx
jae 0x66b1aa
mov dword [esp + 0x10c], edx
mov dword [esp + 0x30], ebx
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6dc220]
mov dword [esp + 0x10], eax
call fcn.0044e1d0
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x160], eax
mov dword [esp + 0x158], ebp
mov edx, dword [esp + 0x10c]
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x15c], ecx
lea esi, [ecx - 1]
shl esi, 4
mov dword [esp + 0x6c], esi
mov edi, dword [esp + 0x28]
mov dword [ebp + esi], edi
mov edi, dword [esp + 0x24]
mov dword [ebp + esi + 4], edi
mov dword [ebp + esi + 0xc], ebx
mov edi, dword [0x98d4e0]
mov eax, ebp
mov ebp, dword [esp + 0x48]
lea ecx, [ebp + ebx + 8]
add ebp, ebx
and ecx, 3
sub ebx, ecx
mov esi, dword [esp + 0x68]
lea ebx, [ebx + esi + 0xc]
sub ebp, ecx
test edi, edi
jne 0x66b1fd
mov esi, dword [esp + 0x6c]
jmp 0x66afff
call fcn.004689a0
mov dword [edi], edx
mov esi, dword [esp + 0x6c]
mov ecx, dword [eax + esi + 8]
mov dword [edi + 4], ecx
jmp 0x66afff
lea eax, [0x6d40e0]
mov dword [esp], eax
lea ecx, [esp + 0x154]
mov dword [esp + 4], ecx
call fcn.00409af0
mov eax, dword [esp + 8]
lea ecx, [0x6d40e0]
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], eax
mov ebx, dword [esp + 0x1e8]
jmp 0x66a91a
inc edx
cmp edx, 0x40
jae 0x66b10a
movzx esi, byte [edx + eax]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x66b251
jmp 0x66b10a
mov ecx, edx
mov edx, esi
call fcn.00468a50
mov ecx, esi
call fcn.00468a70
mov ecx, esi
call fcn.00468a50
mov eax, 3
mov ecx, esi
call fcn.00468a00
mov eax, edi
mov ecx, esi
call fcn.00468a70
mov eax, 3
call fcn.00468a00
mov eax, ebp
call fcn.00468a70
mov eax, 3
call fcn.00468a00
call fcn.00468a70
mov dword [esp + 0x110], edi
mov dword [esp + 0x50], ecx
lea eax, [ecx + ecx*4]
lea eax, [edi + eax*4 - 0x14]
lea esi, [esp + 0xac]
mov edi, eax
call fcn.0046910e
mov ecx, dword [esp + 0x64]
lea eax, [ecx + 0x10]
lea ecx, [ebx + 0x10]
mov ebx, dword [esp + 0x50]
mov esi, dword [esp + 0x110]
mov ebx, ebp
mov ebp, esi
mov esi, dword [esp + 0x50]
cmp dword [esp + 0xe4], eax
jbe 0x66b64b
mov dword [esp + 0x64], eax
mov dword [esp + 0x3c], ecx
lea edi, [esp + 0xac]
xor eax, eax
call fcn.00468c2b
mov ecx, dword [ebx + 0x2ac]
add ecx, 0xfffffffc
mov edi, ebp
mov ebp, dword [esp + 0x3c]
cmp ebp, ecx
jbe 0x66b333
mov ecx, dword [0x95da80]
xor eax, eax
jmp 0x66b366
mov ecx, dword [ebx + 0x28c]
cmp ebp, ecx
ja 0x66b6d4
mov eax, dword [ebx + 0x290]
sub ecx, ebp
sub eax, ebp
neg eax
sar eax, 0x1f
and eax, ebp
cmp ecx, 3
jbe 0x66b6ca
mov ecx, dword [ebx + 0x288]
mov eax, dword [eax + ecx]
xor ecx, ecx
mov dword [esp + 0xac], eax
test ecx, ecx
jne 0x66b64d
mov dword [esp + 0x54], edx
lea eax, [ebp + 4]
mov ecx, dword [ebx + 0x2ac]
add ecx, 0xfffffffc
cmp ecx, eax
jae 0x66b393
mov eax, dword [0x95da80]
xor ecx, ecx
jmp 0x66b3d2
mov ecx, dword [ebx + 0x28c]
cmp ecx, eax
jb 0x66b6c5
mov edx, dword [ebx + 0x290]
sub edx, ebp
sub ecx, ebp
add ecx, 0xfffffffc
add edx, 0xfffffffc
neg edx
sar edx, 0x1f
and eax, edx
cmp ecx, 3
jbe 0x66b6bb
mov ecx, dword [ebx + 0x288]
mov eax, dword [eax + ecx]
mov edx, dword [esp + 0x54]
mov ecx, eax
xor eax, eax
mov dword [esp + 0xb0], ecx
test eax, eax
jne 0x66b64d
mov dword [esp + 0x11c], edi
lea eax, [ebp + 8]
mov ecx, dword [ebx + 0x2ac]
add ecx, 0xfffffffc
cmp ecx, eax
jae 0x66b402
mov eax, dword [0x95da80]
xor ecx, ecx
jmp 0x66b448
mov ecx, dword [ebx + 0x28c]
cmp ecx, eax
jb 0x66b6b6
mov edi, dword [ebx + 0x290]
sub edi, ebp
sub ecx, ebp
add ecx, 0xfffffff8
add edi, 0xfffffff8
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and eax, edi
cmp ecx, 3
jbe 0x66b6ac
mov ecx, dword [ebx + 0x288]
mov eax, dword [eax + ecx]
mov edi, dword [esp + 0x11c]
mov ecx, eax
xor eax, eax
mov dword [esp + 0xb4], ecx
test eax, eax
jne 0x66b64d
lea eax, [ebp + 0xc]
mov ecx, dword [ebx + 0x2ac]
add ecx, 0xfffffffe
cmp ecx, eax
jae 0x66b471
mov eax, dword [0x95da80]
xor ecx, ecx
jmp 0x66b4b8
mov ecx, dword [ebx + 0x28c]
cmp ecx, eax
jb 0x66b6a7
mov edi, dword [ebx + 0x290]
sub edi, ebp
sub ecx, ebp
add ecx, 0xfffffff4
add edi, 0xfffffff4
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and eax, edi
cmp ecx, 1
jbe 0x66b69d
mov ecx, dword [ebx + 0x288]
movzx eax, word [eax + ecx]
mov edi, dword [esp + 0x11c]
mov ecx, eax
xor eax, eax
mov word [esp + 0xb8], cx
test eax, eax
jne 0x66b64d
lea ecx, [ebp + 0xf]
cmp dword [ebx + 0x2ac], ecx
jae 0x66b4ef
mov eax, dword [0x95da80]
mov dword [esp + 0x80], eax
xor eax, eax
mov byte [esp + 0x23], al
mov eax, dword [esp + 0x80]
jmp 0x66b52f
mov eax, dword [ebx + 0x290]
cmp eax, ecx
jb 0x66b696
lea edi, [ebp + 0xe]
cmp ecx, edi
jb 0x66b68f
mov edx, dword [ebx + 0x288]
sub eax, ebp
add eax, 0xfffffff2
neg eax
sar eax, 0x1f
and edi, eax
movzx eax, byte [edi + edx]
mov edx, dword [esp + 0x54]
mov edi, dword [esp + 0x11c]
mov byte [esp + 0x23], al
xor eax, eax
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [esp + 0xba], al
xchg ebp, eax
test eax, eax
jne 0x66b64d
mov ebp, dword [ebx + 0x2ac]
add ebp, 0xfffffffe
cmp ebp, ecx
jae 0x66b567
mov ecx, dword [0x95da80]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x1e8]
xor eax, eax
jmp 0x66b5ac
mov ebp, dword [ebx + 0x28c]
cmp ebp, ecx
jb 0x66b686
mov eax, dword [ebx + 0x290]
mov ebx, dword [esp + 0x3c]
sub eax, ebx
sub ebp, ebx
add ebp, 0xfffffff1
add eax, 0xfffffff1
neg eax
sar eax, 0x1f
and ecx, eax
cmp ebp, 1
jbe 0x66b67a
mov ebp, dword [esp + 0x1e8]
mov eax, dword [ebp + 0x288]
movzx eax, word [ecx + eax]
xor ecx, ecx
test ecx, ecx
jne 0x66b64d
mov ecx, eax
and eax, 7
mov byte [esp + 0xbb], al
mov eax, ecx
and ecx, 8
shr cx, 3
mov byte [esp + 0xbc], cl
mov ecx, eax
and eax, 0x10
shr ax, 4
mov byte [esp + 0xbd], al
mov eax, ecx
and ecx, 0x20
shr cx, 5
mov byte [esp + 0xbe], cl
and eax, 0xc0
shr ax, 6
mov byte [esp + 0xbf], al
lea ecx, [esi + 1]
cmp edx, ecx
jae 0x66b2b6
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6f1340]
mov dword [esp + 0x10], eax
call fcn.0044e1d0
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x3c]
mov edi, ebp
mov ebp, dword [esp + 0x1e8]
jmp 0x66b2b6
mov edi, ebp
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
call fcn.00409db0
mov eax, dword [esp + 0xc]
lea ecx, [0x6b1bc0]
mov dword [esp + 0x1d4], ecx
mov dword [esp + 0x1d8], eax
jmp 0x66a91a
mov eax, 1
mov ecx, ebp
call fcn.00468a00
mov eax, ecx
mov ecx, ebp
call fcn.00468a70
mov eax, edi
call fcn.00468a70
mov edx, eax
call fcn.00468a50
mov eax, 1
call fcn.00468a00
call fcn.00468a70
mov eax, 3
call fcn.00468a00
call fcn.00468a70
mov eax, 3
call fcn.00468a00
call fcn.00468a70
mov eax, 3
call fcn.00468a00
mov eax, ebp
call fcn.00468a70
mov eax, 3
call fcn.00468a00
call fcn.00468a70
mov eax, 3
mov ecx, ebp
call fcn.00468a00
mov eax, edx
mov ecx, ebp
call fcn.00468a70
mov eax, 3
mov ecx, ebp
call fcn.00468a00
mov eax, edx
mov ecx, ebp
call fcn.00468a70
mov eax, 3
call fcn.00468a00
call fcn.00468a70
call fcn.00437490
nop
call fcn.00467590
jmp fcn.00669ec0