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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10176430
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x140
push esi
mov esi, dword [0x1078597c]
mov dword [ebp - 0xe8], ecx
mov ecx, esi
push edi
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x14], ecx
mov eax, dword [ecx + 0x1a00]
mov byte [eax + 0x7c], 1
mov edi, dword [ecx + 0x1a00]
mov dword [ebp - 0x88], edi
cmp byte [edi + 0x7f], 0
jne 0x101131e4
mov ecx, dword [ebx + 0x14]
mov eax, ecx
shr eax, 0x11
mov edx, ecx
and eax, 0xffffff01
shr edx, 0x16
mov dword [ebp - 0x50], eax
and edx, 0xffffff01
mov eax, ecx
mov dword [ebp - 0x3c], edx
shr eax, 0x12
and eax, 0xffffff01
mov dword [ebp - 0xb4], eax
mov eax, ecx
shr eax, 0x13
not al
and eax, 0xffffff01
mov dword [ebp - 0x54], eax
mov eax, ecx
shr eax, 0x15
and eax, 0xffffff01
mov dword [ebp - 0x94], eax
test dl, dl
je 0x10112f74
call fcn.100f7400
mov esi, dword [0x1078597c]
mov ecx, dword [edi + 0xbc]
xor edx, edx
mov eax, dword [edi + 0xc4]
push dword [eax + ecx*4 - 4]
mov ecx, dword [ebp - 0xe8]
call fcn.100eb890
add esp, 4
mov dword [ebp - 0x30], eax
cmp dword [esi + 0x1a34], eax
jne 0x10112fa5
mov dword [esi + 0x1a38], eax
cmp dword [esi + 0x1a6c], eax
jne 0x10112fb4
mov byte [esi + 0x1a70], 1
mov edx, dword [ebp - 0xe8]
mov eax, edx
cmp edx, 0xffffffff
jae 0x10112fd7
mov cl, byte [eax]
test cl, cl
je 0x10112fd7
cmp cl, 0x23
jne 0x10112fd1
cmp byte [eax + 1], cl
je 0x10112fd7
inc eax
cmp eax, 0xffffffff
jb 0x10112fc1
movss xmm0, dword [esi + 0x18d0]
cmp edx, eax
jne 0x10112ff0
xorps xmm1, xmm1
movss dword [ebp - 0xec], xmm1
jmp 0x1011303e
movss xmm3, dword [0x1074b9d4]
movaps xmm2, xmm0
push 0
push eax
push edx
push ecx
mov ecx, dword [esi + 0x18cc]
lea eax, [ebp - 0x80]
mov dword [esp], 0xbf800000
push eax
call fcn.1010a1e0
movss xmm0, dword [ebp - 0x80]
xorps xmm1, xmm1
addss xmm0, dword [0x1074b834]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [ebp - 0x7c]
cmp byte [ebp - 0x3c], 0
mov eax, dword [ebp - 0x14]
je 0x10113057
movss xmm0, dword [eax + 0x18d0]
mulss xmm0, dword [0x1074b8dc]
test byte [esi + 0x1ad8], 1
movss xmm2, dword [eax + 0x1554]
mov ecx, dword [esi + 0x1a00]
addss xmm2, xmm2
addss xmm2, xmm0
je 0x10113080
movss xmm0, dword [esi + 0x1adc]
jmp 0x10113088
movss xmm0, dword [ecx + 0x1a8]
comiss xmm1, xmm0
jbe 0x101130c0
mov eax, ecx
cmp dword [eax + 0x190], 0
movss xmm1, dword [eax + 0x244]
je 0x101130a8
movss xmm1, dword [eax + 0x224]
subss xmm1, dword [ecx + 0xc8]
addss xmm1, xmm0
movss xmm0, dword [0x1074b838]
maxss xmm0, xmm1
mov ecx, dword [ebx + 0x10]
sub esp, 8
cvttss2si eax, xmm0
mov edx, esp
movd xmm1, eax
mov eax, dword [ecx]
cvtdq2ps xmm1, xmm1
mov dword [edx], eax
mov eax, dword [ecx + 4]
lea ecx, [ebp - 0x70]
mov dword [edx + 4], eax
call fcn.100f7330
movss xmm1, dword [ebp - 0xec]
xorps xmm0, xmm0
mov esi, dword [ebp - 0x14]
add esp, 8
comiss xmm1, xmm0
jbe 0x10113105
addss xmm1, dword [esi + 0x1568]
jmp 0x10113108
xorps xmm1, xmm1
cmp byte [ebp - 0x3c], 0
movss xmm5, dword [ebp - 0x70]
movss xmm3, dword [edi + 0xc8]
addss xmm1, xmm5
movss xmm4, dword [edi + 0xcc]
movaps xmm0, xmm3
movaps xmm2, xmm4
movss dword [ebp - 0x90], xmm5
addss xmm2, dword [ebp - 0x6c]
addss xmm0, xmm5
movss dword [ebp - 0xcc], xmm3
addss xmm1, xmm3
movss dword [ebp - 0xc8], xmm4
movss dword [ebp - 0xdc], xmm3
movss dword [ebp - 0xd8], xmm4
movss dword [ebp - 0xc0], xmm2
movss dword [ebp - 0xc4], xmm0
movss dword [ebp - 0xd4], xmm1
movss dword [ebp - 0xd0], xmm2
mov dword [ebp - 0x5c], edi
je 0x10113370
mov edx, dword [ebp - 0x30]
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0xdc]
call fcn.100f6f50
add esp, 4
test al, al
jne 0x101131f9
movss xmm0, dword [ebp - 0xd4]
lea ecx, [ebp - 0x80]
subss xmm0, dword [ebp - 0xdc]
movss xmm1, dword [esi + 0x1554]
movss dword [ebp - 0x80], xmm0
movss xmm0, dword [ebp - 0xd0]
subss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0x7c], xmm0
call fcn.100f6e20
call fcn.100f7540
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov esi, dword [0x1078597c]
lea eax, [ebp - 0xe0]
push eax
mov dword [ebp - 0xe0], 3
movups xmm0, xmmword [esi + 0x15fc]
lea ecx, [esi + 0x1aec]
movups xmmword [ebp - 0xdc], xmm0
call fcn.100fd060
mov edi, dword [ebp - 0x14]
lea eax, [ebp - 0x84]
push eax
mov dword [ebp - 0x84], 6
movups xmm0, xmmword [edi + 0x163c]
movups xmmword [esi + 0x15fc], xmm0
mov esi, dword [0x1078597c]
movss xmm0, dword [edi + 0x1558]
movss dword [ebp - 0x28], xmm0
movss xmm0, dword [esi + 0x1540]
lea ecx, [esi + 0x1af8]
movss dword [ebp - 0x80], xmm0
call fcn.100fcf90
movss xmm0, dword [ebp - 0x28]
lea eax, [ebp - 0x84]
movss dword [esi + 0x1540], xmm0
mov esi, dword [0x1078597c]
movss xmm0, dword [edi + 0x155c]
movss dword [ebp - 0x28], xmm0
push eax
movss xmm0, dword [esi + 0x1544]
lea ecx, [esi + 0x1af8]
mov dword [ebp - 0x84], 7
movss dword [ebp - 0x80], xmm0
call fcn.100fcf90
movss xmm0, dword [ebp - 0x28]
lea edx, [edi + 0x1550]
mov ecx, 1
movss dword [esi + 0x1544], xmm0
call fcn.100ec650
movss xmm1, dword [ebp - 0xc4]
lea eax, [ebp - 0x80]
movss xmm0, dword [ebp - 0xc0]
sub esp, 8
subss xmm1, dword [ebp - 0xcc]
subss xmm0, dword [ebp - 0xc8]
mov esi, dword [ebp - 0x30]
mov edx, esi
mov ecx, dword [ebp - 0xe8]
push eax
movss dword [ebp - 0x80], xmm1
movss dword [ebp - 0x7c], xmm0
call fcn.100f1c10
add esp, 0xc
mov byte [ebp - 0x33], al
mov ecx, 3
call fcn.100ec6d0
mov ecx, 1
call fcn.100ec600
cmp byte [ebp - 0x33], 0
jne 0x10113347
call fcn.100f1e00
jmp 0x101131df
mov ecx, dword [edi + 0x1a00]
movss xmm0, dword [ebp - 0x70]
mov dword [ebp - 0x5c], ecx
subss xmm0, dword [ecx + 0x70]
mov eax, dword [ecx + 0x138]
or dword [ecx + 0x140], eax
movss dword [ebp - 0x90], xmm0
jmp 0x101133b7
mov edi, dword [ebp - 0x14]
subss xmm1, xmm3
subss xmm2, xmm4
lea ecx, [ebp - 0x80]
movss dword [ebp - 0x80], xmm1
movss xmm1, dword [edi + 0x1554]
movss dword [ebp - 0x7c], xmm2
call fcn.100f6e20
mov esi, dword [ebp - 0x30]
lea eax, [ebp - 0xcc]
push eax
mov edx, esi
lea ecx, [ebp - 0xdc]
call fcn.100f6f50
add esp, 4
test al, al
je 0x101131e4
mov edx, esi
lea ecx, [ebp - 0xcc]
call fcn.100ee510
mov byte [ebp - 0x15], al
test al, al
je 0x101133d5
mov dword [edi + 0x1d94], 1
mov edi, dword [0x1078597c]
xor eax, eax
add edi, 0x1e64
mov edx, esi
cmp dword [edi], esi
mov esi, dword [ebp - 0x88]
mov ecx, esi
cmovne edi, eax
mov dword [ebp - 0x44], edi
call fcn.100ee760
mov edx, dword [ebp - 0x14]
mov byte [ebp - 0x33], al
test al, al
je 0x10113465
cmp dword [edx + 0x1c40], esi
jne 0x10113465
mov ecx, dword [edx + 0x1c48]
cmp ecx, dword [esi + 0x19c]
jne 0x10113465
mov byte [ebp - 0x1e], 1
mov byte [ebp - 0x32], 0
cmp byte [ebp - 0x15], 0
je 0x10113435
cmp byte [edx + 0x3e0], 0
mov byte [ebp - 0x1d], 1
jne 0x10113439
mov byte [ebp - 0x1d], 0
mov esi, dword [edx + 0x1a34]
mov eax, dword [ebp - 0x30]
cmp esi, eax
je 0x10113477
cmp dword [edx + 0x1b40], eax
je 0x1011345f
cmp dword [edx + 0x1b34], eax
jne 0x10113477
cmp dword [edx + 0x1b58], 3
jne 0x10113477
mov byte [ebp - 0x1f], 1
jmp 0x1011347b
mov byte [ebp - 0x1e], 0
test al, al
je 0x1011341e
mov byte [ebp - 0x32], 1
mov byte [ebp - 0x1e], 0
jmp 0x10113422
mov byte [ebp - 0x1f], 0
mov eax, dword [ebp - 0x3c]
test al, al
je 0x101134c0
test edi, edi
je 0x101134c0
test esi, esi
jne 0x101134c0
mov eax, dword [ebp - 0x5c]
xor edx, edx
mov ecx, dword [eax + 0xbc]
mov eax, dword [eax + 0xc4]
push dword [eax + ecx*4 - 4]
mov ecx, str.SCROLLY
call fcn.100eb890
mov ecx, dword [ebp - 0x14]
add esp, 4
cmp dword [ecx + 0x1a6c], eax
jne 0x101134bd
mov byte [ebp - 0x16], 1
jmp 0x101134d0
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 0x16], 0
test al, al
je 0x101134fa
mov byte [ebp - 0x16], 0
test edi, edi
je 0x101134fa
mov eax, dword [ebp - 0x5c]
mov ecx, str.SCROLLY
mov edx, dword [eax + 0xbc]
mov eax, dword [eax + 0xc4]
push dword [eax + edx*4 - 4]
xor edx, edx
call fcn.100eb890
add esp, 4
cmp esi, eax
jne 0x101134fa
mov al, 1
jmp 0x101134fc
xor al, al
mov cl, byte [ebp - 0x1f]
mov byte [ebp - 0x20], al
mov byte [ebp - 0x3d], 0
cmp esi, dword [ebp - 0x30]
je 0x10113520
mov edx, dword [ebx + 0x14]
test dl, dl
js 0x10113516
test cl, cl
je 0x10113520
cmp byte [ebp - 0x3c], 0
mov byte [ebp - 0x2c], 1
je 0x10113524
mov byte [ebp - 0x2c], 0
cmp byte [ebp - 0x33], 0
jne 0x10113549
cmp byte [ebp - 0x1d], 0
jne 0x10113549
cmp byte [ebp - 0x16], 0
jne 0x10113549
test cl, cl
jne 0x10113549
mov byte [ebp - 0x16], cl
test al, al
jne 0x1011354d
mov byte [ebp - 0x31], al
jmp 0x1011374d
mov byte [ebp - 0x16], 1
mov eax, dword [ebp - 0x30]
mov byte [ebp - 0x31], 1
mov dword [ebp - 0x44], edi
cmp esi, eax
je 0x10113750
mov edi, dword [ebp - 0x14]
mov ecx, dword [ebx + 8]
add edi, 0x1e64
mov dword [ebp - 0x44], edi
mov dword [edi + 0xe60], 0xbe99999a
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10113580
mov eax, dword [edi + 0x28]
sub ecx, edx
lea esi, [ecx + 1]
cmp esi, eax
jle 0x101135bd
test eax, eax
je 0x101135a6
cdq
sub eax, edx
lea edx, [edi + 0x24]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x101135ae
mov ecx, 8
lea edx, [edi + 0x24]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.100fd420
push esi
push dword [ebx + 8]
mov dword [edi + 0x24], esi
push dword [edi + 0x2c]
call fcn.1013a3a0
mov edx, dword [ebx + 0xc]
lea eax, [edi + 0xc]
mov esi, dword [eax + 4]
inc edx
add esp, 0xc
mov dword [ebp - 0x38], edx
cmp edx, esi
jle 0x1011360f
test esi, esi
je 0x101135f4
mov eax, esi
cdq
sub eax, edx
mov edx, dword [ebp - 0x38]
mov ecx, eax
sar ecx, 1
add ecx, esi
jmp 0x101135f9
mov ecx, 8
cmp ecx, edx
mov eax, edx
cmovg eax, ecx
lea ecx, [edi + 0xc]
push eax
call fcn.100fd4a0
mov edx, dword [ebp - 0x38]
lea eax, [edi + 0xc]
mov dword [eax], edx
mov ecx, dword [edi + 0x1c]
test ecx, ecx
jns 0x10113631
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
lea ecx, [edi + 0x18]
call fcn.100fd420
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 8]
dec ecx
mov dword [edi + 0x18], 0
mov edx, dword [edi + 0x14]
mov esi, edx
mov byte [edi + 0x30], 0
mov dword [ebp - 0x38], edx
lea ecx, [edx + ecx*2]
cmp edx, ecx
jae 0x1011368e
mov edi, eax
cmp byte [edi], 0
je 0x10113685
push 0
mov edx, edi
lea ecx, [ebp - 0x28]
call fcn.100ebb30
mov edx, dword [ebp - 0x38]
add edi, eax
mov eax, dword [ebp - 0x28]
add esp, 4
test eax, eax
je 0x10113685
mov word [esi], ax
add esi, 2
mov eax, dword [ebx + 0xc]
dec eax
lea eax, [edx + eax*2]
cmp esi, eax
jb 0x10113654
mov dword [ebp - 0x4c], edi
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x4c]
sub eax, dword [ebx + 8]
xor ecx, ecx
mov word [esi], cx
sub esi, edx
sar esi, 1
mov dword [edi + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [edi + 4], esi
cmp dword [edi], eax
jne 0x101136cb
cmp dword [edi + 0x3c], esi
mov ecx, esi
cmovl ecx, dword [edi + 0x3c]
cmp dword [edi + 0x40], esi
mov dword [edi + 0x3c], ecx
mov ecx, esi
cmovl ecx, dword [edi + 0x40]
cmp dword [edi + 0x44], esi
mov dword [edi + 0x40], ecx
cmovl esi, dword [edi + 0x44]
mov dword [edi + 0x44], esi
jmp 0x10113720
mov dword [edi], eax
mov dword [edi + 0x38], ecx
mov dword [edi + 0xe58], ecx
mov dword [edi + 0x40], ecx
mov dword [edi + 0x44], ecx
mov dword [edi + 0x3c], ecx
mov dword [edi + 0x50], ecx
mov ecx, dword [ebp - 0x3c]
mov al, cl
xor al, 1
mov dword [edi + 0xe52], 0x630000
mov dword [edi + 0xe5c], 0x3e7
mov dword [edi + 0x48], 0x10000
mov byte [edi + 0x4c], al
test cl, cl
jne 0x10113723
mov ecx, dword [ebp - 0x2c]
mov eax, 1
cmp byte [ebp - 0x1e], 0
movzx ecx, cl
cmovne ecx, eax
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x3c]
test dword [ebx + 0x14], 0x10000
je 0x10113730
mov byte [edi + 0x48], 1
test cl, cl
jne 0x1011374d
cmp byte [ebp - 0x32], cl
jne 0x10113749
cmp byte [ebp - 0x1d], cl
je 0x1011374d
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0x100], cl
je 0x1011374d
mov byte [ebp - 0x2c], 1
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp - 0x14]
cmp dword [esi + 0x1a34], eax
je 0x101137fe
cmp byte [ebp - 0x16], 0
je 0x101137fe
mov edx, dword [ebp - 0x88]
mov ecx, eax
call fcn.100ee430
mov ecx, dword [ebp - 0x30]
call fcn.100f9010
mov ecx, edx
call fcn.100f65a0
mov eax, dword [esi + 0x1a48]
mov edx, dword [ebx + 0x14]
or eax, 3
cmp byte [ebp - 0x3c], 0
mov dword [esi + 0x1a48], eax
jne 0x101137a5
test edx, 0x400
je 0x101137ae
or eax, 0xc
mov dword [esi + 0x1a48], eax
mov eax, dword [esi + 0x1a50]
or dword [esi + 0x1a4c], 2
or eax, 0x180
cmp byte [ebp - 0x3c], 0
mov ecx, dword [esi + 0x1a54]
mov dword [esi + 0x1a50], eax
mov dword [esi + 0x1a54], ecx
je 0x101137e7
or eax, 0x60
mov dword [esi + 0x1a54], ecx
mov dword [esi + 0x1a50], eax
test edx, 0x2200
je 0x101137fe
or eax, 1
mov dword [esi + 0x1a54], ecx
mov dword [esi + 0x1a50], eax
mov eax, dword [esi + 0x1a34]
mov ecx, dword [ebp - 0x30]
cmp eax, ecx
jne 0x10113842
test edi, edi
jne 0x10113825
xor edx, edx
xor ecx, ecx
call fcn.100ee430
mov eax, dword [esi + 0x1a34]
mov ecx, dword [ebp - 0x30]
cmp eax, ecx
jne 0x10113842
cmp byte [esi + 0x3e0], 0
je 0x1011384c
cmp byte [ebp - 0x31], 0
jne 0x1011384c
cmp byte [ebp - 0x16], 0
jne 0x1011384c
mov byte [ebp - 0x3d], 1
mov cl, 1
jmp 0x10113852
test edi, edi
je 0x10113850
cmp byte [ebp - 0x20], 0
je 0x10113850
mov cl, 1
jmp 0x10113852
xor cl, cl
mov byte [ebp - 0x1d], cl
test edi, edi
je 0x10113869
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x10113869
test cl, cl
je 0x10113869
mov al, 1
jmp 0x1011386b
xor al, al
mov edx, dword [ebp - 0x50]
mov byte [ebp - 0x21], al
mov byte [ebp - 0x33], 0
mov byte [ebp - 0x32], 0
test dl, dl
je 0x1011396c
test edi, edi
je 0x1011396c
test cl, cl
jne 0x10113895
test al, al
je 0x10113974
mov ecx, dword [ebx + 0xc]
mov eax, dword [edi + 0x10]
lea esi, [ecx + 1]
cmp esi, eax
jle 0x101138cf
test eax, eax
je 0x101138b5
cdq
sub eax, edx
lea edx, [edi + 0xc]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x101138bd
mov ecx, 8
lea edx, [edi + 0xc]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.100fd4a0
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 8]
mov dword [edi + 0xc], esi
mov edx, dword [edi + 0x14]
mov esi, edx
mov dword [ebp - 0x38], edx
lea ecx, [edx + ecx*2]
cmp edx, ecx
jae 0x1011391f
mov edi, eax
cmp byte [edi], 0
je 0x10113916
push 0
mov edx, edi
lea ecx, [ebp - 0x28]
call fcn.100ebb30
mov edx, dword [ebp - 0x38]
add edi, eax
mov eax, dword [ebp - 0x28]
add esp, 4
test eax, eax
je 0x10113916
mov ecx, dword [ebx + 0xc]
mov word [esi], ax
add esi, 2
lea eax, [edx + ecx*2]
cmp esi, eax
jb 0x101138e6
mov dword [ebp - 0x4c], edi
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x4c]
sub eax, dword [ebx + 8]
xor ecx, ecx
mov word [esi], cx
sub esi, edx
sar esi, 1
cmp dword [edi + 0x3c], esi
mov ecx, esi
mov edx, esi
mov dword [edi + 4], esi
cmovl ecx, dword [edi + 0x3c]
cmp dword [edi + 0x40], esi
mov dword [edi + 0x3c], ecx
cmovl edx, dword [edi + 0x40]
cmp dword [edi + 0x44], esi
mov dword [edi + 8], eax
cmovl esi, dword [edi + 0x44]
xor ecx, ecx
movzx eax, byte [ebp - 0x21]
cmp edx, esi
mov dword [edi + 0x40], edx
mov edx, dword [ebp - 0x50]
cmovne ecx, eax
mov al, cl
mov dword [edi + 0x44], esi
mov esi, dword [ebp - 0x14]
mov cl, byte [ebp - 0x1d]
mov byte [ebp - 0x21], al
test cl, cl
jne 0x1011397f
test al, al
jne 0x1011397f
mov eax, dword [ebp - 0x30]
cmp dword [esi + 0x1a34], eax
jne 0x10113990
test dl, dl
jne 0x10113990
test edi, edi
je 0x10113990
cmp byte [edi + 0x30], dl
je 0x10113990
mov al, 1
jmp 0x10113992
xor al, al
cmp dword [ebp - 0x58], 0
mov byte [ebp - 0x61], al
je 0x101139b0
test al, al
je 0x101139a4
mov eax, dword [edi + 0x20]
jmp 0x101139a7
mov eax, dword [ebx + 8]
cmp byte [eax], 0
jne 0x101139b0
mov al, 1
jmp 0x101139b2
xor al, al
cmp byte [ebp - 0xb4], 0
mov byte [ebp - 0x1e], al
je 0x10113ad4
test al, al
jne 0x10113ad4
mov edx, dword [esi + 0x18cc]
cmp dword [edx + 0x14], 0x2a
ja 0x101139db
mov esi, dword [edx + 0x2c]
jmp 0x101139fa
mov eax, dword [edx + 0x1c]
mov ecx, 0xffff
movzx eax, word [eax + 0x54]
cmp ax, cx
jne 0x101139f1
mov esi, dword [edx + 0x2c]
jmp 0x101139fa
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x28]
lea esi, [eax + ecx*8]
mov eax, dword [edx + 0x10]
mov edx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x14]
add edi, 0x2cd8
mov dword [ebp - 0x28], edi
mov dword [edi + 0x10], eax
mov eax, dword [edx + 0x18cc]
mov eax, dword [eax + 0x48]
mov dword [edi + 0x48], eax
mov eax, dword [edx + 0x18cc]
mov ecx, dword [eax + 0x30]
mov eax, dword [eax + 0x34]
mov dword [edi + 0x30], ecx
mov ecx, edi
mov dword [edi + 0x34], eax
mov eax, dword [edx + 0x18cc]
mov eax, dword [eax + 0x4c]
mov dword [edi + 0x4c], eax
mov eax, dword [edx + 0x18cc]
mov eax, dword [eax + 0x50]
mov dword [edi + 0x50], eax
mov eax, dword [edx + 0x18cc]
mov eax, dword [eax + 0x38]
mov dword [edi + 0x2c], esi
mov dword [edi + 0x38], eax
mov eax, dword [esi + 4]
mov esi, dword [0x1078597c]
mov dword [edi + 0xc], eax
call fcn.100f67e0
lea eax, [ebp - 0x28]
lea ecx, [esi + 0x1b04]
push eax
call fcn.100fd1d0
mov eax, dword [esi + 0x1a00]
mov ecx, dword [eax + 0x278]
mov eax, dword [edi + 0x38]
lea esi, [ecx + 0x4c]
mov edi, dword [esi + 4]
mov dword [ebp - 0x78], ecx
mov ecx, dword [esi]
mov eax, dword [eax + 8]
mov dword [ebp - 0x28], eax
cmp ecx, edi
jne 0x10113abe
inc ecx
test edi, edi
je 0x10113aaa
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10113aaf
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100fd130
mov ecx, dword [esi]
mov eax, dword [esi + 8]
mov edx, dword [ebp - 0x28]
mov dword [eax + ecx*4], edx
mov ecx, dword [ebp - 0x78]
inc dword [esi]
call fcn.10104f20
mov edi, dword [ebp - 0x44]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
movss xmm0, dword [ebp - 0xcc]
mov dword [ebp - 0x98], 0
movss dword [ebp - 0xb8], xmm0
cmp dword [edx + 0x1a34], eax
jne 0x10113f1f
mov eax, dword [edi + 8]
mov esi, dword [ebx + 0x14]
mov dword [edi + 0xe68], esi
mov dword [edi + 0xe6c], 0
mov dword [edi + 0xe70], 0
mov dword [ebp - 0x98], eax
mov eax, dword [ebx + 0xc]
mov dword [edi + 0x34], eax
cmp byte [edx + 0xf0], 0
mov dword [edx + 0x2fec], 1
sete al
cmp byte [ebp - 0x3c], 0
mov byte [edx + 0x1a41], al
movss xmm7, dword [edx + 0xe8]
subss xmm7, xmm0
subss xmm7, dword [edx + 0x1550]
addss xmm7, dword [edi + 0x38]
je 0x10113b82
mov eax, dword [ebp - 0x5c]
movss xmm2, dword [edx + 0xec]
subss xmm2, dword [eax + 0xcc]
subss xmm2, dword [edx + 0x1554]
jmp 0x10113b92
movss xmm2, dword [edx + 0x18d0]
mulss xmm2, dword [0x1074b800]
cmp byte [ebp - 0x2c], 0
mov cl, byte [edx + 0xb1]
mov byte [ebp - 0x16], cl
jne 0x10113d15
mov ah, byte [ebp - 0x15]
test ah, ah
je 0x10113bbe
mov al, byte [edx + 0x3e5]
test cl, cl
jne 0x10113c2c
test al, al
jne 0x10113d15
cmp byte [edx + 0x3e0], 0
mov al, byte [edi + 0xe65]
je 0x10113c84
test al, al
jne 0x10113c84
test ah, ah
je 0x10113d30
cmp byte [edi + 0x4c], al
je 0x10113c00
push 0
mov edx, edi
lea ecx, [ebp - 0xe4]
call fcn.101115e0
movss xmm2, dword [ebp - 0xd8]
add esp, 4
movaps xmm1, xmm7
mov ecx, edi
call fcn.101118f0
mov cl, byte [ebp - 0x16]
mov edx, dword [ebp - 0x14]
mov dword [edi + 0x3c], eax
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
mov byte [edi + 0x4b], 0
mov dword [edi + 0xe60], 0xbe99999a
jmp 0x10113d30
test al, al
je 0x10113bbe
push 0x20000c
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10111cd0
add esp, 4
mov byte [edi + 0xe64], 1
lea edx, [edi + 0x3c]
mov dword [edi + 0xe60], 0xbe99999a
mov ecx, edi
push 0x60000d
call fcn.10111cd0
mov cl, byte [ebp - 0x16]
add esp, 4
mov edx, dword [ebp - 0x14]
mov esi, dword [ebx + 0x14]
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
jmp 0x10113d30
cmp byte [edx + 0xf0], 0
je 0x10113d30
test al, al
jne 0x10113d30
movss xmm0, dword [edx + 0x378]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10113cbe
movss xmm0, dword [edx + 0x37c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10113d30
cmp byte [edi + 0x4c], 0
je 0x10113cde
push 0
mov edx, edi
lea ecx, [ebp - 0xe4]
call fcn.101115e0
movss xmm2, dword [ebp - 0xd8]
add esp, 4
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x10113cec
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x40], eax
movaps xmm1, xmm7
mov ecx, edi
call fcn.101118f0
mov cl, byte [ebp - 0x16]
mov edx, dword [ebp - 0x14]
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov dword [edi + 0xe60], 0xbe99999a
mov byte [edi + 0xe64], 1
jmp 0x10113d30
mov eax, dword [edi + 4]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
mov byte [edi + 0xe65], 1
cmp byte [edi + 0xe65], 0
je 0x10113d49
cmp byte [edx + 0xf0], 0
jne 0x10113d49
mov byte [edi + 0xe65], 0
cmp byte [edx + 0x100], 0
je 0x10113d5b
cmp byte [edx + 0x102], 0
je 0x10113d68
test cl, cl
je 0x10113d6e
cmp byte [edx + 0x103], 0
je 0x10113d6e
mov byte [ebp - 0x15], 1
jmp 0x10113d72
mov byte [ebp - 0x15], 0
test esi, 0x2000
je 0x10113f01
mov ecx, dword [0x1078597c]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ecx + 0x34]
test eax, eax
js 0x10113e36
mov ecx, eax
call fcn.100f1510
mov edx, dword [ebp - 0x14]
test al, al
mov al, byte [ebp - 0x15]
je 0x10113f17
test al, al
jne 0x10113f17
cmp byte [edx + 0x101], al
jne 0x10113f17
cmp byte [ebp - 0x50], al
jne 0x10113f17
mov ecx, dword [edx + 0x1514]
mov eax, dword [edx + 0x150c]
lea edx, [ecx + eax*2]
cmp ecx, edx
jae 0x10113dea
movzx eax, word [ecx]
add ecx, 2
cmp eax, 9
je 0x10113f0f
cmp ecx, edx
jb 0x10113dd7
sub esp, 8
mov dword [ebp - 0x38], 9
mov edx, esi
lea ecx, [ebp - 0x38]
call fcn.10112cf0
add esp, 8
test al, al
je 0x10113efe
push dword [ebp - 0x38]
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10111cd0
mov ecx, dword [0x1078597c]
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x14]
mov al, byte [ebp - 0x15]
cmp dword [edx + 0x150c], 0
lea esi, [edx + 0x150c]
mov dword [ebp - 0x28], esi
jle 0x10113f28
test al, al
jne 0x10113ecc
cmp byte [ebp - 0x50], al
jne 0x10113ecc
cmp byte [ebp - 0x1f], al
jne 0x10113ecc
xor esi, esi
mov eax, dword [edx + 0x1514]
movzx eax, word [eax + esi*2]
mov dword [ebp - 0x38], eax
cmp eax, 9
jne 0x10113e7e
cmp byte [edx + 0x101], 0
jne 0x10113eb7
mov edx, dword [ebx + 0x14]
lea ecx, [ebp - 0x38]
sub esp, 8
call fcn.10112cf0
add esp, 8
test al, al
je 0x10113eb4
push dword [ebp - 0x38]
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10111cd0
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
mov edx, dword [ebp - 0x14]
inc esi
cmp esi, dword [edx + 0x150c]
jl 0x10113e63
mov ecx, dword [0x1078597c]
mov esi, dword [ebp - 0x28]
mov dword [ebp - 0x1c], ecx
mov eax, dword [esi + 4]
test eax, eax
jns 0x10113ef6
cdq
xor ecx, ecx
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
test eax, eax
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.100fd4a0
mov ecx, dword [0x1078597c]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x1c], ecx
mov dword [esi], 0
jmp 0x10113f28
mov edx, dword [ebp - 0x14]
mov ecx, dword [0x1078597c]
mov dword [ebp - 0x1c], ecx
jmp 0x10113e36
mov ecx, dword [ebp - 0x1c]
jmp 0x10113e33
mov ecx, dword [ebp - 0x1c]
jmp 0x10113e39
mov ecx, dword [0x1078597c]
mov dword [ebp - 0x1c], ecx
mov eax, dword [edx + 0x1a34]
mov byte [ebp - 0x60], 0
cmp eax, dword [ebp - 0x30]
jne 0x101147f5
cmp byte [edx + 0x1a40], 0
jne 0x10114800
cmp byte [ebp - 0x3d], 0
jne 0x10114800
xor esi, esi
mov eax, 0x400000
cmp byte [edx + 0x101], 0
mov dl, byte [edx + 0xb1]
cmovne esi, eax
mov byte [ebp - 0x99], dl
mov eax, dword [ebp - 0x14]
test dl, dl
je 0x10113f8d
cmp dword [eax + 0x380], 0xa
jne 0x10113f8d
mov eax, 0xa
mov byte [ebp - 0x20], 1
mov dword [ebp - 0x2c], eax
jmp 0x10113f9e
mov eax, dword [eax + 0x380]
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x20], 0
test dl, dl
je 0x10113fd2
mov edx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x14]
mov dl, byte [edx + 0x102]
cmp byte [edi + 0x103], 0
mov edi, dword [ebp - 0x44]
mov byte [ebp - 0x16], dl
je 0x10113fe5
mov ecx, dword [ebp - 0x14]
cmp byte [ecx + 0x100], 0
mov ecx, dword [ebp - 0x1c]
jne 0x10113fe5
test dl, dl
jne 0x10113fe5
mov byte [ebp - 0x1f], 1
jmp 0x10113fe9
mov edx, dword [ebp - 0x14]
mov byte [ebp - 0x20], 0
mov dword [ebp - 0x2c], eax
mov dl, byte [edx + 0x100]
mov byte [ebp - 0x16], dl
mov byte [ebp - 0x1f], 0
mov edx, dword [ebp - 0x14]
cmp byte [edx + 0xb1], 0
je 0x10113ffa
cmp eax, 8
jmp 0x10113ffd
cmp eax, 1
sete dl
mov byte [ebp - 0x15], dl
test dl, dl
je 0x10114022
mov edx, dword [ecx + 0x80]
test edx, edx
js 0x10114022
mov ecx, edx
call fcn.100f1510
test al, al
jne 0x10114037
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
cmp eax, 2
jne 0x1011405a
mov ecx, dword [ecx + 0x5c]
test ecx, ecx
js 0x1011405a
call fcn.100f1510
test al, al
je 0x1011405a
cmp byte [ebp - 0x50], 0
jne 0x1011405a
cmp byte [ebp - 0xb4], 0
jne 0x1011405a
cmp byte [ebp - 0x3c], 0
je 0x10114054
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x1011405a
mov byte [ebp - 0x31], 1
jmp 0x1011405e
mov byte [ebp - 0x31], 0
cmp byte [ebp - 0x15], 0
mov eax, dword [ebp - 0x1c]
je 0x1011407a
mov ecx, dword [eax + 0x78]
test ecx, ecx
js 0x1011407a
call fcn.100f1510
test al, al
jne 0x10114090
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x2c], 1
jne 0x101140ad
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x101140ad
call fcn.100f1510
test al, al
je 0x101140ad
cmp byte [ebp - 0xb4], 0
jne 0x101140ad
cmp byte [ebp - 0x3c], 0
je 0x101140a7
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x101140ad
mov byte [ebp - 0x5e], 1
jmp 0x101140b1
mov byte [ebp - 0x5e], 0
cmp byte [ebp - 0x15], 0
mov eax, dword [ebp - 0x1c]
je 0x101140cd
mov ecx, dword [eax + 0x7c]
test ecx, ecx
js 0x101140cd
call fcn.100f1510
test al, al
jne 0x101140e3
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x2c], 2
jne 0x101140ed
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x101140ed
call fcn.100f1510
test al, al
je 0x101140ed
cmp byte [ebp - 0x50], 0
mov byte [ebp - 0x5f], 1
je 0x101140f1
mov byte [ebp - 0x5f], 0
mov dl, byte [ebp - 0x15]
test dl, dl
je 0x10114123
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x10114123
call fcn.100f1510
test al, al
je 0x10114120
cmp byte [ebp - 0x50], 0
jne 0x10114120
cmp byte [ebp - 0x54], 0
je 0x10114120
mov byte [ebp - 0x5d], 1
jmp 0x1011412b
mov dl, byte [ebp - 0x15]
mov byte [ebp - 0x5d], 0
test dl, dl
je 0x10114141
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x84]
test ecx, ecx
js 0x10114144
call fcn.100f1510
test al, al
jne 0x1011415d
mov eax, dword [ebp - 0x1c]
cmp byte [ebp - 0x20], 0
je 0x1011416d
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x1011416d
call fcn.100f1510
test al, al
je 0x1011416d
cmp byte [ebp - 0x50], 0
jne 0x1011416d
cmp byte [ebp - 0x54], 0
mov byte [ebp - 0x20], 1
jne 0x10114171
mov byte [ebp - 0x20], 0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x38]
test ecx, ecx
js 0x101141d4
call fcn.100f1510
test al, al
je 0x101141d1
cmp byte [ebp - 0x1f], 0
je 0x10114191
mov eax, 0x200004
jmp 0x101141a2
cmp byte [ebp - 0x16], 0
mov eax, 0x200000
mov ecx, 0x20000c
cmovne eax, ecx
or eax, esi
push eax
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10111cd0
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
mov ecx, dword [0x1078597c]
mov dword [ebp - 0x1c], ecx
jmp 0x101147d5
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
js 0x10114220
call fcn.100f1510
test al, al
je 0x1011421d
cmp byte [ebp - 0x1f], 0
je 0x101141f1
mov eax, 0x200005
jmp 0x10114202
cmp byte [ebp - 0x16], 0
mov eax, 0x200001
mov ecx, 0x20000d
cmovne eax, ecx
or eax, esi
lea edx, [edi + 0x3c]
push eax
mov ecx, edi
call fcn.10111cd0
mov ecx, dword [0x1078597c]
mov dword [ebp - 0x1c], ecx
jmp 0x101147c1
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x1011427e
call fcn.100f1510
test al, al
je 0x1011427b
cmp byte [ebp - 0x3c], 0
je 0x1011427b
mov edx, dword [ebp - 0x14]
cmp byte [edx + 0x100], 0
je 0x1011426b
mov ecx, dword [ebp - 0x5c]
movss xmm0, dword [ecx + 0x54]
subss xmm0, dword [edx + 0x18d0]
mov dword [ecx + 0x6c], 0
maxss xmm0, dword [0x1074b780]
movss dword [ecx + 0x64], xmm0
jmp 0x101147d8
movzx eax, byte [ebp - 0x1f]
lea eax, [eax*4 + 0x200002]
jmp 0x101141a2
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x44]
test ecx, ecx
js 0x101142e2
call fcn.100f1510
test al, al
je 0x101142df
cmp byte [ebp - 0x3c], 0
je 0x101142df
mov edx, dword [ebp - 0x14]
cmp byte [edx + 0x100], 0
je 0x101142cf
mov ecx, dword [ebp - 0x1c]
movss xmm0, dword [edx + 0x18d0]
mov eax, dword [ecx + 0x1a00]
mov ecx, dword [ebp - 0x5c]
addss xmm0, dword [ecx + 0x54]
minss xmm0, dword [eax + 0x5c]
mov dword [ecx + 0x6c], 0
movss dword [ecx + 0x64], xmm0
jmp 0x101147d8
movzx eax, byte [ebp - 0x1f]
lea eax, [eax*4 + 0x200003]
jmp 0x101141a2
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x50]
test ecx, ecx
js 0x10114315
call fcn.100f1510
test al, al
je 0x10114312
mov ecx, dword [ebp - 0x14]
mov eax, esi
or eax, 0x200006
or esi, 0x200004
cmp byte [ecx + 0x100], 0
cmovne esi, eax
push esi
jmp 0x101141a5
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x54]
test ecx, ecx
js 0x10114348
call fcn.100f1510
test al, al
je 0x10114345
mov ecx, dword [ebp - 0x14]
mov eax, esi
or eax, 0x200007
or esi, 0x200005
cmp byte [ecx + 0x100], 0
cmovne esi, eax
push esi
jmp 0x101141a5
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x1011436d
call fcn.100f1510
test al, al
je 0x1011436a
cmp byte [ebp - 0x50], 0
jne 0x1011436a
or esi, 0x200008
push esi
jmp 0x101141a5
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x60]
test ecx, ecx
js 0x101143f2
call fcn.100f1510
test al, al
je 0x101143f2
cmp byte [ebp - 0x50], 0
jne 0x101143f2
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x101143e6
cmp byte [ebp - 0x16], 0
je 0x1011439c
push 0x60000c
jmp 0x101143c8
cmp byte [ebp - 0x99], 0
je 0x101143e6
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0x103], 0
je 0x101143e6
cmp byte [eax + 0x102], 0
jne 0x101143e6
cmp byte [eax + 0x100], 0
jne 0x101143e6
push 0x600004
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10111cd0
mov dword [edi + 0xe60], 0xbe99999a
add esp, 4
mov byte [edi + 0xe64], 1
or esi, 0x200009
push esi
jmp 0x101141a5
mov esi, dword [ebp - 0x1c]
mov ecx, dword [esi + 0x68]
test ecx, ecx
js 0x10114405
call fcn.100f1510
test al, al
jne 0x10114415
mov ecx, dword [esi + 0x70]
test ecx, ecx
js 0x10114478
call fcn.100f1510
test al, al
je 0x10114478
mov esi, dword [ebx + 0x14]
mov eax, esi
mov edx, dword [ebp - 0x14]
shr eax, 0xe
and al, 1
cmp byte [ebp - 0x3c], 0
je 0x10114436
mov cl, byte [edx + 0x100]
test al, al
je 0x10114443
test cl, cl
jne 0x10114447
mov byte [ebp - 0x3d], 1
mov byte [ebp - 0x32], 1
jmp 0x101147d8
test cl, cl
jne 0x10114436
cmp byte [ebp - 0x50], 0
jne 0x101147d8
sub esp, 8
mov dword [ebp - 0x38], 0xa
mov edx, esi
lea ecx, [ebp - 0x38]
call fcn.10112cf0
add esp, 8
test al, al
je 0x101141c3
push dword [ebp - 0x38]
jmp 0x101141a5
mov ecx, dword [esi + 0x6c]
test ecx, ecx
js 0x10114495
call fcn.100f1510
test al, al
je 0x10114495
mov byte [ebp - 0x60], 1
mov byte [ebp - 0x3d], 1
jmp 0x101147d5
mov al, byte [ebp - 0x5d]
test al, al
jne 0x1011479a
cmp byte [ebp - 0x20], al
jne 0x1011479a
cmp byte [ebp - 0x15], al
je 0x101144d7
mov ecx, dword [esi + 0x74]
test ecx, ecx
js 0x101144d7
call fcn.100f1510
test al, al
je 0x101144d7
mov eax, dword [edi + 4]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
jmp 0x101147ce
mov al, byte [ebp - 0x31]
test al, al
jne 0x10114683
cmp byte [ebp - 0x5e], al
jne 0x10114683
cmp byte [ebp - 0x5f], al
je 0x101147d5
mov eax, dword [esi + 0xd0]
test eax, eax
je 0x1011451b
push dword [esi + 0xd8]
call eax
mov esi, eax
add esp, 4
test esi, esi
je 0x101141c3
mov edx, dword [0x1078597c]
jmp 0x10114523
mov edx, dword [ebp - 0x1c]
mov esi, 0x10744e17
mov ecx, esi
lea eax, [ecx + 1]
mov dword [ebp - 0x28], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10114530
sub ecx, dword [ebp - 0x28]
test edx, edx
je 0x10114544
inc dword [edx + 0x374]
push dword [0x10785978]
lea eax, [ecx*2 + 2]
push eax
call fcn.100eacb0
mov ecx, eax
add esp, 8
xor eax, eax
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x2c], eax
cmp byte [esi], al
je 0x101145b9
xor edi, edi
nop word [eax + eax]
push 0
mov edx, esi
lea ecx, [ebp - 0x4c]
call fcn.100ebb30
add esp, 4
add esi, eax
cmp dword [ebp - 0x4c], 0
je 0x101145ad
mov edx, dword [ebx + 0x14]
lea ecx, [ebp - 0x4c]
sub esp, 8
call fcn.10112cf0
add esp, 8
test al, al
je 0x101145a8
mov ecx, dword [ebp - 0x74]
mov ax, word [ebp - 0x4c]
mov word [ecx + edi*2], ax
inc edi
cmp byte [esi], 0
jne 0x10114570
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0x2c], edi
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov word [ecx + eax*2], dx
test eax, eax
jle 0x10114653
mov edx, dword [edi + 0x44]
mov ecx, dword [edi + 0x40]
mov eax, dword [edi + 4]
cmp ecx, edx
je 0x101145ed
cmp ecx, eax
jle 0x101145dd
mov dword [edi + 0x40], eax
mov ecx, eax
cmp edx, eax
jle 0x101145e6
mov dword [edi + 0x44], eax
mov edx, eax
cmp ecx, edx
jne 0x101145ed
mov dword [edi + 0x3c], ecx
cmp dword [edi + 0x3c], eax
jle 0x101145f5
mov dword [edi + 0x3c], eax
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10111c40
push dword [ebp - 0x2c]
mov edx, dword [edi + 0x3c]
mov ecx, edi
push dword [ebp - 0x74]
call fcn.101117c0
add esp, 8
test al, al
je 0x10114635
push dword [ebp - 0x2c]
mov edx, dword [edi + 0x3c]
lea ecx, [edi + 0x54]
push 0
call fcn.101129d0
mov eax, dword [ebp - 0x2c]
add esp, 8
add dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
jmp 0x10114649
movzx eax, word [edi + 0xe52]
test ax, ax
je 0x10114649
dec eax
mov word [edi + 0xe52], ax
mov ecx, dword [ebp - 0x74]
mov byte [edi + 0xe64], 1
test ecx, ecx
je 0x10114666
mov eax, dword [0x1078597c]
test eax, eax
je 0x10114666
dec dword [eax + 0x374]
push dword [0x10785978]
push ecx
call fcn.100eacc0
mov ecx, dword [0x1078597c]
add esp, 8
mov dword [ebp - 0x1c], ecx
jmp 0x101147d5
mov edx, dword [ebp - 0x14]
cmp dword [edx + 0xd4], 0
je 0x1011474e
mov ecx, dword [edi + 0x44]
mov eax, dword [edi + 0x40]
cmp eax, ecx
je 0x101146a7
mov edx, ecx
cmovl ecx, eax
cmovge edx, eax
jmp 0x101146ac
mov edx, dword [edi + 4]
xor ecx, ecx
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x38], edx
lea edx, [eax + edx*2]
lea ecx, [eax + ecx*2]
call fcn.100ebe70
inc eax
mov dword [ebp - 0x28], eax
test esi, esi
je 0x101146d1
inc dword [esi + 0x374]
push dword [0x10785978]
push eax
call fcn.100eacb0
mov esi, dword [edi + 0x14]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0x78], eax
lea ecx, [esi + ecx*2]
push ecx
mov ecx, dword [ebp - 0x88]
lea ecx, [esi + ecx*2]
mov esi, eax
push ecx
mov ecx, esi
call fcn.100ebda0
mov eax, dword [0x1078597c]
add esp, 0x10
mov ecx, dword [eax + 0xd4]
test ecx, ecx
je 0x10114723
push esi
push dword [eax + 0xd8]
call ecx
mov eax, dword [0x1078597c]
add esp, 8
test esi, esi
je 0x10114731
test eax, eax
je 0x10114731
dec dword [eax + 0x374]
push dword [0x10785978]
push esi
call fcn.100eacc0
mov eax, dword [0x1078597c]
add esp, 8
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
mov al, byte [ebp - 0x31]
test al, al
je 0x101147d8
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x10114772
mov eax, dword [edi + 4]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
mov byte [edi + 0xe64], 1
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x101147d8
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.10111c40
mov ecx, dword [0x1078597c]
mov byte [edi + 0x4b], 0
mov dword [ebp - 0x1c], ecx
jmp 0x101147d5
movzx eax, al
lea edx, [edi + 0x3c]
xor eax, 1
mov ecx, edi
add eax, 0x20000a
push eax
call fcn.10111cd0
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x44], eax
mov dword [edi + 0x40], eax
mov eax, dword [0x1078597c]
mov dword [ebp - 0x1c], eax
mov dword [edi + 0xe60], 0xbe99999a
add esp, 4
mov byte [edi + 0xe64], 1
mov edx, dword [ebp - 0x14]
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x101147ea
cmp byte [ebp - 0x1d], 0
je 0x101147ea
mov al, 1
jmp 0x101147ec
xor al, al
or byte [ebp - 0x21], al
mov eax, dword [edx + 0x1a34]
mov ecx, dword [ebp - 0x30]
cmp eax, ecx
jne 0x10114dc2
cmp byte [ebp - 0x60], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x48], 0
je 0x10114a31
cmp byte [ebp - 0x50], 0
jne 0x10114971
mov esi, dword [edi + 0x2c]
mov ecx, esi
mov eax, dword [ebx + 8]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10114850
test dl, dl
je 0x1011484c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10114850
add eax, 2
add ecx, 2
test dl, dl
jne 0x10114830
xor eax, eax
jmp 0x10114855
sbb eax, eax
or eax, 1
test eax, eax
je 0x10114971
mov eax, dword [edi + 0x24]
mov ecx, esi
xor esi, esi
mov dword [ebp - 0x2c], ecx
dec eax
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x7c], esi
mov dword [ebp - 4], esi
test eax, eax
jle 0x101148c8
lea edx, [ecx + eax]
call fcn.100ebd60
lea esi, [eax + 1]
test esi, esi
jle 0x101148a9
mov ecx, 8
mov eax, esi
cmp esi, ecx
cmovl eax, ecx
lea ecx, [ebp - 0x84]
push eax
call fcn.100fd4a0
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x7c]
add eax, edx
push 0
push eax
push edx
mov edx, esi
mov dword [ebp - 0x84], esi
call fcn.100ebcf0
add esp, 0xc
xor ecx, ecx
lea eax, [esi - 1]
cmp dword [ebp - 0x48], ecx
mov esi, dword [edi + 4]
cmovle eax, ecx
lea ecx, [edi + 0x54]
push eax
push esi
xor edx, edx
mov dword [ebp - 0x28], eax
call fcn.101129d0
mov edx, eax
add esp, 8
test edx, edx
je 0x10114904
xor ecx, ecx
test esi, esi
jle 0x10114904
mov eax, dword [edi + 0x14]
mov ax, word [eax + ecx*2]
mov word [edx + ecx*2], ax
inc ecx
cmp ecx, esi
jl 0x101148f4
push dword [edi + 4]
xor edx, edx
mov ecx, edi
call fcn.10111760
mov esi, dword [ebp - 0x28]
add esp, 4
test esi, esi
jle 0x10114935
push esi
push dword [ebp - 0x7c]
xor edx, edx
mov ecx, edi
call fcn.101117c0
add esp, 8
test al, al
je 0x10114935
mov dword [edi + 0x3c], esi
mov byte [edi + 0x4b], 0
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x10114962
mov ecx, dword [0x1078597c]
test ecx, ecx
je 0x10114953
dec dword [ecx + 0x374]
push dword [0x10785978]
push eax
call fcn.100eacc0
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x1078597c]
mov dword [ebp - 0x1c], eax
cmp byte [ebp - 0x32], 0
mov eax, dword [ebx + 0x14]
je 0x10114985
test eax, 0x100
jne 0x10114a34
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x10114da1
cmp byte [ebp - 0x94], 0
je 0x10114d6b
mov dword [ebp - 0x148], eax
xorps xmm0, xmm0
mov eax, dword [ebx + 8]
mov dword [ebp - 0x138], eax
lea eax, [ecx + 1]
cmp dword [ebx + 0xc], eax
movlpd qword [ebp - 0x140], xmm0
cmovge eax, dword [ebx + 0xc]
mov dword [ebp - 0x130], eax
lea eax, [ebp - 0x14c]
push eax
xor eax, eax
movlpd qword [ebp - 0x12c], xmm0
movlpd qword [ebp - 0x124], xmm0
mov dword [ebp - 0x14c], 0x200000
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x144], 0
call eax
mov esi, dword [ebp - 0x130]
add esp, 4
mov eax, dword [ebp - 0x138]
mov edx, dword [ebp - 0x2c]
mov dword [ebx + 8], eax
mov eax, dword [0x1078597c]
lea ecx, [esi - 1]
cmp dword [ebp - 0x134], ecx
mov dword [ebp - 0x1c], eax
cmovl ecx, dword [ebp - 0x134]
jmp 0x10114d6e
mov eax, dword [ebx + 0x14]
cmp byte [ebp - 0x50], 0
jne 0x10114a9e
mov eax, dword [edi + 0xc]
lea ecx, [edi + 0x18]
mov byte [edi + 0x30], 1
lea esi, [eax*4 + 1]
mov eax, dword [ecx + 4]
cmp esi, eax
jle 0x10114a87
test eax, eax
je 0x10114a65
cdq
sub eax, edx
lea edx, [edi + 0x18]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x10114a6d
mov ecx, 8
lea edx, [edi + 0x18]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.100fd420
mov eax, dword [0x1078597c]
lea ecx, [edi + 0x18]
mov dword [ebp - 0x1c], eax
mov dword [ecx], esi
mov edx, esi
mov ecx, dword [edi + 0x20]
push 0
push dword [edi + 0x14]
call fcn.100ebda0
mov eax, dword [ebx + 0x14]
add esp, 8
test eax, 0xe00
je 0x10114d18
mov esi, dword [ebp - 0x1c]
test eax, 0x200
je 0x10114acf
mov ecx, dword [esi + 0x34]
test ecx, ecx
js 0x10114acf
call fcn.100f1510
test al, al
je 0x10114acc
mov eax, 0x200
xor ecx, ecx
jmp 0x10114b29
mov eax, dword [ebx + 0x14]
test eax, 0x400
je 0x10114b14
mov ecx, dword [esi + 0x40]
test ecx, ecx
js 0x10114af5
call fcn.100f1510
test al, al
je 0x10114af2
mov eax, 0x400
mov ecx, 3
jmp 0x10114b29
mov eax, dword [ebx + 0x14]
mov ecx, dword [esi + 0x44]
test ecx, ecx
js 0x10114b14
call fcn.100f1510
test al, al
je 0x10114b11
mov eax, 0x400
mov ecx, 4
jmp 0x10114b29
mov eax, dword [ebx + 0x14]
test eax, 0x800
je 0x10114d18
mov eax, 0x800
mov ecx, 0x16
mov esi, dword [edi + 0x14]
xor edx, edx
mov dword [ebp - 0x11c], eax
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0x118], eax
mov eax, dword [edi + 0x20]
mov dword [ebp - 0x108], eax
mov eax, dword [edi + 8]
mov dword [ebp - 0x104], eax
mov eax, dword [edi + 0x34]
mov dword [ebp - 0x100], eax
mov eax, dword [edi + 0x3c]
mov word [ebp - 0xfb], dx
mov byte [ebp - 0xf9], dl
mov dword [ebp - 0x114], edx
mov dword [ebp - 0x10c], ecx
mov ecx, esi
mov byte [ebp - 0xfc], dl
lea edx, [esi + eax*2]
mov dword [ebp - 0x110], 0
call fcn.100ebe70
mov ecx, dword [ebp - 0x44]
mov edi, eax
mov dword [ebp - 0xf8], edi
mov ecx, dword [ecx + 0x40]
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.100ebe70
mov dword [ebp - 0x28], eax
mov ecx, esi
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0x44]
mov edx, dword [eax + 0x44]
lea edx, [esi + edx*2]
call fcn.100ebe70
mov dword [ebp - 0x78], eax
mov dword [ebp - 0xf0], eax
lea eax, [ebp - 0x11c]
push eax
xor eax, eax
call eax
mov edx, dword [ebp - 0xf8]
add esp, 4
cmp edx, edi
je 0x10114bfc
mov ecx, dword [ebp - 0x108]
add edx, ecx
call fcn.100ebd60
mov esi, dword [ebp - 0x44]
mov dword [esi + 0x3c], eax
mov byte [esi + 0xe64], 1
jmp 0x10114bff
mov esi, dword [ebp - 0x44]
mov eax, dword [ebp - 0xf4]
cmp eax, dword [ebp - 0x28]
je 0x10114c1b
mov ecx, dword [ebp - 0x108]
lea edx, [eax + ecx]
call fcn.100ebd60
mov dword [esi + 0x40], eax
mov eax, dword [ebp - 0xf0]
cmp eax, dword [ebp - 0x78]
je 0x10114c37
mov ecx, dword [ebp - 0x108]
lea edx, [eax + ecx]
call fcn.100ebd60
mov dword [esi + 0x44], eax
cmp byte [ebp - 0xfc], 0
je 0x10114d0d
mov ecx, dword [ebp - 0x104]
mov edx, dword [ebp - 0x98]
cmp ecx, edx
jle 0x10114c98
cmp byte [ebp - 0x94], 0
je 0x10114c98
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0x10]
sub edi, edx
add edi, ecx
cmp edi, eax
jle 0x10114c95
test eax, eax
je 0x10114c7e
cdq
sub eax, edx
lea edx, [esi + 0xc]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x10114c86
mov ecx, 8
lea edx, [esi + 0xc]
cmp ecx, edi
mov eax, edi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.100fd4a0
mov dword [esi + 0xc], edi
mov eax, dword [ebp - 0x108]
mov ecx, dword [esi + 0x14]
mov edi, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [esi + 0xc]
dec eax
mov dword [ebp - 0x38], ecx
lea eax, [ecx + eax*2]
mov dword [ebp - 0x78], eax
cmp ecx, eax
jae 0x10114cee
mov esi, dword [ebp - 0x28]
nop word [eax + eax]
cmp byte [esi], 0
je 0x10114ce8
push 0
mov edx, esi
lea ecx, [ebp - 0x28]
call fcn.100ebb30
add esi, eax
add esp, 4
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x10114ce8
mov word [edi], ax
add edi, 2
cmp edi, dword [ebp - 0x78]
jb 0x10114cc0
mov esi, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x38]
xor eax, eax
mov word [edi], ax
sub edi, ecx
mov eax, dword [ebp - 0x104]
sar edi, 1
mov dword [esi + 4], edi
mov dword [esi + 8], eax
mov dword [esi + 0xe60], 0xbe99999a
mov eax, dword [0x1078597c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x14]
cmp byte [ebp - 0x50], 0
mov edi, dword [ebp - 0x44]
jne 0x10114985
mov esi, dword [edi + 0x20]
mov eax, esi
mov ecx, dword [ebx + 8]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10114d50
test dl, dl
je 0x10114d4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10114d50
add eax, 2
add ecx, 2
test dl, dl
jne 0x10114d30
xor eax, eax
jmp 0x10114d55
sbb eax, eax
or eax, 1
test eax, eax
mov eax, dword [ebx + 0x14]
je 0x10114985
mov ecx, dword [edi + 8]
mov dword [ebp - 0x2c], esi
jmp 0x10114988
mov esi, dword [ebx + 0xc]
lea eax, [ecx + 1]
cmp eax, esi
cmovl esi, eax
cmp esi, 1
jb 0x10114d9d
jbe 0x10114d95
lea eax, [esi - 1]
push eax
push edx
push dword [ebx + 8]
call fcn.10141740
mov eax, dword [0x1078597c]
add esp, 0xc
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 8]
mov byte [esi + eax - 1], 0
mov byte [ebp - 0x33], 1
mov ecx, dword [ebp - 0x30]
mov dword [edi + 0xe68], 0
mov dword [edi + 0xe6c], 0
mov dword [edi + 0xe70], 0
cmp byte [ebp - 0x3d], 0
mov eax, dword [ebp - 0x14]
je 0x10114ddf
cmp dword [eax + 0x1a34], ecx
jne 0x10114ddf
xor edx, edx
xor ecx, ecx
call fcn.100ee430
mov eax, dword [ebp - 0x14]
cmp byte [ebp - 0x3c], 0
jne 0x10114ef0
mov edx, dword [ebp - 0x30]
lea ecx, [ebp - 0xcc]
push 1
call fcn.100ed400
mov eax, dword [ebp - 0x14]
add esp, 4
movss xmm1, dword [0x1074b838]
mov ecx, 7
movss xmm0, dword [eax + 0x1558]
movss dword [ebp - 0x28], xmm0
call fcn.100ec490
movss xmm0, dword [ebp - 0xc4]
sub esp, 8
movss xmm2, dword [ebp - 0x28]
mov ecx, esp
mov esi, eax
sub esp, 8
mov eax, esp
mov dl, 1
movss dword [ecx], xmm0
movss xmm0, dword [ebp - 0xc0]
movss dword [ecx + 4], xmm0
mov ecx, esi
movss xmm0, dword [ebp - 0xcc]
movss dword [ebp - 0xb8], xmm0
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0xc8]
movss dword [eax + 4], xmm0
call fcn.100ed0a0
movss xmm2, dword [ebp - 0xc8]
add esp, 0x10
movss xmm4, dword [ebp - 0xcc]
movaps xmm7, xmm2
addss xmm7, dword [ebp - 0x6c]
movss xmm3, dword [ebp - 0x90]
movaps xmm0, xmm4
mov eax, dword [ebp - 0x14]
movaps xmm1, xmm3
mov esi, dword [0x1078597c]
addss xmm1, xmm4
movss dword [ebp - 0xb0], xmm4
movss dword [ebp - 0x94], xmm7
addss xmm0, dword [eax + 0x1550]
movss dword [ebp - 0xa4], xmm7
movaps xmm7, xmm2
addss xmm7, dword [eax + 0x1554]
movss dword [ebp - 0xac], xmm2
movss dword [ebp - 0x98], xmm1
movss dword [ebp - 0xa8], xmm1
mov dword [ebp - 0x1c], esi
jmp 0x10114f5a
movss xmm0, dword [ebp - 0xc8]
movss xmm3, dword [ebp - 0x90]
movss xmm1, dword [ebp - 0xcc]
movaps xmm7, xmm3
mov ecx, dword [ebp - 0x5c]
addss xmm7, xmm1
mov esi, dword [ebp - 0x1c]
movss dword [ebp - 0xac], xmm0
addss xmm0, dword [ebp - 0x6c]
movss dword [ebp - 0xb0], xmm1
movss dword [ebp - 0xa8], xmm7
movss dword [ebp - 0x98], xmm7
movss dword [ebp - 0xa4], xmm0
movss xmm7, dword [ecx + 0xcc]
movss dword [ebp - 0x94], xmm0
movss xmm0, dword [ecx + 0xc8]
cmp byte [ebp - 0x61], 0
xorps xmm1, xmm1
movss dword [ebp - 0x74], xmm0
movss dword [ebp - 0x80], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x68], xmm7
movss dword [ebp - 0x7c], xmm7
movss dword [ebp - 0x88], xmm0
movss dword [ebp - 0x38], xmm1
je 0x10114f8d
mov ecx, dword [edi + 0x20]
mov dword [ebx + 8], ecx
mov dh, byte [ebp - 0x1e]
mov dword [ebp - 0x48], 0
test dh, dh
je 0x10114fbe
mov eax, dword [ebp - 0x58]
mov ecx, eax
mov dword [ebx + 8], eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10114fa6
sub ecx, edx
mov edx, dword [ebp - 0x58]
lea eax, [ecx + edx]
mov dh, byte [ebp - 0x1e]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x14]
cmp byte [ebp - 0x1d], 0
jne 0x101150d2
cmp byte [ebp - 0x21], 0
jne 0x101150d2
cmp byte [ebp - 0x3c], 0
je 0x1011502c
mov eax, dword [ebx + 8]
xor ecx, ecx
mov dl, byte [eax]
lea esi, [eax + 1]
test dl, dl
je 0x10114ff8
cmp dl, 0xa
lea eax, [ecx + 1]
mov dl, byte [esi]
cmovne eax, ecx
inc esi
mov ecx, eax
test dl, dl
jne 0x10114fe6
mov al, byte [esi - 1]
dec esi
mov dword [ebp - 0x48], esi
cmp al, 0xa
je 0x10115008
cmp al, 0xd
je 0x10115008
inc ecx
mov edi, dword [ebp - 0x14]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [edi + 0x18d0]
movss dword [ebp - 0x38], xmm0
movaps xmm0, xmm3
movss dword [ebp - 0x88], xmm0
jmp 0x1011507f
test dh, dh
jne 0x10115066
mov ecx, dword [ebp - 0x30]
cmp dword [eax + 0x1a34], ecx
mov ecx, dword [ebx + 8]
jne 0x10115048
mov eax, dword [edi + 8]
add eax, ecx
mov dword [ebp - 0x48], eax
jmp 0x1011506c
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10115050
mov eax, dword [ebx + 8]
sub ecx, edx
mov dh, byte [ebp - 0x1e]
add eax, ecx
mov dword [ebp - 0x48], eax
jmp 0x10115069
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebx + 8]
sub eax, ecx
cmp eax, 0x200000
jge 0x10115b2b
mov edi, dword [ebp - 0x14]
mov esi, dword [ebp - 0x48]
movss xmm1, dword [0x1074b838]
lea eax, [ebp - 0xb0]
xor ecx, ecx
cmp byte [ebp - 0x3c], cl
cmovne eax, ecx
push eax
push ecx
mov dword [esp], ecx
push esi
push dword [ebx + 8]
movzx ecx, dh
call fcn.100ec490
movss xmm2, dword [edi + 0x18d0]
push eax
lea eax, [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x5c]
push dword [edi + 0x18cc]
mov ecx, dword [eax + 0x278]
call fcn.10107170
mov esi, dword [0x1078597c]
jmp 0x10115a7a
test dh, dh
jne 0x101150df
mov eax, dword [edi + 8]
add eax, dword [ebx + 8]
mov dword [ebp - 0x48], eax
mov ecx, dword [edi + 0x14]
mov esi, 0xfffffc18
xor edx, edx
mov dword [ebp - 0x2c], ecx
movaps xmm5, xmm1
movss dword [ebp - 0x28], xmm1
movss dword [ebp - 0x78], xmm5
mov dword [ebp - 0x58], 0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x30], esi
cmp byte [ebp - 0x1d], dl
je 0x10115127
mov eax, dword [edi + 0x3c]
or esi, 0xffffffff
mov dword [ebp - 0x54], esi
lea eax, [ecx + eax*2]
mov dword [ebp - 0x58], eax
lea edx, [esi + 2]
cmp byte [ebp - 0x21], 0
je 0x1011514e
mov ecx, dword [edi + 0x44]
cmp dword [edi + 0x40], ecx
mov eax, dword [ebp - 0x2c]
cmovl ecx, dword [edi + 0x40]
inc edx
mov dword [ebp - 0x30], 0xffffffff
lea eax, [eax + ecx*2]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0x3c]
movzx eax, al
add edx, eax
xor eax, eax
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x2c]
movzx eax, word [eax]
test ax, ax
je 0x101151c1
mov edi, dword [ebp - 0x54]
mov esi, eax
nop
cmp si, 0xa
jne 0x101151aa
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp edi, 0xffffffff
jne 0x10115194
cmp ecx, dword [ebp - 0x58]
jb 0x10115194
dec edx
mov edi, eax
test edx, edx
jle 0x101151b8
cmp dword [ebp - 0x30], 0xffffffff
jne 0x101151aa
cmp ecx, dword [ebp - 0xa0]
jb 0x101151aa
dec edx
mov dword [ebp - 0x30], eax
test edx, edx
jle 0x101151b8
movzx eax, word [ecx + 2]
add ecx, 2
mov esi, eax
test ax, ax
jne 0x10115170
mov dword [ebp - 0x54], edi
mov edi, dword [ebp - 0x44]
mov esi, dword [ebp - 0x54]
mov eax, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x58]
inc eax
cmp esi, 0xffffffff
mov dword [ebp - 0x8c], eax
mov ecx, eax
cmovne ecx, esi
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 0x30]
cmp ecx, 0xffffffff
cmove ecx, eax
mov dword [ebp - 0x30], ecx
mov ecx, edx
cmp edx, esi
jbe 0x101151ff
cmp word [ecx - 2], 0xa
je 0x101151ff
add ecx, 0xfffffffe
cmp ecx, esi
ja 0x101151f1
mov eax, dword [ebp - 0x1c]
movaps xmm2, xmm1
mov esi, dword [eax + 0x18cc]
movss xmm4, dword [eax + 0x18d0]
divss xmm4, dword [esi + 0x10]
cmp ecx, edx
jae 0x10115265
mov edi, dword [ebp - 0x58]
nop
movzx eax, word [ecx]
add ecx, 2
mov edx, eax
cmp eax, 0xa
jne 0x10115236
maxss xmm2, xmm5
movaps xmm5, xmm1
jmp 0x1011525e
cmp edx, 0xd
je 0x1011525e
mov edx, eax
cmp edx, dword [esi]
jge 0x1011524b
mov eax, dword [esi + 8]
movss xmm1, dword [eax + edx*4]
jmp 0x10115250
movss xmm1, dword [esi + 0xc]
movaps xmm0, xmm4
mulss xmm0, xmm1
xorps xmm1, xmm1
addss xmm5, xmm0
cmp ecx, edi
jb 0x10115220
mov edi, dword [ebp - 0x44]
cmp dword [ebp - 0x30], 0
maxss xmm5, xmm2
movd xmm6, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x14]
cvtdq2ps xmm6, xmm6
movss xmm3, dword [ecx + 0x18d0]
mulss xmm6, xmm3
movss dword [ebp - 0x4c], xmm5
movss dword [ebp - 0xbc], xmm6
jl 0x10115337
mov eax, dword [ebp - 0xa0]
mov ecx, eax
mov edx, dword [ebp - 0x2c]
cmp eax, edx
jbe 0x101152ba
cmp word [ecx - 2], 0xa
je 0x101152b4
add ecx, 0xfffffffe
cmp ecx, edx
ja 0x101152a6
mov eax, dword [ebp - 0xa0]
movaps xmm2, xmm1
movaps xmm5, xmm1
cmp ecx, eax
jae 0x10115315
mov edi, dword [ebp - 0xa0]
nop word [eax + eax]
movzx eax, word [ecx]
add ecx, 2
mov edx, eax
cmp eax, 0xa
jne 0x101152e6
maxss xmm2, xmm5
movaps xmm5, xmm1
jmp 0x1011530e
cmp edx, 0xd
je 0x1011530e
mov edx, eax
cmp edx, dword [esi]
jge 0x101152fb
mov eax, dword [esi + 8]
movss xmm1, dword [eax + edx*4]
jmp 0x10115300
movss xmm1, dword [esi + 0xc]
movaps xmm0, xmm4
mulss xmm0, xmm1
xorps xmm1, xmm1
addss xmm5, xmm0
cmp ecx, edi
jb 0x101152d0
mov edi, dword [ebp - 0x44]
movd xmm0, dword [ebp - 0x30]
maxss xmm5, xmm2
mov ecx, dword [ebp - 0x14]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x78], xmm5
movss xmm5, dword [ebp - 0x4c]
mulss xmm0, xmm3
movss dword [ebp - 0x28], xmm0
mov edx, dword [ebp - 0x3c]
test dl, dl
je 0x10115367
movd xmm0, dword [ebp - 0x8c]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm3
movss xmm3, dword [ebp - 0x90]
movss dword [ebp - 0x38], xmm0
movaps xmm0, xmm3
movss dword [ebp - 0x88], xmm0
jmp 0x1011536f
movss xmm3, dword [ebp - 0x90]
cmp byte [ebp - 0x1d], 0
je 0x10115459
cmp byte [edi + 0xe64], 0
je 0x10115459
test dword [ebx + 0x14], 0x8000
jne 0x101153d3
movss xmm2, dword [edi + 0x38]
movaps xmm0, xmm3
comiss xmm2, xmm5
mulss xmm0, dword [0x1074b7ec]
movaps xmm1, xmm5
jbe 0x101153b4
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
jmp 0x101153c1
subss xmm1, xmm3
comiss xmm1, xmm2
jb 0x101153da
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x38], xmm0
jmp 0x101153da
mov dword [edi + 0x38], 0
test dl, dl
je 0x10115422
mov eax, dword [ebp - 0x5c]
movaps xmm2, xmm6
subss xmm2, dword [ecx + 0x18d0]
movss xmm1, dword [eax + 0x54]
comiss xmm1, xmm2
jbe 0x101153ff
xorps xmm0, xmm0
maxss xmm0, xmm2
jmp 0x1011540b
movaps xmm0, xmm6
subss xmm0, dword [ebp - 0x6c]
maxss xmm0, xmm1
subss xmm1, xmm0
movss dword [eax + 0x54], xmm0
addss xmm7, xmm1
movss dword [ebp - 0x68], xmm7
movss dword [ebp - 0x7c], xmm7
mov byte [edi + 0xe64], 0
movss xmm0, dword [ebp - 0xa4]
movss dword [ebp - 0x94], xmm0
movss xmm0, dword [ebp - 0xa8]
movss dword [ebp - 0x98], xmm0
movss xmm0, dword [ebp - 0xb0]
movss dword [ebp - 0xb8], xmm0
cmp byte [ebp - 0x21], 0
movss xmm6, dword [edi + 0x38]
movss dword [ebp - 0x54], xmm6
je 0x1011576f
mov edx, dword [edi + 0x44]
mov eax, edx
mov ecx, dword [edi + 0x40]
cmp ecx, edx
mov esi, dword [ebp - 0x2c]
cmovl eax, ecx
cmovge edx, ecx
cmp byte [ebp - 0x1d], 0
lea esi, [esi + eax*2]
mov eax, dword [ebp - 0x2c]
lea eax, [eax + edx*2]
mov dword [ebp - 0x58], eax
je 0x1011549c
movss xmm1, dword [0x1074b838]
jmp 0x101154a4
movss xmm1, dword [0x1074b808]
mov ecx, 0x2a
call fcn.100ec490
cmp byte [ebp - 0x3c], 0
mov dword [ebp - 0xa0], eax
je 0x101154cf
xorps xmm0, xmm0
movss dword [ebp - 0x90], xmm0
movss dword [ebp - 0x8c], xmm0
jmp 0x101154f2
movss xmm0, dword [0x1074b9f4]
movss dword [ebp - 0x90], xmm0
movss xmm0, dword [0x1074b884]
movss dword [ebp - 0x8c], xmm0
xorps xmm0, xmm0
movss xmm5, dword [ebp - 0x68]
addss xmm5, dword [ebp - 0x28]
movss xmm7, dword [ebp - 0x78]
addss xmm7, dword [ebp - 0x74]
movss xmm6, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x58]
subss xmm5, xmm0
subss xmm7, xmm6
movss dword [ebp - 0x28], xmm5
cmp esi, ecx
jae 0x101157f8
mov edi, dword [ebp - 0x14]
movss xmm4, dword [ebp - 0x94]
movss xmm2, dword [ebp - 0xac]
mov eax, dword [ebp - 0x14]
movss xmm6, dword [edi + 0x18d0]
mov edi, dword [ebp - 0x1c]
movaps xmm1, xmm6
nop word [eax + eax]
movaps xmm0, xmm4
addss xmm0, xmm1
comiss xmm5, xmm0
ja 0x1011575f
comiss xmm2, xmm5
jbe 0x10115588
cmp esi, ecx
jae 0x10115739
nop dword [eax]
movzx eax, word [esi]
add esi, 2
cmp eax, 0xa
je 0x10115736
cmp esi, ecx
jb 0x10115570
jmp 0x1011575f
mov edx, dword [edi + 0x18cc]
xorps xmm2, xmm2
movss xmm3, dword [edi + 0x18d0]
xorps xmm4, xmm4
xorps xmm1, xmm1
divss xmm3, dword [edx + 0x10]
cmp esi, ecx
jae 0x101155f1
movzx eax, word [esi]
add esi, 2
mov ecx, eax
cmp eax, 0xa
je 0x101155e1
cmp ecx, 0xd
je 0x101155d8
cmp ecx, dword [edx]
jge 0x101155c8
mov eax, dword [edx + 8]
movss xmm2, dword [eax + ecx*4]
jmp 0x101155cd
movss xmm2, dword [edx + 0xc]
movaps xmm0, xmm3
mulss xmm0, xmm2
addss xmm1, xmm0
mov ecx, dword [ebp - 0x58]
cmp esi, ecx
jb 0x101155a8
jmp 0x101155ee
mov ecx, dword [ebp - 0x58]
xorps xmm4, xmm4
maxss xmm4, xmm1
xorps xmm1, xmm1
xorps xmm2, xmm2
maxss xmm1, xmm4
comiss xmm2, xmm1
jb 0x1011562d
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x18cc]
cmp dword [eax], 0x20
jle 0x10115615
mov eax, dword [eax + 8]
movss xmm0, dword [eax + 0x80]
jmp 0x1011561a
movss xmm0, dword [eax + 0xc]
mulss xmm0, dword [0x1074b800]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss xmm0, dword [ebp - 0x8c]
addss xmm1, xmm7
movss xmm4, dword [ebp - 0x94]
addss xmm0, xmm5
movaps xmm3, xmm7
addss xmm3, xmm2
movss xmm2, dword [ebp - 0x90]
subss xmm2, xmm6
minss xmm1, dword [ebp - 0x98]
minss xmm0, xmm4
maxss xmm3, dword [ebp - 0xb8]
addss xmm2, xmm5
movss dword [ebp - 0xd4], xmm1
comiss xmm0, dword [ebp - 0xac]
maxss xmm2, dword [ebp - 0xac]
movss dword [ebp - 0xdc], xmm3
movss dword [ebp - 0xd0], xmm0
movss dword [ebp - 0xd8], xmm2
jbe 0x1011572e
comiss xmm4, xmm2
jbe 0x1011572e
comiss xmm1, dword [ebp - 0xb8]
jbe 0x1011572e
movss xmm0, dword [ebp - 0x98]
comiss xmm0, xmm3
jbe 0x1011572e
push 0xf
push ecx
mov dword [esp], 0
lea eax, [ebp - 0xd4]
push dword [ebp - 0xa0]
push eax
lea eax, [ebp - 0xdc]
push eax
mov eax, dword [ebp - 0x5c]
mov ecx, dword [eax + 0x278]
call fcn.10106ae0
movss xmm0, dword [ebp - 0xa8]
movss xmm4, dword [ebp - 0xa4]
mov edi, dword [0x1078597c]
movss xmm5, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x58]
movss dword [ebp - 0x98], xmm0
movss xmm0, dword [ebp - 0xb0]
movss dword [ebp - 0x94], xmm4
movss dword [ebp - 0xb8], xmm0
movss xmm2, dword [ebp - 0xac]
mov eax, dword [ebp - 0x14]
movss xmm6, dword [eax + 0x18d0]
movss xmm7, dword [ebp - 0x74]
addss xmm5, xmm6
movaps xmm1, xmm6
subss xmm7, dword [ebp - 0x54]
movss dword [ebp - 0x28], xmm5
cmp esi, ecx
jb 0x10115550
movss xmm6, dword [ebp - 0x54]
movss xmm7, dword [ebp - 0x68]
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 0x44]
xorps xmm0, xmm0
cmp byte [ebp - 0x3c], 0
mov edx, dword [ebp - 0x48]
mov esi, dword [ebx + 8]
jne 0x1011578d
mov eax, edx
sub eax, esi
cmp eax, 0x200000
jge 0x101158d7
mov ecx, dword [ebp - 0x1c]
movzx eax, byte [ebp - 0x1e]
add eax, eax
movss xmm1, dword [ecx + eax*8 + 0x15cc]
comiss xmm0, xmm1
movss xmm3, dword [ecx + eax*8 + 0x15d8]
movss xmm4, dword [ecx + eax*8 + 0x15d0]
movss xmm5, dword [ecx + eax*8 + 0x15d4]
mulss xmm3, dword [ecx + 0x1518]
ja 0x101157d3
movss xmm0, dword [0x1074b838]
minss xmm0, xmm1
movss xmm2, dword [0x1074b978]
xorps xmm1, xmm1
comiss xmm1, xmm4
mulss xmm0, xmm2
addss xmm0, dword [0x1074b800]
cvttss2si ecx, xmm0
jbe 0x10115802
xorps xmm0, xmm0
jmp 0x1011580e
movss xmm7, dword [ebp - 0x68]
jmp 0x10115772
movss xmm0, dword [0x1074b838]
minss xmm0, xmm4
movss xmm4, dword [0x1074b800]
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm1, xmm5
jbe 0x10115831
xorps xmm0, xmm0
jmp 0x1011583d
movss xmm0, dword [0x1074b838]
minss xmm0, xmm5
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm1, xmm3
ja 0x1011585f
movss xmm1, dword [0x1074b838]
minss xmm1, xmm3
cmp byte [ebp - 0x3c], 0
lea eax, [ebp - 0xb0]
mulss xmm1, xmm2
mov dword [ebp - 0x28], 0
cmovne eax, dword [ebp - 0x28]
push eax
movss xmm0, dword [ebp - 0x74]
addss xmm1, xmm4
subss xmm7, dword [0x1074b780]
push ecx
mov dword [esp], 0
subss xmm0, xmm6
push edx
cvttss2si eax, xmm1
push esi
movss dword [ebp - 0x70], xmm0
shl eax, 0x18
or eax, ecx
movss dword [ebp - 0x6c], xmm7
push eax
lea eax, [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x14]
push dword [eax + 0x18cc]
movss xmm2, dword [eax + 0x18d0]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [eax + 0x278]
call fcn.10107170
mov esi, dword [0x1078597c]
jmp 0x101158da
mov esi, dword [ebp - 0x1c]
cmp byte [ebp - 0x1d], 0
je 0x10115a77
mov eax, dword [ebp - 0x14]
movss xmm0, dword [eax + 0x18]
addss xmm0, dword [edi + 0xe60]
movss dword [edi + 0xe60], xmm0
mov edi, eax
cmp byte [edi + 0xb2], 0
je 0x10115942
xorps xmm1, xmm1
comiss xmm1, xmm0
jae 0x10115942
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x70], xmm0
fld qword [ebp - 0x70]
fld qword [0x1074b878]
call fcn.1015cd70
movss xmm0, dword [0x1074b828]
fstp qword [ebp - 0x70]
movsd xmm1, qword [ebp - 0x70]
cvtpd2ps xmm1, xmm1
comiss xmm0, xmm1
jae 0x10115942
xor al, al
jmp 0x10115944
mov al, 1
movss xmm0, dword [ebp - 0x68]
movss xmm4, dword [ebp - 0x4c]
movss xmm5, dword [0x1074b838]
addss xmm0, dword [ebp - 0xbc]
addss xmm4, dword [ebp - 0x74]
subss xmm0, dword [0x1074b780]
subss xmm4, dword [ebp - 0x54]
movss dword [ebp - 0x68], xmm0
movaps xmm1, xmm0
movss dword [ebp - 0x4c], xmm4
movaps xmm3, xmm4
movss dword [ebp - 0xdc], xmm4
movaps xmm2, xmm0
addss xmm3, xmm5
subss xmm1, dword [edi + 0x18d0]
subss xmm2, dword [0x1074b868]
movss dword [ebp - 0xd4], xmm3
addss xmm1, dword [0x1074b800]
movss dword [ebp - 0xd0], xmm2
movss dword [ebp - 0xd8], xmm1
test al, al
je 0x10115a47
comiss xmm2, dword [ebp - 0xac]
jbe 0x10115a47
movss xmm0, dword [ebp - 0xa4]
comiss xmm0, xmm1
jbe 0x10115a42
comiss xmm3, dword [ebp - 0xb0]
jbe 0x10115a42
movss xmm0, dword [ebp - 0xa8]
comiss xmm0, xmm4
jbe 0x10115a42
sub esp, 8
movss dword [ebp - 0x70], xmm4
movaps xmm1, xmm5
movss dword [ebp - 0x6c], xmm2
xor ecx, ecx
mov dword [esp + 4], 0x3f800000
call fcn.100ec490
add esp, 4
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xdc]
push eax
mov eax, dword [ebp - 0x5c]
mov ecx, dword [eax + 0x278]
call fcn.101068f0
mov esi, dword [0x1078597c]
movss xmm4, dword [ebp - 0x4c]
movss xmm5, dword [0x1074b838]
movss xmm0, dword [ebp - 0x68]
cmp byte [ebp - 0x50], 0
jne 0x10115a7a
subss xmm0, dword [edi + 0x18d0]
subss xmm4, xmm5
movss dword [ebp - 0x6c], xmm0
mov ecx, dword [ebp - 0x6c]
movss dword [ebp - 0x70], xmm4
mov eax, dword [ebp - 0x70]
mov dword [edi + 0x2d8c], eax
mov dword [edi + 0x2d90], ecx
jmp 0x10115a7a
mov edi, dword [ebp - 0x14]
cmp byte [ebp - 0x3c], 0
je 0x10115b2b
mov eax, dword [esi + 0x1a00]
movss xmm1, dword [ebp - 0x38]
addss xmm1, dword [edi + 0x18d0]
movss xmm3, dword [ebp - 0x88]
addss xmm3, dword [0x1074b780]
mov byte [eax + 0x7c], 1
mov eax, dword [esi + 0x1a00]
movss dword [ebp - 0x6c], xmm1
movss dword [ebp - 0x70], xmm3
cmp byte [eax + 0x7f], 0
jne 0x10115b1b
movss xmm0, dword [eax + 0xc8]
lea ecx, [ebp - 0x70]
movss xmm2, dword [eax + 0xcc]
movss dword [ebp - 0xdc], xmm0
addss xmm0, xmm3
movss dword [ebp - 0xd8], xmm2
addss xmm2, xmm1
movss xmm1, dword [0x1074b9f4]
movss dword [ebp - 0xd4], xmm0
movss dword [ebp - 0xd0], xmm2
call fcn.100f6e20
push 0
xor edx, edx
lea ecx, [ebp - 0xdc]
call fcn.100f6f50
add esp, 4
call fcn.100f1e00
call fcn.100f7540
mov esi, dword [0x1078597c]
mov edx, dword [ebp - 0xb4]
mov cl, byte [ebp - 0x1e]
test dl, dl
je 0x10115b98
test cl, cl
jne 0x10115b98
mov eax, dword [esi + 0x1a00]
mov edi, esi
mov ecx, dword [eax + 0x278]
dec dword [ecx + 0x4c]
call fcn.10104f20
mov ecx, dword [esi + 0x1b04]
sub ecx, 1
mov dword [esi + 0x1b04], ecx
mov esi, dword [0x1078597c]
jne 0x10115b80
mov ecx, dword [esi + 0xa4]
test ecx, ecx
jne 0x10115b8a
mov eax, dword [esi + 0x98]
mov eax, dword [eax + 0x3c]
mov ecx, dword [eax]
jmp 0x10115b8a
mov eax, dword [edi + 0x1b0c]
mov ecx, dword [eax + ecx*4 - 4]
call fcn.100f67e0
mov cl, byte [ebp - 0x1e]
mov edx, dword [ebp - 0xb4]
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0x2dc8], 0
je 0x10115bc6
test dl, dl
je 0x10115bac
test cl, cl
je 0x10115bc6
push dword [ebp - 0x48]
mov edx, dword [ebx + 8]
lea ecx, [ebp - 0x80]
call fcn.100fbfe0
mov esi, dword [0x1078597c]
add esp, 4
mov eax, dword [ebp - 0x14]
movss xmm0, dword [ebp - 0xec]
comiss xmm0, dword [0x1074b780]
jbe 0x10115c1d
movss xmm0, dword [ebp - 0xc8]
sub esp, 8
addss xmm0, dword [eax + 0x1554]
movss xmm1, dword [ebp - 0xc4]
xor edx, edx
addss xmm1, dword [eax + 0x1568]
mov ecx, dword [ebp - 0xe8]
mov eax, esp
push 1
movss dword [eax], xmm1
movss dword [eax + 4], xmm0
call fcn.100ec750
mov esi, dword [0x1078597c]
add esp, 0xc
mov dl, byte [ebp - 0x33]
mov ecx, dword [ebx + 0x14]
test dl, dl
je 0x10115c45
test ecx, 0x800000
jne 0x10115c45
mov eax, dword [esi + 0x1a00]
mov word [esi + 0x1a43], 0x101
or dword [eax + 0x110], 4
test ecx, 0x100
movzx eax, dl
movzx ecx, byte [ebp - 0x32]
cmovne eax, ecx
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret