Function at 0x1002cba3
Capabilities:
Inspect section memory permissions

Disassembly:
push 8
push 0x150
mov eax, 0x100f0929
call fcn.100eeffc
mov dword [ebp - 0xc0], ecx
movss xmm0, dword [ebx + 0x28]
lea esi, [ebx + 0x28]
mov eax, dword [ebx + 0x14]
lea edi, [ebp - 0x12c]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebx + 8]
movss dword [ebp - 0x100], xmm0
movss xmm0, dword [ebx + 0x24]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0xb4], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
comiss xmm0, dword [ebp - 0x120]
jbe 0x1002cc05
movss dword [ebp - 0x120], xmm0
mov esi, eax
lea ecx, [ebp - 0x13c]
push ecx
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 8]
mov edi, dword [ebp - 0xb8]
and dword [ebp - 0x118], 0
mov dword [ebp - method.Scintilla::FontAlias.virtual_0], vtable.Scintilla::FontAlias.0
mov eax, dword [edi + 0x14]
mov dword [ebp - 0xf0], eax
mov eax, dword [eax + 0xa14]
mov dword [ebp - 0x118], eax
and dword [ebp - 4], 0
xor esi, esi
mov eax, dword [edi + 0xe4]
mov ecx, dword [edi + 0xe0]
sub eax, ecx
cdq
mov dword [ebp - 0x104], 0x18
idiv dword [ebp - 0x104]
mov dword [ebp - 0xfc], esi
test eax, eax
je 0x1002d95f
imul edx, esi, 0x18
mov dword [ebp - 0xcc], edx
mov eax, dword [ecx + edx + 8]
test eax, eax
jle 0x1002d936
movss xmm1, dword [ebp - 0x100]
xor esi, esi
movd xmm0, eax
inc esi
mov eax, dword [ecx + edx]
movss dword [ebp - 0x12c], xmm1
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ebp - 0x100], xmm1
movss dword [ebp - 0x124], xmm1
cmp eax, esi
je 0x1002cd42
test dword [ecx + edx + 0xc], 0xfe000000
je 0x1002ccf7
cvttss2si eax, dword [ebp - 0x138]
xor ecx, ecx
inc ecx
and al, cl
mov ecx, dword [ebp - 0xd0]
mov eax, dword [ecx]
mov edx, dword [eax + 0x34]
mov eax, dword [ebp - 0xc0]
je 0x1002ccf1
mov eax, dword [eax + 4]
jmp 0x1002ccf4
mov eax, dword [eax + 8]
push eax
jmp 0x1002cd56
dec eax
sub eax, 1
je 0x1002cd25
sub eax, 1
je 0x1002cd1a
push 3
pop esi
sub eax, esi
je 0x1002cd14
mov eax, dword [edi + 0x14]
mov eax, dword [eax + 0xa00]
jmp 0x1002cd2e
mov eax, dword [ecx + edx + 4]
jmp 0x1002cd2e
mov eax, dword [edi + 0x14]
mov eax, dword [eax + 0x9b0]
jmp 0x1002cd2e
mov eax, dword [edi + 0x14]
mov eax, dword [eax + 0x9b4]
mov ecx, dword [ebp - 0xd0]
push eax
mov ecx, dword [ecx]
mov edx, dword [ecx + 0x38]
mov ecx, dword [ebp - 0xd0]
jmp 0x1002cd56
mov ecx, dword [ebp - 0xd0]
mov eax, dword [ecx]
mov edx, dword [eax + 0x38]
mov eax, dword [edi + 0x14]
push dword [eax + 0xa00]
sub esp, 0x10
lea esi, [ebp - 0x12c]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call edx
movss xmm0, dword [ebx + 0x2c]
addss xmm0, dword [ebp - 0x138]
mov edi, dword [ebp - 0xb8]
cvttss2si eax, xmm0
lea ecx, [edi + 0x48]
mov dword [ebp - 0xf8], ecx
cdq
idiv dword [ecx]
mov esi, eax
mov eax, dword [ebp - 0xb4]
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 4]
mov ecx, dword [ebp - 0xf8]
mov byte [ebp - 0xe0], 0
lea edx, [esi + eax]
mov eax, dword [ecx]
cvttss2si ecx, dword [ebp - 0x138]
mov dword [ebp - 0xe8], edx
imul eax, esi
sub eax, ecx
mov ecx, dword [edi + 0xe0]
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xcc]
test dword [ecx + eax + 0xc], 0xfe000000
je 0x1002cef2
mov ecx, dword [ebp - 0xb4]
push edx
mov edi, dword [ecx + 0x298]
mov ecx, dword [ecx + 0x284]
add edi, 4
mov eax, dword [edi]
mov esi, dword [eax + 0x1c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
push eax
push edi
call esi
mov dword [ebp - 0xd4], eax
test eax, 0x1000
je 0x1002ce81
mov edi, dword [ebp - 0xb4]
push dword [ebp - 0xe8]
mov ecx, dword [edi + 0x284]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
call edx
mov ecx, dword [ebp - 0xd4]
mov esi, eax
mov eax, ecx
test esi, esi
jle 0x1002ce5a
test eax, 0x1000
je 0x1002ce54
mov ecx, dword [edi + 0x298]
dec esi
add ecx, 4
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x1c]
test esi, esi
jg 0x1002ce38
mov ecx, dword [ebp - 0xd4]
test eax, 0x2000
jne 0x1002ce81
mov edx, 0xfff
and eax, edx
and ecx, edx
mov edx, dword [ebp - 0xe0]
cmp ecx, eax
push 1
movzx edx, dl
pop eax
cmovb edx, eax
mov dword [ebp - 0xe0], edx
mov eax, dword [ebp - 0xc0]
cmp byte [eax + 0x1c], 0
je 0x1002ceec
mov ecx, dword [ebp - 0xb4]
mov edi, dword [ecx + 0x284]
mov eax, dword [edi]
mov esi, dword [eax + 0x18]
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, dword [ebx + 0xc]
mov ecx, edi
push eax
call esi
lea esi, [eax + 1]
mov eax, dword [ebp - 0xb4]
mov edx, dword [eax + 0x260]
mov ecx, dword [eax + 0x238]
add edx, edx
mov edi, dword [eax + 0x298]
mov edx, dword [ecx + edx*8]
mov ecx, dword [edi + 0x80]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x1c]
call eax
mov edx, dword [ebp - 0xc0]
mov ecx, edi
push esi
add edx, 0xc
push eax
push edx
call fcn.1000a291
mov edi, dword [ebp - 0xb8]
mov eax, dword [edi + 0x24]
mov esi, dword [ebp - 0xb4]
push 0x1f
pop ecx
cmp dword [eax + 0x3ac], 5
push 0x1a
pop edx
cmovne ecx, edx
cmp dword [eax + 0x388], 5
push 0x1e
mov dword [ebp - 0x130], ecx
pop ecx
push 0x19
pop edx
cmovne ecx, edx
mov dword [ebp - 0x134], ecx
mov ecx, dword [esi + 0x284]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov edx, dword [ebp - 0xe8]
cmp edx, eax
jge 0x1002d930
movd xmm1, dword [ebp - 0xf4]
movss xmm0, dword [ebx + 0x24]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x1002d930
mov ecx, dword [esi + 0x284]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi + 0x284]
push eax
mov dword [ebp - 0xdc], eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x10]
call edx
mov edi, dword [ebp - 0xb4]
mov esi, eax
push dword [ebp - 0xdc]
mov ecx, dword [edi + 0x284]
mov edx, dword [ecx]
mov edx, dword [edx + 0x14]
call edx
cmp dword [ebp - 0xe8], esi
mov ecx, eax
mov eax, dword [edi + 0x298]
push dword [ebp - 0xdc]
sete byte [ebp - 0xb9]
mov dword [ebp - 0xf0], ecx
cmp dword [ebp - 0xe8], ecx
mov ecx, eax
mov dword [ebp - 0xec], eax
sete byte [ebp - 0xd5]
call fcn.10009a92
mov ecx, dword [ebp - 0xb8]
mov edi, eax
mov edx, dword [ebp - 0xcc]
xor eax, eax
cmp dword [ebp - 0xe8], esi
mov byte [ebp - 0xc5], al
mov ecx, dword [ecx + 0xe0]
cmovne edi, eax
mov dword [ebp - 0xc4], edi
test dword [ecx + edx + 0xc], 0xfe000000
je 0x1002d23d
mov ecx, dword [ebp - 0xec]
push dword [ebp - 0xdc]
add ecx, 4
push ecx
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov esi, dword [ebp - 0xb4]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xdc]
mov edx, dword [esi + 0x298]
add edx, 4
inc eax
push eax
push edx
mov dword [ebp - 0xe4], eax
mov ecx, dword [edx]
call dword [ecx + 0x1c]
mov edx, dword [ebp - 0xd4]
mov ecx, eax
mov eax, edx
mov dword [ebp - 0xec], ecx
and eax, 0xfff
and ecx, 0xfff
mov dword [ebp - 0xd4], eax
test edx, 0x2000
je 0x1002d1f8
cmp byte [ebp - 0xb9], 0
je 0x1002d0d1
cmp eax, ecx
jae 0x1002d0f9
mov ecx, dword [esi + 0x284]
push dword [ebp - 0xdc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
test al, al
mov eax, 0x400
je 0x1002d0b9
cmp dword [ebp - 0xd4], eax
jne 0x1002d0ae
or edi, 0x80000000
jmp 0x1002d108
mov eax, dword [ebp - 0x130]
bts edi, eax
jmp 0x1002d108
cmp dword [ebp - 0xd4], eax
jne 0x1002d0c9
or edi, 0x40000000
jmp 0x1002d108
mov eax, dword [ebp - 0x134]
jmp 0x1002d0b4
cmp eax, ecx
jae 0x1002d0f9
mov ecx, dword [esi + 0x284]
push dword [ebp - 0xdc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
test al, al
jne 0x1002d102
mov eax, 0x400
cmp dword [ebp - 0xd4], eax
jmp 0x1002d100
mov ecx, 0x400
cmp eax, ecx
jbe 0x1002d10e
or edi, 0x20000000
mov dword [ebp - 0xc4], edi
mov edi, dword [esi + 0x284]
mov ecx, edi
push dword [ebp - 0xe4]
mov byte [ebp - 0xe0], 0
mov eax, dword [edi]
mov esi, dword [eax + 0x18]
mov eax, dword [eax + 0x10]
call eax
push eax
mov ecx, edi
call esi
mov edi, dword [ebp - 0xb4]
push eax
mov dword [ebp - 0xec], eax
mov edx, dword [edi + 0x298]
add edx, 4
push edx
mov ecx, dword [edx]
call dword [ecx + 0x1c]
mov esi, dword [edi + 0x298]
add esi, 4
mov dword [ebp - 0xe4], eax
mov ecx, dword [esi]
mov edx, dword [ecx + 0x1c]
mov ecx, dword [ebp - 0xec]
inc ecx
push ecx
push esi
call edx
mov ecx, dword [edi + 0x284]
mov esi, eax
push dword [ebp - 0xdc]
and esi, 0xfff
mov edx, dword [ecx]
mov edx, dword [edx + 0x38]
call edx
test al, al
jne 0x1002d3f7
test dword [ebp - 0xe4], 0x1000
je 0x1002d1b9
mov eax, dword [ebp - 0xe0]
cmp dword [ebp - 0xd4], esi
push 1
movzx eax, al
pop ecx
cmova eax, ecx
mov byte [ebp - 0xe0], al
jmp 0x1002d1bc
xor ecx, ecx
inc ecx
mov edx, dword [ebp - 0xc0]
cmp byte [edx + 0x1c], 0
je 0x1002d402
cmp dword [edx + 0xc], 0xffffffff
je 0x1002d402
mov eax, dword [ebp - 0xec]
cmp dword [edx + 0xc], eax
jg 0x1002d402
mov edi, dword [ebp - 0xc4]
cmp eax, dword [edx + 0x10]
jg 0x1002d243
mov byte [ebp - 0xc5], cl
jmp 0x1002d243
mov esi, 0x1000
test esi, edx
je 0x1002d3ba
cmp byte [ebp - 0xe0], 0
je 0x1002d38b
test dword [ebp - 0xec], esi
je 0x1002d221
mov eax, 0x20000000
jmp 0x1002d23b
mov eax, 0x400
mov byte [ebp - 0xe0], 0
cmp ecx, eax
mov eax, 0x8000000
ja 0x1002d23b
mov eax, 0x10000000
or edi, eax
mov edx, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0xb8]
lea esi, [ebp - 0x12c]
mov eax, dword [ebp - 0xcc]
mov ecx, dword [ecx + 0xe0]
and edi, dword [ecx + eax + 0xc]
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0xc4], edi
lea edi, [ebp - 0x114]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0xf4]
add eax, esi
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x110], xmm0
movd xmm0, eax
mov eax, dword [ebp - 0xcc]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x108], xmm0
mov eax, dword [ecx + eax]
xor ecx, ecx
inc ecx
cmp eax, ecx
jne 0x1002d5e4
cmp byte [ebp - 0xb9], 0
je 0x1002d53a
and dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
mov edi, dword [ebp - 0xdc]
mov byte [ebp - 4], cl
test edi, edi
js 0x1002d308
lea edx, [edi + 1]
lea ecx, [ebp - 0xb0]
call fcn.10021edb
push eax
lea ecx, [ebp - 0x98]
call fcn.1000e2b7
lea ecx, [ebp - 0xb0]
call fcn.10002065
mov esi, dword [ebp - 0xb4]
test byte [esi + 0x278], 0xc0
je 0x1002d441
push 0x64
lea eax, [ebp - 0x80]
push 0
push eax
call fcn.100d8940
mov ecx, dword [esi + 0x298]
add esp, 0xc
add ecx, 4
test byte [esi + 0x278], 0x40
push edi
mov eax, dword [ecx]
push ecx
je 0x1002d40d
call dword [eax + 0x1c]
mov ecx, eax
mov edx, eax
sar ecx, 0x10
and edx, 0xfff
push ecx
mov ecx, eax
and eax, 0x2000
shr ecx, 9
not cl
and ecx, 8
or ecx, 0x57
neg eax
push edx
sbb eax, eax
and eax, 0xffffffe9
push ecx
add eax, 0x5f
push eax
lea eax, [ebp - 0x80]
push str._c_c__03X__03X
push eax
call fcn.1000ec0f
add esp, 0x18
jmp 0x1002d422
mov edx, 0x400
cmp eax, edx
jbe 0x1002d23d
cmp ecx, eax
jae 0x1002d3af
cmp edx, ecx
sbb eax, eax
and eax, 0xf8000000
add eax, 0x10000000
jmp 0x1002d23b
or edi, 0x20000000
jmp 0x1002d23d
mov edx, 0x400
cmp eax, edx
jbe 0x1002d23d
cmp ecx, eax
jae 0x1002d3af
mov byte [ebp - 0xe0], 0
test dword [ebp - 0xec], esi
je 0x1002d3e8
xor eax, eax
inc eax
mov byte [ebp - 0xe0], al
jmp 0x1002d21a
cmp byte [ebp - 0xd5], 0
je 0x1002d21a
jmp 0x1002d39c
mov edi, dword [ebp - 0xc4]
jmp 0x1002d23d
mov edi, dword [ebp - 0xc4]
jmp 0x1002d243
call dword [eax + 0x24]
push eax
lea eax, [ebp - 0x80]
push 0x1010b3d8
push eax
call fcn.1000ec0f
add esp, 0xc
lea ecx, [ebp - 0x80]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1002d428
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
lea ecx, [ebp - 0x98]
call fcn.100020aa
mov ecx, dword [ebp - 0xd0]
lea esi, [ebp - 0x114]
cmp dword [ebp - 0x84], 0x10
lea edi, [ebp - 0x15c]
push dword [ebp - 0x88]
movsd dword es:[edi], dword [esi]
mov eax, dword [ecx]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x68]
mov dword [ebp - 0xe4], eax
lea eax, [ebp - 0x98]
cmovae eax, dword [ebp - 0x98]
movsd dword es:[edi], dword [esi]
push eax
lea eax, [ebp - 0x11c]
push eax
movsd dword es:[edi], dword [esi]
call dword [ebp - 0xe4]
mov edx, dword [ebp - 0xb8]
lea ecx, [ebp - 0x98]
movss xmm1, dword [ebp - 0x154]
lea esi, [ebp - 0x15c]
cmp dword [ebp - 0x84], 0x10
push dword [ebp - 0x88]
movd xmm0, dword [edx + 0x174]
mov eax, dword [edx + 0x50]
cmovae ecx, dword [ebp - 0x98]
cvtdq2ps xmm0, xmm0
mov edx, dword [edx + 0x14]
push ecx
mov ecx, dword [ebp - 0xd0]
sub esp, 0x10
mov edi, esp
add edx, 0x9cc
fstp dword [ebp - 0xe4]
subss xmm1, dword [ebp - 0xe4]
push 0x1ff
subss xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movss dword [ebp - 0x15c], xmm1
addsd xmm0, qword [eax*8 + 0x10115aa0]
movsd dword es:[edi], dword [esi]
cvtpd2ps xmm2, xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
addss xmm2, dword [ebp - 0x158]
movsd dword es:[edi], dword [esi]
call fcn.100221db
add esp, 0x1c
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x98]
call fcn.10002065
jmp 0x1002d7b0
mov edi, dword [ebp - 0xb8]
test byte [edi + 0x184], 4
je 0x1002d7b6
movd xmm0, dword [edx + 0x20]
lea esi, [ebp - 0x114]
mov eax, dword [ebp - 0xb8]
lea edi, [ebp - 0x14c]
movss xmm1, dword [ebp - 0x10c]
mov ecx, dword [edx + 0x24]
movsd dword es:[edi], dword [esi]
mov eax, dword [eax + 0x14]
cvtdq2ps xmm0, xmm0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
subss xmm1, xmm0
movsd dword es:[edi], dword [esi]
movss dword [ebp - 0x144], xmm1
lea esi, [ebp - 0x14c]
subss xmm1, dword [eax + 0x9f0]
movss dword [ebp - 0x14c], xmm1
test ecx, ecx
jne 0x1002d5c3
mov ecx, dword [ebp - 0xd0]
sub esp, 0x10
mov edi, esp
xor dl, dl
push dword [eax + 0x9fc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.1002c8ce
add esp, 0x14
jmp 0x1002d7b0
push dword [eax + 0x9fc]
push 0
sub esp, 0x10
mov edi, esp
push dword [ebp - 0xd0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call ecx
add esp, 0x1c
jmp 0x1002d7b0
push 4
pop ecx
cmp eax, ecx
je 0x1002d5f4
cmp eax, 5
jne 0x1002d7b0
mov esi, dword [ebp - 0xb4]
lea eax, [ebp - 0x94]
push dword [ebp - 0xdc]
push eax
mov ecx, dword [esi + 0x298]
call fcn.1000ce7e
cmp dword [ebp - 0x90], 0
mov edi, dword [ebp - 0xb8]
je 0x1002d7bc
mov edx, dword [edi + 0x140]
lea ecx, [ebp - 0x94]
push ecx
mov ecx, edi
call fcn.1002200e
pop ecx
test al, al
je 0x1002d7bc
cmp byte [ebp - 0xb9], 0
je 0x1002d739
cmp byte [ebp - 0x8c], 0
mov edx, dword [ebp - 0xd0]
mov eax, dword [edx]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0xe4], eax
je 0x1002d674
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax]
jmp 0x1002d67a
mov eax, dword [ebp - 0x88]
add eax, dword [edi + 0x140]
lea esi, [ebp - 0x114]
imul ecx, eax, 0x4c
mov eax, dword [edi + 0x14]
push dword [ecx + eax + 0x34]
mov ecx, edx
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xb8]
mov edx, dword [ebp - 0xcc]
mov eax, dword [ecx + 0xe0]
cmp dword [edx + eax], 5
jne 0x1002d6f8
lea eax, [ebp - 0x94]
mov edx, ecx
push eax
push dword [ecx + 0x140]
mov ecx, dword [ebp - 0xd0]
call fcn.10022113
movss xmm1, dword [ebp - 0x10c]
pop ecx
pop ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
subss xmm1, dword [0x101159c4]
movss dword [ebp - 0x114], xmm1
sub esp, 0x10
mov ecx, dword [ebp - 0xd0]
mov edi, esp
lea esi, [ebp - 0x114]
lea eax, [ebp - 0x94]
push 0x1ff
push dword [ebp - 0x94]
movsd dword es:[edi], dword [esi]
push 0
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xb8]
mov edx, edi
push dword [edi + 0x140]
call fcn.1002226b
add esp, 0x24
jmp 0x1002d7b6
push dword [ebp - 0xdc]
mov ecx, dword [esi + 0x298]
call fcn.1000d1e1
test eax, eax
je 0x1002d7bc
mov ecx, dword [ebp - 0xf0]
sub ecx, eax
cmp dword [ebp - 0xe8], ecx
jle 0x1002d7bc
cmp byte [ebp - 0x8c], 0
mov edx, dword [ebp - 0xd0]
mov eax, dword [edx]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0xf0], eax
je 0x1002d783
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax]
jmp 0x1002d789
mov eax, dword [ebp - 0x88]
add eax, dword [edi + 0x140]
lea esi, [ebp - 0x114]
imul ecx, eax, 0x4c
mov eax, dword [edi + 0x14]
push dword [ecx + eax + 0x34]
mov ecx, edx
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [ebp - 0xf0]
mov edi, dword [ebp - 0xb8]
mov esi, dword [ebp - 0xb4]
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x1002d911
xor ecx, ecx
mov dword [ebp - 0xd4], ecx
test eax, eax
je 0x1002d911
xor edx, edx
inc edx
test dl, al
je 0x1002d8f4
mov eax, dword [edi + 0xe0]
xor ecx, ecx
mov edx, dword [ebp - 0xcc]
test dword [eax + edx + 0xc], 0xfe000000
je 0x1002d8bc
mov eax, dword [ebp - 0xc0]
cmp byte [eax + 0x1c], cl
je 0x1002d8bc
mov eax, dword [eax + 0xc]
cmp eax, 0xffffffff
je 0x1002d8bc
mov edx, dword [ebp - 0xdc]
cmp eax, edx
jg 0x1002d8b6
mov edi, dword [ebp - 0xc0]
cmp edx, dword [edi + 0x10]
mov edi, dword [ebp - 0xb8]
jg 0x1002d8b6
cmp eax, edx
jge 0x1002d857
mov esi, dword [ebp - 0xc0]
cmp edx, dword [esi + 0x10]
mov esi, dword [ebp - 0xb4]
jge 0x1002d855
push 2
pop ecx
jmp 0x1002d8b6
cmp eax, edx
jne 0x1002d8a3
mov edi, dword [ebp - 0xc0]
cmp edx, dword [edi + 0x10]
mov edi, dword [ebp - 0xb8]
jge 0x1002d8a3
cmp byte [ebp - 0xb9], cl
je 0x1002d885
xor eax, eax
cmp byte [ebp - 0xc5], al
push 4
lea ecx, [eax + 1]
pop eax
cmovne ecx, eax
jmp 0x1002d8b6
mov ecx, dword [esi + 0x284]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
test al, al
jne 0x1002d850
cmp byte [ebp - 0xc5], al
jne 0x1002d850
xor ecx, ecx
jmp 0x1002d8b6
cmp eax, edx
jge 0x1002d8b6
mov eax, dword [ebp - 0xc0]
push 3
cmp edx, dword [eax + 0x10]
pop eax
cmove ecx, eax
mov edx, dword [ebp - 0xcc]
mov eax, dword [edi + 0xe0]
push dword [eax + edx]
lea eax, [ebp - 0x11c]
push ecx
mov ecx, dword [edi + 0x24]
add ecx, dword [ebp - 0xd4]
push eax
lea eax, [ebp - 0x114]
push eax
push dword [ebp - 0xd0]
call fcn.1002b404
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xd4]
add ecx, 0x24
sar eax, 1
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xd4], ecx
cmp ecx, 0x480
jl 0x1002d7d2
mov ecx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xf4]
inc dword [ebp - 0xe8]
add eax, dword [ecx]
mov dword [ebp - 0xf4], eax
jmp 0x1002cf27
mov esi, dword [ebp - 0xfc]
mov eax, dword [edi + 0xe4]
inc esi
mov ecx, dword [edi + 0xe0]
sub eax, ecx
cdq
idiv dword [ebp - 0x104]
mov dword [ebp - 0xfc], esi
cmp esi, eax
jb 0x1002cc74
mov edx, dword [edi + 0x14]
jmp 0x1002d965
mov edx, dword [ebp - 0xf0]
push dword [edx + 0x9b4]
movss xmm0, dword [ebp - 0x100]
lea esi, [ebx + 0x28]
mov ecx, dword [ebp - 0xd0]
lea edi, [ebp - 0x14c]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
mov eax, dword [ecx]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
movss dword [ebp - 0x14c], xmm0
lea esi, [ebp - 0x14c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x38]
mov ecx, dword [ebp - 0x14]
call fcn.100eefd7
ret 0x30