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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
mov eax, 0x6ad8
call fcn.004638b0
mov esi, esp
mov dword [esi + 4], ebp
lea eax, [ebp + 8]
mov dword [esi + 0x238], eax
mov ecx, esp
mov dword [esi + 0x6ac4], ecx
mov dword [esi + 0x6ad0], 0xffffffff
lea ecx, [esi + 0x6ac8]
mov dword [esi + 0x6acc], 0x448bf0
mov edx, dword fs:[0]
mov dword [esi + 0x6ac8], edx
mov dword fs:[0], ecx
mov ecx, dword [eax]
mov dword [esi + 0x23c], ecx
mov ecx, eax
add ecx, 4
mov dword [esi + 0x240], ecx
mov ecx, eax
add ecx, 8
mov dword [esi + 0x244], ecx
mov ecx, eax
add ecx, 0xc
mov dword [esi + 0x248], ecx
mov ecx, eax
add ecx, 0x10
mov dword [esi + 0x24c], ecx
mov ecx, eax
add ecx, 0x14
mov dword [esi + 0x250], ecx
mov ecx, eax
add ecx, 0x18
mov dword [esi + 0x254], ecx
mov edx, eax
add edx, 0x3e8
mov dword [esi + 0x258], edx
mov edx, eax
add edx, 0x3ec
mov dword [esi + 0x25c], edx
mov edx, eax
add edx, 0x3f0
mov dword [esi + 0x260], edx
mov edx, eax
add edx, 0x3f4
mov dword [esi + 0x264], edx
mov edx, eax
add edx, 0x3f8
mov dword [esi + 0x268], edx
mov edx, eax
add edx, 0x3fc
mov dword [esi + 0x26c], edx
mov edx, eax
add edx, 0x400
mov dword [esi + 0x270], edx
mov edx, eax
add edx, 0x408
mov dword [esi + 0x274], edx
mov edx, eax
add edx, 0x40c
mov dword [esi + 0x278], edx
mov edx, eax
add edx, 0x410
mov dword [esi + 0x27c], edx
mov edx, eax
add edx, 0x414
mov dword [esi + 0x280], edx
mov edx, eax
add edx, 0x418
mov dword [esi + 0x284], edx
mov edx, eax
add edx, 0x41c
mov dword [esi + 0x288], edx
mov eax, dword [eax + 0x400]
mov edx, dword [eax*4 + 0x4c5554]
inc edx
mov dword [eax*4 + 0x4c5554], edx
mov dword [esi + 0x6ad0], 0
call fcn.0044b520
mov dword [esi + 0x28c], edx
mov dword [esi + 0x290], eax
jmp 0x42e77c
mov ecx, dword [esi + 0x23c]
mov eax, dword [esi + 0x28c]
mov edx, dword [esi + 0x290]
mov dword [esi + 0x6ab8], edx
mov dword [esi + 0x6abc], eax
mov byte [esi + 0x6ab7], 0
call fcn.0044b890
mov eax, dword [esi + 0x25c]
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x6ab6], al
test byte [esi + 0x6ab6], 1
je 0x42e8de
lea ecx, [0x4c56f4]
call fcn.0044b5a0
test al, 1
jne 0x42e7e9
jmp 0x42e7f8
mov dword [esi + 0x6aa8], 2
jmp 0x42e9e6
mov dword [esi + 0x6ad0], 0xd
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab0]
mov dword [eax], ecx
mov ecx, 0x4c56f4
call fcn.0044c680
jmp 0x42e827
lea ecx, [0x4c56f4]
lea eax, [esi + 0x6aac]
sub esp, 4
mov dword [esp], eax
call fcn.0044c6e0
lea ecx, [esi + 0x6ab0]
lea eax, [esi + 0x6aac]
sub esp, 4
mov dword [esp], eax
call fcn.0044b7f0
test al, 1
jne 0x42e862
jmp 0x42e8cf
lea ecx, [esi + 0x6ab0]
call fcn.0044b870
mov ecx, dword [esi + 0x25c]
movsx eax, byte [eax + 0x10]
cmp eax, dword [ecx]
jg 0x42e8c0
mov eax, dword [esi + 0x23c]
mov dword [eax], 1
lea ecx, [esi + 0x6ab0]
call fcn.0044b870
mov ecx, eax
mov eax, dword [esi + 0x23c]
mov edx, dword [ecx + 8]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 0xc]
mov dword [eax + 8], ecx
mov byte [esi + 0x6ab7], 1
mov dword [esi + 0x6aa8], 1
jmp 0x42e9e6
mov dword [esi + 0x6aa8], 2
jmp 0x42e9e6
mov dword [esi + 0x6aa8], 2
jmp 0x42e9e6
lea ecx, [0x4c56fc]
call fcn.0044b5a0
test al, 1
jne 0x42e8f6
jmp 0x42e905
mov dword [esi + 0x6aa8], 2
jmp 0x42e9e6
mov dword [esi + 0x6ad0], 0xd
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6aa4]
mov dword [eax], ecx
mov ecx, 0x4c56fc
call fcn.0044c680
jmp 0x42e934
lea ecx, [0x4c56fc]
lea eax, [esi + 0x6aa0]
sub esp, 4
mov dword [esp], eax
call fcn.0044c6e0
lea ecx, [esi + 0x6aa4]
lea eax, [esi + 0x6aa0]
sub esp, 4
mov dword [esp], eax
call fcn.0044b7f0
test al, 1
jne 0x42e96f
jmp 0x42e9dc
lea ecx, [esi + 0x6aa4]
call fcn.0044b870
mov ecx, dword [esi + 0x25c]
movsx eax, byte [eax + 0x10]
cmp eax, dword [ecx]
jg 0x42e9cd
mov eax, dword [esi + 0x23c]
mov dword [eax], 1
lea ecx, [esi + 0x6aa4]
call fcn.0044b870
mov ecx, eax
mov eax, dword [esi + 0x23c]
mov edx, dword [ecx + 8]
mov dword [eax + 4], edx
mov ecx, dword [ecx + 0xc]
mov dword [eax + 8], ecx
mov byte [esi + 0x6ab7], 1
mov dword [esi + 0x6aa8], 1
jmp 0x42e9e6
mov dword [esi + 0x6aa8], 2
jmp 0x42e9e6
mov dword [esi + 0x6aa8], 2
test byte [esi + 0x6ab7], 1
jne 0x42e9fe
mov ecx, dword [esi + 0x23c]
call fcn.0044a600
cmp dword [esi + 0x6aa8], 2
je 0x42ea10
jmp 0x433c2d
jmp 0x42ea15
mov eax, dword [esi + 0x258]
cmp dword [eax], 0
jge 0x42ea36
mov eax, dword [esi + 0x258]
mov ecx, dword [eax]
add ecx, 2
mov dword [eax], ecx
jmp 0x42ea15
mov eax, dword [esi + 0x25c]
mov byte [esi + 0x6a9f], 0
mov eax, dword [eax]
add eax, 2
sub esp, 4
mov dword [esp], eax
call fcn.004343d0
mov eax, dword [esi + 0x25c]
add esp, 4
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x6a9e], al
test byte [esi + 0x6a9e], 1
je 0x42ea9e
mov eax, dword [esi + 0x24c]
mov eax, dword [eax]
mov dword [esi + 0x6ad0], 0
mov dword [esi + 0x234], eax
jmp 0x42eab6
mov eax, dword [esi + 0x248]
mov eax, dword [eax]
mov dword [esi + 0x6ad0], 0
mov dword [esi + 0x234], eax
mov edi, dword [esi + 0x248]
mov ecx, dword [esi + 0x254]
mov eax, dword [esi + 0x234]
mov dword [esi + 0x6a98], eax
mov ebx, ecx
add ebx, 0x3a9
mov edx, ecx
add edx, 0x388
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], ebx
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.0040a820
mov eax, dword [esi + 0x25c]
mov edx, dword [esi + 0x254]
add esp, 0xc
fstp dword [esi + 0x6a94]
mov eax, dword [eax]
mov dword [esi + 0x6a90], eax
mov eax, esp
mov dword [esi + 0x220], eax
sub esp, 0x3e0
mov ecx, esp
mov dword [esi + 0x22c], ecx
movss xmm0, dword [esi + 0x6a94]
movss dword [esi + 0x228], xmm0
mov eax, dword [esi + 0x6a90]
mov dword [esi + 0x224], eax
add ecx, 8
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044b5c0
mov edx, dword [esi + 0x24c]
mov ecx, dword [esi + 0x224]
movss xmm0, dword [esi + 0x228]
mov eax, dword [esi + 0x22c]
mov edx, dword [edx]
mov edi, dword [edi]
mov dword [eax], edi
mov dword [eax + 4], edx
mov dword [eax + 0x3d8], ecx
movss dword [eax + 0x3dc], xmm0
call fcn.00422210
add esp, 0x3e0
fstp dword [esi + 0x2cc]
movss xmm0, dword [esi + 0x2cc]
movss dword [esi + 0x230], xmm0
jmp 0x42eba5
movss xmm0, dword [esi + 0x230]
mov eax, dword [esi + 0x220]
mov esp, eax
movss dword [esi + 0x6a8c], xmm0
test byte [0x49a594], 1
je 0x42f085
movsx eax, byte [0x49812c]
cmp eax, 0xe
je 0x42ec5a
movsx eax, byte [0x49812c]
cmp eax, 0xc
je 0x42ec5a
movsx eax, byte [0x49812c]
cmp eax, 0xa
je 0x42ec5a
movsx eax, byte [0x49812c]
cmp eax, 8
je 0x42ec5a
movsx eax, byte [0x49812c]
cmp eax, 6
je 0x42ec5a
movsx eax, byte [0x49812c]
cmp eax, 7
je 0x42ec5a
movsx eax, byte [0x49812c]
cmp eax, 9
je 0x42ec5a
movsx eax, byte [0x49812c]
cmp eax, 0xb
je 0x42ec5a
movsx eax, byte [0x49812c]
cmp eax, 0xd
jne 0x42f085
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 2
cmp eax, ecx
jge 0x42ed7e
movsx eax, byte [0x49812c]
cmp eax, 0xa
jne 0x42eca2
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 4
cmp eax, ecx
jge 0x42ed7e
movsx eax, byte [0x49812c]
cmp eax, 0xc
jne 0x42ecce
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 6
cmp eax, ecx
jge 0x42ed7e
movsx eax, byte [0x49812c]
cmp eax, 9
jne 0x42ecfa
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 2
cmp eax, ecx
jge 0x42ed7e
movsx eax, byte [0x49812c]
cmp eax, 0xb
jne 0x42ed26
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 4
cmp eax, ecx
jge 0x42ed7e
movsx eax, byte [0x49812c]
cmp eax, 0xd
jne 0x42ed52
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 6
cmp eax, ecx
jge 0x42ed7e
movsx eax, byte [0x49812c]
cmp eax, 0xe
jne 0x42f080
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 8
cmp eax, ecx
jl 0x42f080
mov eax, dword [esi + 0x274]
test byte [eax], 1
jne 0x42f07b
mov eax, dword [esi + 0x268]
test byte [eax], 1
jne 0x42f076
mov eax, dword [esi + 0x26c]
test byte [eax], 1
jne 0x42f076
lea ecx, [esi + 0x6a84]
call fcn.0040a6d0
mov eax, dword [esi + 0x244]
movss xmm0, dword [0x48a630]
mulss xmm0, dword [esi + 0x6a88]
movss dword [esi + 0x6a80], xmm0
movss xmm0, dword [esi + 0x6a8c]
subss xmm0, dword [esi + 0x6a80]
ucomiss xmm0, dword [eax]
jbe 0x42f071
mov ecx, dword [esi + 0x23c]
mov byte [esi + 0x6a7f], 0
call fcn.0044b890
mov ecx, dword [esi + 0x244]
mov eax, dword [esi + 0x23c]
mov dword [eax], 1
movss xmm0, dword [ecx]
movss dword [eax + 8], xmm0
sub esp, 4
mov dword [esp], 0xffffffff
call fcn.00401140
add esp, 4
mov cx, ax
mov eax, dword [esi + 0x23c]
mov word [esi + 0x6a7d], cx
mov cx, word [esi + 0x6a7d]
mov word [eax + 4], cx
sub esp, 4
mov dword [esp], 0xffffffff
call fcn.00401140
mov ecx, dword [esi + 0x23c]
add esp, 4
mov dx, ax
mov eax, dword [esi + 0x25c]
mov word [esi + 0x6a7b], dx
mov dx, word [esi + 0x6a7b]
mov word [ecx + 6], dx
mov edx, dword [eax]
mov byte [esi + 0x6a74], dl
mov edx, dword [ecx + 4]
mov dword [esi + 0x6a6c], edx
mov ecx, dword [ecx + 8]
mov dword [esi + 0x6a70], ecx
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x6a6b], al
test byte [esi + 0x6a6b], 1
je 0x42ef7e
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x6a6c]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x6a50]
mov dword [esi + 0x21c], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x21c]
mov dword [esi + 0x6ad0], 0xc
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6a48]
mov dword [eax], ecx
mov ecx, 0x4c56f4
call fcn.0044c730
jmp 0x42ef0f
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044b6b0
jmp 0x42ef2b
lea ecx, [0x4c56f4]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x42ef79
mov ecx, 0x4c5704
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x6a40], xmm0
lea ecx, [0x4c56f4]
lea eax, [esi + 0x6a40]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5704]
call fcn.0044b770
jmp 0x42f043
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x6a6c]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x6a28]
mov dword [esi + 0x218], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x218]
mov dword [esi + 0x6ad0], 0xc
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6a20]
mov dword [eax], ecx
mov ecx, 0x4c56fc
call fcn.0044c730
jmp 0x42efd4
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044b6b0
jmp 0x42eff0
lea ecx, [0x4c56fc]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x42f03e
mov ecx, 0x4c5718
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x6a18], xmm0
lea ecx, [0x4c56fc]
lea eax, [esi + 0x6a18]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5718]
call fcn.0044b770
jmp 0x42f043
mov byte [esi + 0x6a7f], 1
mov dword [esi + 0x6aa8], 1
test byte [esi + 0x6a7f], 1
jne 0x42f06c
mov ecx, dword [esi + 0x23c]
call fcn.0044a600
jmp 0x433c2d
jmp 0x42f076
jmp 0x42f07b
jmp 0x42f080
jmp 0x42f085
test byte [0x49a595], 1
je 0x42f223
movsx eax, byte [0x49812c]
cmp eax, 0xe
je 0x42f0d2
movsx eax, byte [0x49812c]
cmp eax, 0xc
je 0x42f0d2
movsx eax, byte [0x49812c]
cmp eax, 8
je 0x42f0d2
movsx eax, byte [0x49812c]
cmp eax, 0xa
jne 0x42f223
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 4
cmp eax, ecx
jge 0x42f172
movsx eax, byte [0x49812c]
cmp eax, 0xa
jne 0x42f11a
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 6
cmp eax, ecx
jge 0x42f172
movsx eax, byte [0x49812c]
cmp eax, 0xc
jne 0x42f146
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 8
cmp eax, ecx
jge 0x42f172
movsx eax, byte [0x49812c]
cmp eax, 0xe
jne 0x42f21e
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
sub ecx, 0xa
cmp eax, ecx
jl 0x42f21e
mov eax, dword [esi + 0x274]
test byte [eax], 1
jne 0x42f219
mov eax, dword [esi + 0x268]
test byte [eax], 1
jne 0x42f214
mov eax, dword [esi + 0x26c]
test byte [eax], 1
jne 0x42f214
lea ecx, [esi + 0x6a10]
call fcn.0040a6d0
mov eax, dword [esi + 0x244]
movss xmm0, dword [esi + 0x6a14]
movss dword [esi + 0x6a0c], xmm0
movss xmm0, dword [esi + 0x6a8c]
subss xmm0, dword [esi + 0x6a0c]
ucomiss xmm0, dword [eax]
jbe 0x42f20f
mov eax, dword [esi + 0x250]
movsx eax, byte [eax]
cmp eax, 8
jle 0x42f1fd
mov eax, dword [esi + 0x258]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x42f20a
mov eax, dword [esi + 0x258]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x42f20f
jmp 0x42f214
jmp 0x42f219
jmp 0x42f21e
jmp 0x42f223
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
cmp eax, ecx
jge 0x42f267
mov eax, dword [esi + 0x254]
sub esp, 4
mov dword [esp], eax
call fcn.00421450
add esp, 4
test al, 1
jne 0x42f267
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0x1e
jl 0x42f76b
mov ecx, dword [esi + 0x23c]
mov byte [esi + 0x6a0b], 0
call fcn.0044b890
mov eax, dword [esi + 0x23c]
mov dword [eax], 1
cmp dword [0x49a580], 0
jne 0x42f35c
mov edi, dword [esi + 0x248]
mov edx, dword [esi + 0x254]
mov eax, dword [esi + 0x25c]
mov eax, dword [eax]
mov dword [esi + 0x6a04], eax
mov eax, esp
mov dword [esi + 0x208], eax
sub esp, 0x3e4
mov ecx, esp
mov dword [esi + 0x210], ecx
mov eax, dword [esi + 0x6a04]
mov dword [esi + 0x20c], eax
add ecx, 0x10
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044b5c0
mov edx, dword [esi + 0x24c]
mov ecx, dword [esi + 0x20c]
mov eax, dword [esi + 0x210]
mov edx, dword [edx]
mov edi, dword [edi]
mov dword [eax], 0xc61c3fec
mov dword [eax + 4], 0x461c3fec
mov dword [eax + 8], edi
mov dword [eax + 0xc], edx
mov dword [eax + 0x3e0], ecx
mov dword [esi + 0x6ad0], 0xb
call fcn.00429e70
add esp, 0x3e4
fstp dword [esi + 0x294]
movss xmm0, dword [esi + 0x294]
movss dword [esi + 0x214], xmm0
jmp 0x42f33c
mov eax, dword [esi + 0x23c]
movss xmm0, dword [esi + 0x214]
mov ecx, dword [esi + 0x208]
mov esp, ecx
movss dword [eax + 8], xmm0
jmp 0x42f528
mov eax, dword [esi + 0x288]
mov eax, dword [eax]
cmp eax, dword [0x49a578]
jg 0x42f45e
mov ebx, dword [esi + 0x248]
mov edi, dword [esi + 0x24c]
mov edx, dword [esi + 0x254]
mov eax, dword [esi + 0x288]
mov ecx, dword [esi + 0x25c]
mov ecx, dword [ecx]
mov dword [esi + 0x6a00], ecx
mov ecx, esp
mov dword [esi + 0x1f4], ecx
sub esp, 0x3ec
mov ecx, esp
mov dword [esi + 0x200], ecx
mov eax, dword [eax]
mov dword [esi + 0x1fc], eax
mov eax, dword [esi + 0x6a00]
mov dword [esi + 0x1f8], eax
add ecx, 0x10
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044b5c0
mov edx, dword [esi + 0x1f8]
mov ecx, dword [esi + 0x1fc]
mov eax, dword [esi + 0x200]
mov edi, dword [edi]
mov ebx, dword [ebx]
mov dword [eax], 0xc61c3fec
mov dword [eax + 4], 0x461c3fec
mov dword [eax + 8], ebx
mov dword [eax + 0xc], edi
mov dword [eax + 0x3e0], edx
mov dword [eax + 0x3e4], ecx
mov dword [eax + 0x3e8], 0
mov dword [esi + 0x6ad0], 0xb
call fcn.0042c170
add esp, 0x3ec
fstp dword [esi + 0x298]
movss xmm0, dword [esi + 0x298]
movss dword [esi + 0x204], xmm0
jmp 0x42f43e
mov eax, dword [esi + 0x23c]
movss xmm0, dword [esi + 0x204]
mov ecx, dword [esi + 0x1f4]
mov esp, ecx
movss dword [eax + 8], xmm0
jmp 0x42f523
mov edi, dword [esi + 0x248]
mov edx, dword [esi + 0x254]
mov eax, dword [esi + 0x25c]
mov eax, dword [eax]
mov dword [esi + 0x69fc], eax
mov eax, esp
mov dword [esi + 0x1e4], eax
sub esp, 0x3e4
mov ecx, esp
mov dword [esi + 0x1ec], ecx
mov eax, dword [esi + 0x69fc]
mov dword [esi + 0x1e8], eax
add ecx, 0x10
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044b5c0
mov edx, dword [esi + 0x24c]
mov ecx, dword [esi + 0x1e8]
mov eax, dword [esi + 0x1ec]
mov edx, dword [edx]
mov edi, dword [edi]
mov dword [eax], 0xc61c3fec
mov dword [eax + 4], 0x461c3fec
mov dword [eax + 8], edi
mov dword [eax + 0xc], edx
mov dword [eax + 0x3e0], ecx
mov dword [esi + 0x6ad0], 0xb
call fcn.00429e70
add esp, 0x3e4
fstp dword [esi + 0x29c]
movss xmm0, dword [esi + 0x29c]
movss dword [esi + 0x1f0], xmm0
jmp 0x42f508
mov eax, dword [esi + 0x23c]
movss xmm0, dword [esi + 0x1f0]
mov ecx, dword [esi + 0x1e4]
mov esp, ecx
movss dword [eax + 8], xmm0
jmp 0x42f528
sub esp, 4
mov dword [esp], 0xffffffff
call fcn.00401140
add esp, 4
mov cx, ax
mov eax, dword [esi + 0x23c]
mov word [esi + 0x69fa], cx
mov cx, word [esi + 0x69fa]
mov word [eax + 4], cx
sub esp, 4
mov dword [esp], 0xffffffff
call fcn.00401140
mov ecx, dword [esi + 0x23c]
add esp, 4
mov dx, ax
mov eax, dword [esi + 0x25c]
mov word [esi + 0x69f8], dx
mov dx, word [esi + 0x69f8]
mov word [ecx + 6], dx
mov edx, dword [eax]
mov byte [esi + 0x69f4], dl
mov edx, dword [ecx + 4]
mov dword [esi + 0x69ec], edx
mov ecx, dword [ecx + 8]
mov dword [esi + 0x69f0], ecx
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x69eb], al
test byte [esi + 0x69eb], 1
je 0x42f682
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x69ec]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x69d0]
mov dword [esi + 0x1e0], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x1e0]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x69c8]
mov dword [eax], ecx
mov ecx, 0x4c56f4
call fcn.0044c730
jmp 0x42f613
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044b6b0
jmp 0x42f62f
lea ecx, [0x4c56f4]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x42f67d
mov ecx, 0x4c5704
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x69c0], xmm0
lea ecx, [0x4c56f4]
lea eax, [esi + 0x69c0]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5704]
call fcn.0044b770
jmp 0x42f73d
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x69ec]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x69a8]
mov dword [esi + 0x1dc], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x1dc]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x69a0]
mov dword [eax], ecx
mov ecx, 0x4c56fc
call fcn.0044c730
jmp 0x42f6ce
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044b6b0
jmp 0x42f6ea
lea ecx, [0x4c56fc]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x42f738
mov ecx, 0x4c5718
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x6998], xmm0
lea ecx, [0x4c56fc]
lea eax, [esi + 0x6998]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5718]
call fcn.0044b770
jmp 0x42f73d
mov byte [esi + 0x6a0b], 1
mov dword [esi + 0x6aa8], 1
test byte [esi + 0x6a0b], 1
jne 0x42f766
mov ecx, dword [esi + 0x23c]
call fcn.0044a600
jmp 0x433c2d
mov dword [esi + 0x6994], 0
mov dword [esi + 0x6990], 0
movss xmm0, dword [0x48a5dc]
movss dword [esi + 0x698c], xmm0
lea ecx, [esi + 0x6794]
call fcn.00448fd0
lea ecx, [esi + 0x5fc0]
call fcn.0044b890
mov dword [esi + 0x5fc0], 0
mov dword [esi + 0x5fbc], 0
lea eax, [esi + 0x403c]
add eax, 0x1f80
mov dword [esi + 0x1d4], eax
lea eax, [esi + 0x403c]
mov dword [esi + 0x1d8], eax
mov ecx, dword [esi + 0x1d8]
mov dword [esi + 0x1d0], ecx
call fcn.00448fd0
mov ecx, dword [esi + 0x1d4]
mov eax, dword [esi + 0x1d0]
add eax, 0x1f8
cmp eax, ecx
mov dword [esi + 0x1d8], eax
jne 0x42f7d6
mov eax, dword [esi + 0x268]
mov dword [esi + 0x3868], 0
mov dword [esi + 0x3864], 0
mov byte [esi + 0x3863], 0
test byte [eax], 1
jne 0x42fdec
mov eax, dword [esi + 0x26c]
test byte [eax], 1
jne 0x42fdec
mov eax, dword [esi + 0x274]
test byte [eax], 1
jne 0x42fdec
movsx eax, byte [0x49812c]
cmp eax, 6
je 0x42f8ae
movsx eax, byte [0x49812c]
cmp eax, 7
je 0x42f8ae
movsx eax, byte [0x49812c]
cmp eax, 8
je 0x42f8ae
movsx eax, byte [0x49812c]
cmp eax, 0xa
je 0x42f8ae
movsx eax, byte [0x49812c]
cmp eax, 0xc
je 0x42f8ae
movsx eax, byte [0x49812c]
cmp eax, 0xe
jne 0x42fde2
lea ecx, [esi + 0x308c]
call fcn.0044b890
mov dword [esi + 0x308c], 0
mov dword [esi + 0x6ad0], 9
lea ecx, [esi + 0x2cbc]
call fcn.004013f0
jmp 0x42f8dd
mov ecx, dword [esi + 0x254]
mov al, byte [ecx + 0x3cd]
mov dl, byte [ecx + 0x3cc]
mov ah, byte [ecx + 0x3cb]
mov dh, byte [ecx + 0x3ca]
mov edi, ecx
add edi, 0x380
mov ebx, ecx
add ebx, 0x3a9
add ecx, 0x388
mov dword [esi + 0x1c8], ecx
lea ecx, [esi + 0x2cbc]
and dh, 1
and ah, 1
mov byte [esi + 0x1cf], ah
and dl, 1
and al, 1
mov byte [esi + 0x1ce], al
mov eax, dword [esi + 0x254]
sub esp, 0x20
mov dword [esp], eax
mov eax, dword [esi + 0x1c8]
mov dword [esp + 4], eax
mov al, byte [esi + 0x1ce]
mov ah, byte [esi + 0x1cf]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
movzx edi, dh
mov dword [esp + 0x10], edi
movzx edi, ah
mov dword [esp + 0x14], edi
movzx edx, dl
mov dword [esp + 0x18], edx
movzx eax, al
mov dword [esp + 0x1c], eax
call fcn.00449030
movss xmm0, dword [0x48a610]
ucomiss xmm0, dword [esi + 0x6a94]
jbe 0x42fd90
mov ecx, dword [esi + 0x260]
mov edx, dword [esi + 0x270]
mov edi, dword [esi + 0x278]
mov ebx, dword [esi + 0x27c]
mov byte [esi + 0x2cbb], 0
mov byte [esi + 0x2cba], 1
mov byte [esi + 0x2cb9], 0
mov eax, esp
mov dword [esi + 0x1a0], eax
push eax
sub esp, 0x41c
mov eax, esp
mov dword [esi + 0x1a4], eax
mov eax, dword [esi + 0x288]
mov eax, dword [eax]
mov dword [esi + 0x1a8], eax
mov eax, dword [esi + 0x284]
mov eax, dword [eax]
mov dword [esi + 0x1ac], eax
mov al, byte [esi + 0x2cb9]
mov byte [esi + 0x1b3], al
mov eax, dword [esi + 0x25c]
mov ebx, dword [ebx]
mov dword [esi + 0x1b4], ebx
mov edi, dword [edi]
mov dword [esi + 0x1b8], edi
mov edx, dword [edx]
mov dword [esi + 0x1bc], edx
mov dl, byte [esi + 0x2cbb]
mov byte [esi + 0x1c1], dl
mov dl, byte [esi + 0x2cba]
mov byte [esi + 0x1c2], dl
mov cl, byte [ecx]
mov byte [esi + 0x1c3], cl
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0x1c4], eax
movsx eax, byte [0x49812c]
cmp eax, 6
jne 0x42fa72
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 2
mov dword [esi + 0x19c], eax
jmp 0x42fb5a
movsx eax, byte [0x49812c]
cmp eax, 8
jne 0x42fa9b
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 4
mov dword [esi + 0x198], eax
jmp 0x42fb4e
movsx eax, byte [0x49812c]
cmp eax, 0xa
jne 0x42fac4
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 6
mov dword [esi + 0x194], eax
jmp 0x42fb42
movsx eax, byte [0x49812c]
cmp eax, 0xc
jne 0x42faed
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 8
mov dword [esi + 0x190], eax
jmp 0x42fb36
movsx eax, byte [0x49812c]
cmp eax, 0xe
jne 0x42fb16
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 0xa
mov dword [esi + 0x18c], eax
jmp 0x42fb2a
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 0xc
mov dword [esi + 0x18c], eax
mov eax, dword [esi + 0x18c]
mov dword [esi + 0x190], eax
mov eax, dword [esi + 0x190]
mov dword [esi + 0x194], eax
mov eax, dword [esi + 0x194]
mov dword [esi + 0x198], eax
mov eax, dword [esi + 0x198]
mov dword [esi + 0x19c], eax
mov ecx, dword [esi + 0x1a4]
mov ebx, dword [esi + 0x248]
mov edi, dword [esi + 0x24c]
mov eax, dword [esi + 0x19c]
mov dword [esi + 0x188], eax
add ecx, 0x18
sub esp, 4
mov eax, esp
lea edx, [esi + 0x2cbc]
mov dword [eax], edx
call fcn.0044b5c0
mov edx, dword [esi + 0x250]
mov ecx, dword [esi + 0x244]
mov eax, dword [esi + 0x1a4]
mov dl, byte [edx]
mov edi, dword [edi]
mov ebx, dword [ebx]
movss xmm1, dword [ecx]
movss xmm2, dword [0x48a65c]
movaps xmm0, xmm1
addss xmm0, xmm2
movaps xmm2, xmmword [0x48a640]
pxor xmm0, xmm2
pxor xmm1, xmm2
lea ecx, [esi + 0x24e4]
mov dword [eax], ecx
mov ecx, dword [esi + 0x188]
movss dword [eax + 4], xmm1
movss dword [eax + 8], xmm0
mov dword [eax + 0xc], ebx
mov bl, byte [esi + 0x1b3]
mov bh, byte [esi + 0x1c1]
mov dword [eax + 0x10], edi
mov edi, dword [esi + 0x1b4]
mov byte [eax + 0x14], dl
mov edx, dword [esi + 0x1ac]
mov dword [eax + 0x3e8], ecx
mov ecx, dword [esi + 0x1c4]
mov dword [eax + 0x3ec], ecx
mov cl, byte [esi + 0x1c2]
mov ch, byte [esi + 0x1c3]
mov byte [eax + 0x3f0], ch
mov byte [eax + 0x3f4], 0
and cl, 1
mov byte [eax + 0x3f8], cl
mov ecx, dword [esi + 0x1bc]
and bh, 1
mov byte [eax + 0x3fc], bh
mov dword [eax + 0x400], ecx
mov ecx, dword [esi + 0x1b8]
mov byte [eax + 0x404], 0
mov byte [eax + 0x408], 0
mov dword [eax + 0x40c], ecx
mov ecx, dword [esi + 0x1a8]
mov dword [eax + 0x410], edi
and bl, 1
mov byte [eax + 0x414], bl
mov dword [eax + 0x418], edx
mov dword [eax + 0x41c], ecx
mov dword [esi + 0x6ad0], 0xa
call fcn.0042e5f0
add esp, 0x420
jmp 0x42fc9e
mov eax, dword [esi + 0x1a0]
mov esp, eax
lea ecx, [esi + 0x308c]
lea eax, [esi + 0x24e4]
sub esp, 4
mov dword [esp], eax
call fcn.0044b910
lea ecx, [esi + 0x24e4]
call fcn.0044a600
mov dword [esi + 0x24e0], 0
mov eax, dword [esi + 0x24e0]
cmp eax, dword [esi + 0x308c]
jge 0x42fd18
mov eax, dword [esi + 0x24e0]
movss xmm0, dword [0x48a638]
mulss xmm0, dword [esi + eax*8 + 0x3094]
movss dword [esi + eax*8 + 0x3094], xmm0
mov eax, dword [esi + 0x24e0]
add eax, 1
mov dword [esi + 0x24e0], eax
jmp 0x42fcd2
mov eax, dword [esi + 0x244]
movss xmm0, dword [esi + 0x3094]
ucomiss xmm0, dword [eax]
jbe 0x42fd8b
mov eax, dword [esi + 0x244]
mov dword [esi + 0x5fc0], 1
movss xmm0, dword [eax]
movss dword [esi + 0x5fc8], xmm0
mov byte [esi + 0x24de], 0xff
mov byte [esi + 0x24df], 0xff
mov ax, word [esi + 0x24de]
mov word [esi + 0x5fc4], ax
mov ax, word [esi + 0x24de]
mov word [esi + 0x5fc6], ax
mov byte [esi + 0x3863], 1
mov dword [esi + 0x6aa8], 8
jmp 0x42fd9a
jmp 0x42fd90
mov dword [esi + 0x6aa8], 0
lea ecx, [esi + 0x2cbc]
call fcn.0044a5b0
lea ecx, [esi + 0x308c]
call fcn.0044a600
mov eax, dword [esi + 0x6aa8]
mov dword [esi + 0x184], eax
test eax, eax
je 0x42fddd
jmp 0x42fdc9
mov eax, dword [esi + 0x184]
sub eax, 8
je 0x4339fe
jmp 0x433bdf
jmp 0x42fde2
mov dword [esi + 0x6ad0], 3
mov edx, dword [esi + 0x254]
mov edi, dword [esi + 0x264]
mov ebx, dword [esi + 0x270]
mov eax, dword [esi + 0x260]
mov ecx, dword [esi + 0x25c]
mov ecx, dword [ecx]
mov dword [esi + 0x24d8], ecx
mov ecx, esp
mov dword [esi + 0x160], ecx
sub esp, 0x414
mov ecx, esp
mov dword [esi + 0x16c], ecx
movsx eax, byte [eax]
mov dword [esi + 0x180], eax
mov eax, dword [esi + 0x250]
mov ebx, dword [ebx]
mov dword [esi + 0x168], ebx
movss xmm0, dword [esi + 0x698c]
movss dword [esi + 0x164], xmm0
mov bl, byte [edi]
mov edi, dword [esi + 0x24d8]
mov bh, byte [esi + 0x6a9e]
mov al, byte [eax]
mov byte [esi + 0x17f], al
mov eax, dword [esi + 0x24c]
mov eax, dword [eax]
mov dword [esi + 0x178], eax
mov eax, dword [esi + 0x248]
mov eax, dword [eax]
mov dword [esi + 0x174], eax
add ecx, 0x10
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044b5c0
movss xmm0, dword [esi + 0x164]
mov edx, dword [esi + 0x168]
mov eax, dword [esi + 0x16c]
mov ecx, dword [esi + 0x6a98]
mov dword [esi + 0x170], ecx
lea ecx, [esi + 0x6794]
mov dword [eax], ecx
lea ecx, [esi + 0x386c]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x403c]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0x170]
mov dword [eax + 0xc], ecx
lea ecx, [esi + 0x5fbc]
mov dword [eax + 0x3e0], ecx
lea ecx, [esi + 0x3868]
mov dword [eax + 0x3e4], ecx
lea ecx, [esi + 0x3864]
mov dword [eax + 0x3e8], ecx
mov ecx, dword [esi + 0x174]
mov dword [eax + 0x3ec], ecx
mov ecx, dword [esi + 0x178]
mov dword [eax + 0x3f0], ecx
mov cl, byte [esi + 0x17f]
mov byte [eax + 0x3f4], cl
mov ecx, dword [esi + 0x180]
and bh, 1
mov byte [eax + 0x3f8], bh
mov dword [eax + 0x3fc], edi
mov byte [eax + 0x400], 0
and bl, 1
mov byte [eax + 0x404], bl
movss dword [eax + 0x408], xmm0
mov dword [eax + 0x40c], edx
mov dword [eax + 0x410], ecx
mov dword [esi + 0x6ad0], 3
call fcn.00425ad0
add esp, 0x414
jmp 0x42ff6e
mov eax, dword [esi + 0x160]
mov esp, eax
cmp dword [esi + 0x5fbc], 0
jle 0x430a2e
mov eax, dword [esi + 0x25c]
mov eax, dword [eax]
cmp dword [eax*4 + 0x4c5564], 0
jle 0x430a29
mov byte [esi + 0x24d7], 0
mov dword [esi + 0x24d0], 0
mov eax, dword [esi + 0x3864]
mov dword [esi + 0x24cc], eax
mov eax, dword [esi + 0x24cc]
cmp eax, dword [esi + 0x3868]
jge 0x430198
mov dword [esi + 0x24c8], 0
mov ecx, dword [esi + 0x25c]
mov eax, dword [esi + 0x24c8]
mov ecx, dword [ecx]
cmp eax, dword [ecx*4 + 0x4c5564]
jge 0x430184
mov ecx, dword [esi + 0x25c]
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x24c8]
movsx eax, byte [eax + ecx*8]
cmp eax, 0xffffffff
je 0x430170
mov ecx, dword [esi + 0x25c]
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x24c8]
movsx eax, byte [eax + ecx*8 + 1]
cmp eax, 0xffffffff
je 0x430170
mov ecx, dword [esi + 0x25c]
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x24c8]
movsx eax, byte [eax + ecx*8 + 2]
cmp eax, 0xffffffff
je 0x430170
mov ecx, dword [esi + 0x25c]
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x24c8]
movsx eax, byte [eax + ecx*8 + 3]
cmp eax, 0xffffffff
je 0x430170
mov edx, dword [esi + 0x25c]
mov eax, dword [esi + 0x24cc]
movsx eax, byte [esi + eax*8 + 0x386c]
lea ecx, [0x49a5d4]
imul edx, dword [edx], 0x6e0
add ecx, edx
mov edx, dword [esi + 0x24c8]
movsx ecx, byte [ecx + edx*8]
cmp eax, ecx
jne 0x43016b
mov edx, dword [esi + 0x25c]
mov eax, dword [esi + 0x24cc]
movsx eax, byte [esi + eax*8 + 0x386d]
lea ecx, [0x49a5d4]
imul edx, dword [edx], 0x6e0
add ecx, edx
mov edx, dword [esi + 0x24c8]
movsx ecx, byte [ecx + edx*8 + 1]
cmp eax, ecx
jne 0x43016b
mov edx, dword [esi + 0x25c]
mov eax, dword [esi + 0x24cc]
movsx eax, byte [esi + eax*8 + 0x386e]
lea ecx, [0x49a5d4]
imul edx, dword [edx], 0x6e0
add ecx, edx
mov edx, dword [esi + 0x24c8]
movsx ecx, byte [ecx + edx*8 + 2]
cmp eax, ecx
jne 0x43016b
mov edx, dword [esi + 0x25c]
mov eax, dword [esi + 0x24cc]
movsx eax, byte [esi + eax*8 + 0x386f]
lea ecx, [0x49a5d4]
imul edx, dword [edx], 0x6e0
add ecx, edx
mov edx, dword [esi + 0x24c8]
movsx ecx, byte [ecx + edx*8 + 3]
cmp eax, ecx
jne 0x43016b
mov byte [esi + 0x24d7], 1
jmp 0x430184
jmp 0x430170
mov eax, dword [esi + 0x24c8]
add eax, 1
mov dword [esi + 0x24c8], eax
jmp 0x42ffd2
mov eax, dword [esi + 0x24cc]
add eax, 1
mov dword [esi + 0x24cc], eax
jmp 0x42ffb6
test byte [esi + 0x24d7], 1
je 0x4305d1
cmp dword [esi + 0x5fbc], 0
jle 0x4305d1
mov dword [esi + 0x24c4], 0xffffffff
lea eax, [esi + 0x2154]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x370
call fcn.00465f20
add esp, 0xc
lea eax, [esi + 0x1de4]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x370
call fcn.00465f20
add esp, 0xc
mov dword [esi + 0x1de0], 0
mov ecx, dword [esi + 0x25c]
mov eax, dword [esi + 0x1de0]
mov ecx, dword [ecx]
cmp eax, dword [ecx*4 + 0x4c5564]
jge 0x430424
mov eax, dword [esi + 0x3864]
mov dword [esi + 0x1ddc], eax
mov eax, dword [esi + 0x1ddc]
cmp eax, dword [esi + 0x3868]
jge 0x430410
mov ecx, dword [esi + 0x25c]
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x1de0]
movsx eax, byte [eax + ecx*8]
cmp eax, 0xffffffff
je 0x4303fc
mov ecx, dword [esi + 0x25c]
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x1de0]
movsx eax, byte [eax + ecx*8 + 1]
cmp eax, 0xffffffff
je 0x4303fc
mov ecx, dword [esi + 0x25c]
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x1de0]
movsx eax, byte [eax + ecx*8 + 2]
cmp eax, 0xffffffff
je 0x4303fc
mov ecx, dword [esi + 0x25c]
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x1de0]
movsx eax, byte [eax + ecx*8 + 3]
cmp eax, 0xffffffff
je 0x4303fc
mov edx, dword [esi + 0x25c]
mov eax, dword [esi + 0x1ddc]
movsx eax, byte [esi + eax*8 + 0x386c]
lea ecx, [0x49a5d4]
imul edx, dword [edx], 0x6e0
add ecx, edx
mov edx, dword [esi + 0x1de0]
movsx ecx, byte [ecx + edx*8]
cmp eax, ecx
jne 0x4303f7
mov edx, dword [esi + 0x25c]
mov eax, dword [esi + 0x1ddc]
movsx eax, byte [esi + eax*8 + 0x386d]
lea ecx, [0x49a5d4]
imul edx, dword [edx], 0x6e0
add ecx, edx
mov edx, dword [esi + 0x1de0]
movsx ecx, byte [ecx + edx*8 + 1]
cmp eax, ecx
jne 0x4303f7
mov edx, dword [esi + 0x25c]
mov eax, dword [esi + 0x1ddc]
movsx eax, byte [esi + eax*8 + 0x386e]
lea ecx, [0x49a5d4]
imul edx, dword [edx], 0x6e0
add ecx, edx
mov edx, dword [esi + 0x1de0]
movsx ecx, byte [ecx + edx*8 + 2]
cmp eax, ecx
jne 0x4303f7
mov edx, dword [esi + 0x25c]
mov eax, dword [esi + 0x1ddc]
movsx eax, byte [esi + eax*8 + 0x386f]
lea ecx, [0x49a5d4]
imul edx, dword [edx], 0x6e0
add ecx, edx
mov edx, dword [esi + 0x1de0]
movsx ecx, byte [ecx + edx*8 + 3]
cmp eax, ecx
jne 0x4303f7
mov eax, dword [esi + 0x24c4]
add eax, 1
mov dword [esi + 0x24c4], eax
mov ecx, dword [esi + 0x1ddc]
mov eax, dword [esi + 0x24c4]
mov dword [esi + eax*4 + 0x2154], ecx
mov ecx, dword [esi + 0x1de0]
mov eax, dword [esi + 0x24c4]
mov dword [esi + eax*4 + 0x1de4], ecx
jmp 0x430410
jmp 0x4303fc
mov eax, dword [esi + 0x1ddc]
add eax, 1
mov dword [esi + 0x1ddc], eax
jmp 0x430239
mov eax, dword [esi + 0x1de0]
add eax, 1
mov dword [esi + 0x1de0], eax
jmp 0x430212
mov eax, dword [esi + 0x3864]
add eax, dword [esi + 0x24c4]
add eax, 1
mov dword [esi + 0x24d0], eax
cmp dword [esi + 0x24c4], 0
jl 0x4305cc
mov dword [esi + 0x1dd8], 0
mov eax, dword [esi + 0x1dd8]
cmp eax, dword [esi + 0x24c4]
jg 0x4305c7
mov eax, dword [esi + 0x1dd8]
mov eax, dword [esi + eax*4 + 0x2154]
mov dword [esi + 0x1dd4], eax
mov eax, dword [esi + 0x1dd4]
mov ecx, dword [esi + 0x3864]
add ecx, dword [esi + 0x1dd8]
cmp eax, ecx
jle 0x4304ce
mov ecx, dword [esi + 0x1dd4]
sub ecx, 1
mov eax, dword [esi + 0x1dd4]
mov edx, dword [esi + ecx*8 + 0x386c]
mov dword [esi + eax*8 + 0x386c], edx
mov ecx, dword [esi + ecx*8 + 0x3870]
mov dword [esi + eax*8 + 0x3870], ecx
mov eax, dword [esi + 0x1dd4]
add eax, 0xffffffff
mov dword [esi + 0x1dd4], eax
jmp 0x430475
mov ecx, dword [esi + 0x25c]
mov eax, dword [esi + 0x3864]
add eax, dword [esi + 0x1dd8]
xorps xmm0, xmm0
movss dword [esi + eax*8 + 0x3870], xmm0
lea eax, [0x49a5d4]
imul edx, dword [ecx], 0x6e0
add eax, edx
mov edx, dword [esi + 0x1dd8]
mov edx, dword [esi + edx*4 + 0x1de4]
mov dl, byte [eax + edx*8]
mov eax, dword [esi + 0x3864]
add eax, dword [esi + 0x1dd8]
mov byte [esi + eax*8 + 0x386c], dl
lea eax, [0x49a5d4]
imul edx, dword [ecx], 0x6e0
add eax, edx
mov edx, dword [esi + 0x1dd8]
mov edx, dword [esi + edx*4 + 0x1de4]
mov dl, byte [eax + edx*8 + 1]
mov eax, dword [esi + 0x3864]
add eax, dword [esi + 0x1dd8]
mov byte [esi + eax*8 + 0x386d], dl
lea eax, [0x49a5d4]
imul edx, dword [ecx], 0x6e0
add eax, edx
mov edx, dword [esi + 0x1dd8]
mov edx, dword [esi + edx*4 + 0x1de4]
mov dl, byte [eax + edx*8 + 2]
mov eax, dword [esi + 0x3864]
add eax, dword [esi + 0x1dd8]
mov byte [esi + eax*8 + 0x386e], dl
lea eax, [0x49a5d4]
imul ecx, dword [ecx], 0x6e0
add eax, ecx
mov ecx, dword [esi + 0x1dd8]
mov ecx, dword [esi + ecx*4 + 0x1de4]
mov cl, byte [eax + ecx*8 + 3]
mov eax, dword [esi + 0x3864]
add eax, dword [esi + 0x1dd8]
mov byte [esi + eax*8 + 0x386f], cl
mov eax, dword [esi + 0x1dd8]
add eax, 1
mov dword [esi + 0x1dd8], eax
jmp 0x430450
jmp 0x4305cc
jmp 0x4305d1
mov eax, dword [esi + 0x24d0]
mov dword [esi + 0x6994], eax
mov eax, dword [esi + 0x6994]
mov dword [esi + 0x1cd4], eax
mov eax, dword [esi + 0x1cd4]
cmp eax, dword [esi + 0x3868]
jge 0x43061d
mov eax, dword [esi + 0x1cd4]
mov byte [esi + eax + 0x1cda], 0
mov eax, dword [esi + 0x1cd4]
add eax, 1
mov dword [esi + 0x1cd4], eax
jmp 0x4305e9
mov eax, dword [esi + 0x6994]
mov dword [esi + 0x1cd0], eax
mov eax, dword [esi + 0x1cd0]
cmp eax, dword [esi + 0x3868]
jge 0x43090f
mov eax, dword [esi + 0x1cd0]
mov al, byte [esi + eax*8 + 0x386d]
mov byte [esi + 0x1ccf], al
mov eax, dword [esi + 0x1cd0]
mov al, byte [esi + eax*8 + 0x386c]
mov byte [esi + 0x1cce], al
movsx edx, byte [esi + 0x1ccf]
movsx ecx, byte [esi + 0x1cce]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.00401160
add esp, 8
mov word [esi + 0x1cca], ax
mov ax, word [esi + 0x1cca]
mov word [esi + 0x1ccc], ax
mov eax, dword [esi + 0x1cd0]
mov al, byte [esi + eax*8 + 0x386e]
mov byte [esi + 0x1cc8], al
mov eax, dword [esi + 0x1cd0]
mov al, byte [esi + eax*8 + 0x386f]
mov byte [esi + 0x1cc9], al
mov dword [esi + 0x6ad0], 3
lea ecx, [esi + 0x18f8]
call fcn.004013f0
jmp 0x4306d6
mov eax, dword [esi + 0x254]
mov ebx, eax
add ebx, 0x380
mov edi, eax
add edi, 0x3a9
mov edx, eax
add edx, 0x388
movzx ecx, byte [eax + 0x3ca]
mov dword [esi + 0x158], ecx
movzx ecx, byte [eax + 0x3cb]
mov dword [esi + 0x154], ecx
movzx ecx, byte [eax + 0x3cc]
mov dword [esi + 0x150], ecx
movzx ecx, byte [eax + 0x3cd]
sub esp, 0x20
and ecx, 1
mov eax, esp
mov dword [esi + 0x14c], eax
mov dword [eax + 0x1c], ecx
mov ecx, dword [esi + 0x150]
and ecx, 1
mov dword [eax + 0x18], ecx
mov ecx, dword [esi + 0x154]
and ecx, 1
mov dword [eax + 0x14], ecx
mov ecx, dword [esi + 0x158]
and ecx, 1
mov dword [eax + 0x10], ecx
mov ecx, dword [esi + 0x254]
mov dword [eax + 0xc], ebx
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
lea ecx, [esi + 0x18f8]
mov dword [esi + 0x15c], ecx
call fcn.00449030
mov ecx, dword [esi + 0x15c]
mov ax, word [esi + 0x1cc8]
mov word [esi + 0x18f4], ax
mov ax, word [esi + 0x1ccc]
mov word [esi + 0x18f0], ax
mov dword [esi + 0x6ad0], 8
sub esp, 8
mov dx, word [esi + 0x18f4]
mov eax, esp
mov word [eax + 4], dx
mov dx, word [esi + 0x18f0]
mov word [eax], dx
call fcn.004491e0
jmp 0x4307c9
mov eax, dword [esi + 0x254]
mov cx, word [esi + 0x1ccc]
mov word [esi + 0x1c78], cx
mov cx, word [esi + 0x1cc8]
mov word [esi + 0x1c7a], cx
movsx ecx, byte [esi + 0x1ccf]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x1cce]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x1c7c], eax
mov ecx, dword [esi + 0x6a98]
movzx ebx, byte [esi + 0x1cc2]
movzx eax, byte [esi + 0x1cc3]
mov dword [esi + 0x140], eax
movzx eax, byte [esi + 0x1cc4]
mov dword [esi + 0x13c], eax
movzx eax, byte [esi + 0x1cc5]
mov dword [esi + 0x134], eax
sub esp, 4
mov eax, esp
mov dword [eax], ecx
call fcn.00415a90
mov ecx, dword [esi + 0x134]
add esp, 4
mov edi, eax
movsd xmm0, qword [esi + 0x1c78]
movsd qword [esi + 0x18e8], xmm0
lea edx, [esi + 0x1ca1]
lea eax, [esi + 0x1c80]
mov dword [esi + 0x144], eax
sub esp, 0x28
movsd xmm0, qword [esi + 0x18e8]
mov eax, esp
mov dword [esi + 0x138], eax
movsd qword [eax + 0xc], xmm0
and ecx, 1
mov dword [eax + 0x24], ecx
mov ecx, dword [esi + 0x13c]
and ecx, 1
mov dword [eax + 0x20], ecx
mov ecx, dword [esi + 0x140]
and ecx, 1
mov dword [eax + 0x1c], ecx
mov ecx, dword [esi + 0x144]
and ebx, 1
mov dword [eax + 0x18], ebx
mov dword [eax + 0x14], edi
mov dword [eax + 8], edx
mov dword [eax + 4], ecx
lea ecx, [esi + 0x18f8]
mov dword [eax], ecx
call fcn.0040aad0
add esp, 0x28
mov byte [esi + 0x14b], al
jmp 0x4308da
mov cl, byte [esi + 0x14b]
mov eax, dword [esi + 0x1cd0]
and cl, 1
mov byte [esi + eax + 0x1cda], cl
lea ecx, [esi + 0x18f8]
call fcn.0044a5b0
mov eax, dword [esi + 0x1cd0]
add eax, 1
mov dword [esi + 0x1cd0], eax
jmp 0x430629
mov eax, dword [esi + 0x6994]
mov dword [esi + 0x6990], eax
mov eax, dword [esi + 0x6994]
mov dword [esi + 0x18e4], eax
mov eax, dword [esi + 0x18e4]
cmp eax, dword [esi + 0x3868]
jge 0x430a24
mov eax, dword [esi + 0x18e4]
test byte [esi + eax + 0x1cda], 1
je 0x430a10
mov eax, dword [esi + 0x18e4]
mov ecx, dword [esi + eax*8 + 0x386c]
mov dword [esi + 0x18dc], ecx
mov eax, dword [esi + eax*8 + 0x3870]
mov dword [esi + 0x18e0], eax
mov eax, dword [esi + 0x18e4]
sub eax, 1
mov dword [esi + 0x18d8], eax
mov eax, dword [esi + 0x18d8]
cmp eax, dword [esi + 0x6990]
jl 0x4309ca
mov ecx, dword [esi + 0x18d8]
mov eax, dword [esi + 0x18d8]
mov edx, dword [esi + ecx*8 + 0x386c]
mov dword [esi + eax*8 + 0x3874], edx
mov ecx, dword [esi + ecx*8 + 0x3870]
mov dword [esi + eax*8 + 0x3878], ecx
mov eax, dword [esi + 0x18d8]
add eax, 0xffffffff
mov dword [esi + 0x18d8], eax
jmp 0x43097c
mov eax, dword [esi + 0x18e4]
cmp eax, dword [esi + 0x6990]
je 0x430a0b
mov eax, dword [esi + 0x6990]
mov ecx, dword [esi + 0x18dc]
mov dword [esi + eax*8 + 0x386c], ecx
mov ecx, dword [esi + 0x18e0]
mov dword [esi + eax*8 + 0x3870], ecx
mov eax, dword [esi + 0x6990]
add eax, 1
mov dword [esi + 0x6990], eax
jmp 0x430a10
mov eax, dword [esi + 0x18e4]
add eax, 1
mov dword [esi + 0x18e4], eax
jmp 0x430927
jmp 0x430a29
jmp 0x430a2e
cmp dword [esi + 0x5fbc], 1
jne 0x430a71
movsx eax, byte [esi + 0x386c]
movsx ecx, byte [esi + 0x386e]
cmp eax, ecx
jne 0x430a71
movsx eax, byte [esi + 0x386d]
movsx ecx, byte [esi + 0x386f]
cmp eax, ecx
jne 0x430a71
mov dword [esi + 0x5fbc], 0
cmp dword [esi + 0x5fbc], 0
jle 0x433658
cmp dword [esi + 0x5fbc], 0xfa
jle 0x430add
mov ecx, dword [esi + 0x5fbc]
mov dword [esi + 0x6ad0], 3
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], ecx
mov dword [eax + 8], 0xfa
mov dword [eax], str.increase_POOL_SIZE__d__d_n
call fcn.0044be80
add esp, 0xc
jmp 0x430ac0
sub esp, 4
mov eax, esp
mov dword [eax], str.PAUSE
call fcn.0046944e
add esp, 4
jmp 0x430ad8
jmp 0x430add
mov dword [esi + 0x18d4], 0
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x3868]
mov byte [esi + 0x133], al
jge 0x430b21
mov eax, dword [esi + 0x244]
mov ecx, dword [esi + 0x240]
movss xmm1, dword [ecx]
movss xmm0, dword [eax]
ucomiss xmm0, xmm1
seta al
mov byte [esi + 0x133], al
mov al, byte [esi + 0x133]
test al, 1
jne 0x430b34
jmp 0x432d57
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386c]
cmp eax, 0
jl 0x430bec
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386c]
cmp eax, 7
jg 0x430bec
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386d]
cmp eax, 0
jl 0x430bec
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386d]
cmp eax, 7
jg 0x430bec
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386e]
cmp eax, 0
jl 0x430bec
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386e]
cmp eax, 7
jg 0x430bec
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386f]
cmp eax, 0
jl 0x430bec
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386f]
cmp eax, 7
jle 0x430c05
mov dword [esi + 0x3868], 0
mov dword [esi + 0x5fbc], 0
jmp 0x432d57
mov eax, dword [esi + 0x18d4]
mov al, byte [esi + eax*8 + 0x386d]
mov byte [esi + 0x18d3], al
mov eax, dword [esi + 0x18d4]
mov al, byte [esi + eax*8 + 0x386c]
mov byte [esi + 0x18d2], al
movsx edx, byte [esi + 0x18d3]
movsx ecx, byte [esi + 0x18d2]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.00401160
add esp, 8
mov word [esi + 0x18ce], ax
mov ax, word [esi + 0x18ce]
mov word [esi + 0x18d0], ax
mov eax, dword [esi + 0x18d4]
mov al, byte [esi + eax*8 + 0x386e]
mov byte [esi + 0x18cc], al
mov eax, dword [esi + 0x18d4]
mov al, byte [esi + eax*8 + 0x386f]
mov byte [esi + 0x18cd], al
mov dword [esi + 0x6ad0], 3
lea ecx, [esi + 0x14fc]
call fcn.004013f0
jmp 0x430ca0
mov eax, dword [esi + 0x254]
mov ebx, eax
add ebx, 0x380
mov edi, eax
add edi, 0x3a9
mov edx, eax
add edx, 0x388
movzx ecx, byte [eax + 0x3ca]
mov dword [esi + 0x128], ecx
movzx ecx, byte [eax + 0x3cb]
mov dword [esi + 0x124], ecx
movzx ecx, byte [eax + 0x3cc]
mov dword [esi + 0x120], ecx
movzx ecx, byte [eax + 0x3cd]
sub esp, 0x20
and ecx, 1
mov eax, esp
mov dword [esi + 0x11c], eax
mov dword [eax + 0x1c], ecx
mov ecx, dword [esi + 0x120]
and ecx, 1
mov dword [eax + 0x18], ecx
mov ecx, dword [esi + 0x124]
and ecx, 1
mov dword [eax + 0x14], ecx
mov ecx, dword [esi + 0x128]
and ecx, 1
mov dword [eax + 0x10], ecx
mov ecx, dword [esi + 0x254]
mov dword [eax + 0xc], ebx
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
lea ecx, [esi + 0x14fc]
mov dword [esi + 0x12c], ecx
call fcn.00449030
mov ecx, dword [esi + 0x12c]
mov ax, word [esi + 0x18cc]
mov word [esi + 0x14f8], ax
mov ax, word [esi + 0x18d0]
mov word [esi + 0x14f4], ax
mov dword [esi + 0x6ad0], 6
sub esp, 8
mov dx, word [esi + 0x14f8]
mov eax, esp
mov word [eax + 4], dx
mov dx, word [esi + 0x14f4]
mov word [eax], dx
call fcn.004491e0
jmp 0x430d93
mov eax, dword [esi + 0x254]
mov cx, word [esi + 0x18d0]
mov word [esi + 0x187c], cx
mov cx, word [esi + 0x18cc]
mov word [esi + 0x187e], cx
movsx edx, byte [esi + 0x18d3]
shl edx, 5
mov ecx, eax
add ecx, edx
movsx edx, byte [esi + 0x18d2]
mov ecx, dword [ecx + edx*4]
mov dword [esi + 0x1880], ecx
movsx ecx, byte [esi + 0x18cd]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18cc]
mov ecx, dword [eax + ecx*4]
xor eax, eax
neg ecx
sbb eax, eax
and al, 1
mov byte [esi + 0x14ef], al
mov byte [esi + 0x14ee], 0
test byte [esi + 0x14ef], 1
je 0x430e99
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18cd]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18cc]
mov eax, dword [eax + ecx*4]
sub esp, 4
mov dword [esp], eax
call fcn.00425a90
add esp, 4
fstp dword [esi + 0x2c0]
movss xmm0, dword [esi + 0x2c0]
movss dword [esi + 0x118], xmm0
movsx ecx, byte [esi + 0x18cd]
lea eax, [esi + 0x14fc]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18cc]
mov eax, dword [eax + ecx*4]
sub esp, 4
mov dword [esp], eax
call fcn.00425a90
movss xmm0, dword [esi + 0x118]
add esp, 4
fstp dword [esi + 0x2c4]
movss xmm1, dword [esi + 0x2c4]
ucomiss xmm0, xmm1
setae al
and al, 1
mov byte [esi + 0x14ee], al
cmp dword [esi + 0x6a98], 2
jne 0x430fa5
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d1]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d0]
cmp dword [eax + ecx*4], 6
jne 0x430fa0
mov eax, dword [esi + 0x254]
cmp dword [eax + 0x384], 0xc
jne 0x430fa0
mov ecx, dword [esi + 0x254]
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [ecx + 0x382]
cmp eax, ecx
jne 0x430fa0
mov ecx, dword [esi + 0x254]
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [ecx + 0x380]
cmp eax, ecx
jne 0x430fa0
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18d0]
add ecx, 1
cmp eax, ecx
je 0x430f46
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18d0]
sub ecx, 1
cmp eax, ecx
jne 0x430fa0
mov eax, dword [esi + 0x254]
movsx eax, byte [eax + 0x381]
cmp eax, 1
jne 0x430fa0
mov eax, dword [esi + 0x254]
movsx eax, byte [eax + 0x383]
cmp eax, 3
jne 0x430fa0
movsx eax, byte [esi + 0x18d1]
cmp eax, 3
jne 0x430fa0
movsx eax, byte [esi + 0x18cd]
cmp eax, 2
jne 0x430fa0
mov byte [esi + 0x14ef], 1
mov byte [esi + 0x14ee], 1
jmp 0x430fa5
cmp dword [esi + 0x6a98], 1
jne 0x4310b1
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d1]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d0]
cmp dword [eax + ecx*4], 0xc
jne 0x4310ac
mov eax, dword [esi + 0x254]
cmp dword [eax + 0x384], 6
jne 0x4310ac
mov ecx, dword [esi + 0x254]
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [ecx + 0x382]
cmp eax, ecx
jne 0x4310ac
mov ecx, dword [esi + 0x254]
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [ecx + 0x380]
cmp eax, ecx
jne 0x4310ac
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18d0]
add ecx, 1
cmp eax, ecx
je 0x431052
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18d0]
sub ecx, 1
cmp eax, ecx
jne 0x4310ac
mov eax, dword [esi + 0x254]
movsx eax, byte [eax + 0x381]
cmp eax, 6
jne 0x4310ac
mov eax, dword [esi + 0x254]
movsx eax, byte [eax + 0x383]
cmp eax, 4
jne 0x4310ac
movsx eax, byte [esi + 0x18d1]
cmp eax, 4
jne 0x4310ac
movsx eax, byte [esi + 0x18cd]
cmp eax, 5
jne 0x4310ac
mov byte [esi + 0x14ef], 1
mov byte [esi + 0x14ee], 1
jmp 0x4310b1
lea ecx, [esi + 0xd18]
call fcn.0044b890
mov dword [esi + 0xd18], 0
mov byte [esi + 0xd17], 0
mov byte [esi + 0xd16], 0
cmp dword [esi + 0x6a98], 2
jne 0x431329
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 2
jne 0x431329
mov dword [esi + 0xd10], 0
mov eax, dword [esi + 0xd10]
movsx ecx, byte [esi + 0x18a5]
cmp eax, ecx
jge 0x431324
mov eax, dword [esi + 0xd10]
movsx ecx, byte [esi + eax*2 + 0x18a7]
lea eax, [esi + 0x14fc]
shl ecx, 5
add eax, ecx
mov ecx, dword [esi + 0xd10]
movsx ecx, byte [esi + ecx*2 + 0x18a6]
cmp dword [eax + ecx*4], 7
jne 0x431310
mov eax, dword [esi + 0xd10]
mov al, byte [esi + eax*2 + 0x18a6]
mov byte [esi + 0xd15], al
mov eax, dword [esi + 0xd10]
mov al, byte [esi + eax*2 + 0x18a7]
mov byte [esi + 0xd14], al
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0xd15]
sub eax, ecx
cvtsi2ss xmm0, eax
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0xd15]
sub eax, ecx
cvtsi2ss xmm2, eax
movsx eax, byte [esi + 0x18cd]
movsx ecx, byte [esi + 0xd14]
sub eax, ecx
cvtsi2ss xmm1, eax
movsx eax, byte [esi + 0x18cd]
movsx ecx, byte [esi + 0xd14]
sub eax, ecx
cvtsi2ss xmm3, eax
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
sub esp, 4
movss dword [esp], xmm0
call fcn.0044c640
add esp, 4
fstp dword [esi + 0x2bc]
movss xmm0, dword [esi + 0x2bc]
movss dword [esi + 0xd0c], xmm0
movss xmm0, dword [esi + 0xd0c]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a668]
ucomisd xmm0, xmm1
jbe 0x43130b
movsx eax, byte [esi + 0x18d0]
movsx ecx, byte [esi + 0xd15]
sub eax, ecx
cvtsi2ss xmm0, eax
movsx eax, byte [esi + 0x18d0]
movsx ecx, byte [esi + 0xd15]
sub eax, ecx
cvtsi2ss xmm2, eax
movsx eax, byte [esi + 0x18d1]
movsx ecx, byte [esi + 0xd14]
sub eax, ecx
cvtsi2ss xmm1, eax
movsx eax, byte [esi + 0x18d1]
movsx ecx, byte [esi + 0xd14]
sub eax, ecx
cvtsi2ss xmm3, eax
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
sub esp, 4
movss dword [esp], xmm0
call fcn.0044c640
add esp, 4
fstp dword [esi + 0x2b8]
movss xmm0, dword [esi + 0x2b8]
movss dword [esi + 0xd08], xmm0
movss xmm1, dword [esi + 0xd0c]
movss xmm0, dword [esi + 0xd08]
ucomiss xmm0, xmm1
jbe 0x4312bc
mov byte [esi + 0xd16], 1
movss xmm0, dword [esi + 0xd0c]
ucomiss xmm0, dword [esi + 0xd08]
jne 0x431306
jp 0x431306
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18cd]
add eax, ecx
movsx ecx, byte [esi + 0x18d0]
movsx edx, byte [esi + 0x18d1]
add ecx, edx
cmp eax, ecx
jge 0x431306
mov byte [esi + 0xd16], 1
jmp 0x43130b
jmp 0x431324
mov eax, dword [esi + 0xd10]
add eax, 1
mov dword [esi + 0xd10], eax
jmp 0x43110e
jmp 0x431329
cmp dword [esi + 0x6a98], 1
jne 0x43157e
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 8
jne 0x43157e
mov dword [esi + 0xd00], 0
mov eax, dword [esi + 0xd00]
movsx ecx, byte [esi + 0x1884]
cmp eax, ecx
jge 0x431579
mov eax, dword [esi + 0xd00]
movsx ecx, byte [esi + eax*2 + 0x1886]
lea eax, [esi + 0x14fc]
shl ecx, 5
add eax, ecx
mov ecx, dword [esi + 0xd00]
movsx ecx, byte [esi + ecx*2 + 0x1885]
cmp dword [eax + ecx*4], 1
jne 0x431565
mov eax, dword [esi + 0xd00]
mov al, byte [esi + eax*2 + 0x1885]
mov byte [esi + 0xd07], al
mov eax, dword [esi + 0xd00]
mov al, byte [esi + eax*2 + 0x1886]
mov byte [esi + 0xd06], al
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0xd07]
sub eax, ecx
cvtsi2ss xmm0, eax
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0xd07]
sub eax, ecx
cvtsi2ss xmm2, eax
movsx eax, byte [esi + 0x18cd]
movsx ecx, byte [esi + 0xd06]
sub eax, ecx
cvtsi2ss xmm1, eax
movsx eax, byte [esi + 0x18cd]
movsx ecx, byte [esi + 0xd06]
sub eax, ecx
cvtsi2ss xmm3, eax
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
sub esp, 4
movss dword [esp], xmm0
call fcn.0044c640
add esp, 4
fstp dword [esi + 0x2b4]
movss xmm0, dword [esi + 0x2b4]
movss dword [esi + 0xcfc], xmm0
movss xmm0, dword [esi + 0xcfc]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a668]
ucomisd xmm0, xmm1
jbe 0x431560
movsx eax, byte [esi + 0x18d0]
movsx ecx, byte [esi + 0xd07]
sub eax, ecx
cvtsi2ss xmm0, eax
movsx eax, byte [esi + 0x18d0]
movsx ecx, byte [esi + 0xd07]
sub eax, ecx
cvtsi2ss xmm2, eax
movsx eax, byte [esi + 0x18d1]
movsx ecx, byte [esi + 0xd06]
sub eax, ecx
cvtsi2ss xmm1, eax
movsx eax, byte [esi + 0x18d1]
movsx ecx, byte [esi + 0xd06]
sub eax, ecx
cvtsi2ss xmm3, eax
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
sub esp, 4
movss dword [esp], xmm0
call fcn.0044c640
add esp, 4
fstp dword [esi + 0x2b0]
movss xmm0, dword [esi + 0x2b0]
movss dword [esi + 0xcf8], xmm0
movss xmm1, dword [esi + 0xcfc]
movss xmm0, dword [esi + 0xcf8]
ucomiss xmm0, xmm1
jbe 0x431511
mov byte [esi + 0xd16], 1
movss xmm0, dword [esi + 0xcfc]
ucomiss xmm0, dword [esi + 0xcf8]
jne 0x43155b
jp 0x43155b
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18cd]
add eax, ecx
movsx ecx, byte [esi + 0x18d0]
movsx edx, byte [esi + 0x18d1]
add ecx, edx
cmp eax, ecx
jge 0x43155b
mov byte [esi + 0xd16], 1
jmp 0x431560
jmp 0x431579
mov eax, dword [esi + 0xd00]
add eax, 1
mov dword [esi + 0xd00], eax
jmp 0x431363
jmp 0x43157e
cmp dword [0x49a590], 0
jne 0x431592
mov byte [esi + 0xd16], 0
mov byte [esi + 0xcf7], 0
mov dword [esi + 0xcf0], 0
mov eax, dword [esi + 0xcf0]
movsx ecx, byte [esi + 0x18a5]
cmp eax, ecx
jge 0x431776
mov eax, dword [esi + 0xcf0]
movsx ecx, byte [esi + eax*2 + 0x18a7]
lea eax, [esi + 0x14fc]
shl ecx, 5
add eax, ecx
mov ecx, dword [esi + 0xcf0]
movsx ecx, byte [esi + ecx*2 + 0x18a6]
cmp dword [eax + ecx*4], 7
jne 0x431762
mov eax, dword [esi + 0xcf0]
mov al, byte [esi + eax*2 + 0x18a6]
mov byte [esi + 0xcf6], al
mov eax, dword [esi + 0xcf0]
mov al, byte [esi + eax*2 + 0x18a7]
mov byte [esi + 0xcf5], al
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0xcf6]
sub eax, ecx
cvtsi2ss xmm0, eax
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0xcf6]
sub eax, ecx
cvtsi2ss xmm2, eax
movsx eax, byte [esi + 0x18cd]
movsx ecx, byte [esi + 0xcf5]
sub eax, ecx
cvtsi2ss xmm1, eax
movsx eax, byte [esi + 0x18cd]
movsx ecx, byte [esi + 0xcf5]
sub eax, ecx
cvtsi2ss xmm3, eax
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
sub esp, 4
movss dword [esp], xmm0
call fcn.0044c640
add esp, 4
fstp dword [esi + 0x2a8]
movss xmm0, dword [esi + 0x2a8]
movss dword [esi + 0xcec], xmm0
movsx eax, byte [esi + 0x18d0]
movsx ecx, byte [esi + 0xcf6]
sub eax, ecx
cvtsi2ss xmm0, eax
movsx eax, byte [esi + 0x18d0]
movsx ecx, byte [esi + 0xcf6]
sub eax, ecx
cvtsi2ss xmm2, eax
movsx eax, byte [esi + 0x18d1]
movsx ecx, byte [esi + 0xcf5]
sub eax, ecx
cvtsi2ss xmm1, eax
movsx eax, byte [esi + 0x18d1]
movsx ecx, byte [esi + 0xcf5]
sub eax, ecx
cvtsi2ss xmm3, eax
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
sub esp, 4
movss dword [esp], xmm0
call fcn.0044c640
add esp, 4
fstp dword [esi + 0x2ac]
movss xmm0, dword [esi + 0x2ac]
movss dword [esi + 0xce8], xmm0
movss xmm0, dword [esi + 0xcec]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a670]
ucomisd xmm0, xmm1
jbe 0x431738
mov byte [esi + 0xcf7], 1
movss xmm0, dword [esi + 0xce8]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a670]
ucomisd xmm0, xmm1
jbe 0x43175d
mov byte [esi + 0xcf7], 1
jmp 0x431776
mov eax, dword [esi + 0xcf0]
add eax, 1
mov dword [esi + 0xcf0], eax
jmp 0x4315a3
mov dword [esi + 0xce0], 0
mov eax, dword [esi + 0xce0]
movsx ecx, byte [esi + 0x1884]
cmp eax, ecx
jge 0x431953
mov eax, dword [esi + 0xce0]
movsx ecx, byte [esi + eax*2 + 0x1886]
lea eax, [esi + 0x14fc]
shl ecx, 5
add eax, ecx
mov ecx, dword [esi + 0xce0]
movsx ecx, byte [esi + ecx*2 + 0x1885]
cmp dword [eax + ecx*4], 1
jne 0x43193f
mov eax, dword [esi + 0xce0]
mov al, byte [esi + eax*2 + 0x1885]
mov byte [esi + 0xce7], al
mov eax, dword [esi + 0xce0]
mov al, byte [esi + eax*2 + 0x1886]
mov byte [esi + 0xce6], al
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0xce7]
sub eax, ecx
cvtsi2ss xmm0, eax
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0xce7]
sub eax, ecx
cvtsi2ss xmm2, eax
movsx eax, byte [esi + 0x18cd]
movsx ecx, byte [esi + 0xce6]
sub eax, ecx
cvtsi2ss xmm1, eax
movsx eax, byte [esi + 0x18cd]
movsx ecx, byte [esi + 0xce6]
sub eax, ecx
cvtsi2ss xmm3, eax
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
sub esp, 4
movss dword [esp], xmm0
call fcn.0044c640
add esp, 4
fstp dword [esi + 0x2a0]
movss xmm0, dword [esi + 0x2a0]
movss dword [esi + 0xcdc], xmm0
movsx eax, byte [esi + 0x18d0]
movsx ecx, byte [esi + 0xce7]
sub eax, ecx
cvtsi2ss xmm0, eax
movsx eax, byte [esi + 0x18d0]
movsx ecx, byte [esi + 0xce7]
sub eax, ecx
cvtsi2ss xmm2, eax
movsx eax, byte [esi + 0x18d1]
movsx ecx, byte [esi + 0xce6]
sub eax, ecx
cvtsi2ss xmm1, eax
movsx eax, byte [esi + 0x18d1]
movsx ecx, byte [esi + 0xce6]
sub eax, ecx
cvtsi2ss xmm3, eax
mulss xmm1, xmm3
mulss xmm0, xmm2
addss xmm0, xmm1
sub esp, 4
movss dword [esp], xmm0
call fcn.0044c640
add esp, 4
fstp dword [esi + 0x2a4]
movss xmm0, dword [esi + 0x2a4]
movss dword [esi + 0xcd8], xmm0
movss xmm0, dword [esi + 0xcdc]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a670]
ucomisd xmm0, xmm1
jbe 0x431915
mov byte [esi + 0xcf7], 1
movss xmm0, dword [esi + 0xcd8]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a670]
ucomisd xmm0, xmm1
jbe 0x43193a
mov byte [esi + 0xcf7], 1
jmp 0x431953
mov eax, dword [esi + 0xce0]
add eax, 1
mov dword [esi + 0xce0], eax
jmp 0x431780
mov byte [esi + 0xcd7], 1
movss xmm0, dword [esi + 0x6a94]
movss dword [esi + 0xcd0], xmm0
cmp dword [0x49a58c], 2
jne 0x43199c
movss xmm0, dword [esi + 0xcd0]
movss xmm1, dword [0x48a678]
ucomiss xmm0, xmm1
jbe 0x431997
mov byte [esi + 0xcd7], 0
jmp 0x4319c1
movss xmm0, dword [esi + 0xcd0]
movss xmm1, dword [0x48a610]
ucomiss xmm0, xmm1
jbe 0x4319bc
mov byte [esi + 0xcd7], 0
jmp 0x4319c1
mov eax, dword [esi + 0x260]
mov dword [esi + 0xccc], 0xa
mov dword [esi + 0xcc8], 2
movsx eax, byte [eax]
cmp eax, 2
jge 0x431ad2
mov ecx, dword [esi + 0x6a98]
movzx ebx, byte [esi + 0x18c6]
movzx eax, byte [esi + 0x18c7]
mov dword [esi + 0x10c], eax
movzx eax, byte [esi + 0x18c8]
mov dword [esi + 0x108], eax
movzx eax, byte [esi + 0x18c9]
mov dword [esi + 0x100], eax
sub esp, 4
mov eax, esp
mov dword [eax], ecx
call fcn.00415a90
mov ecx, dword [esi + 0x100]
add esp, 4
mov edi, eax
movsd xmm0, qword [esi + 0x187c]
movsd qword [esi + 0xcc0], xmm0
lea edx, [esi + 0x18a5]
lea eax, [esi + 0x1884]
mov dword [esi + 0x110], eax
mov dword [esi + 0x6ad0], 7
sub esp, 0x28
movsd xmm0, qword [esi + 0xcc0]
mov eax, esp
mov dword [esi + 0x104], eax
movsd qword [eax + 0xc], xmm0
and ecx, 1
mov dword [eax + 0x24], ecx
mov ecx, dword [esi + 0x108]
and ecx, 1
mov dword [eax + 0x20], ecx
mov ecx, dword [esi + 0x10c]
and ecx, 1
mov dword [eax + 0x1c], ecx
mov ecx, dword [esi + 0x110]
and ebx, 1
mov dword [eax + 0x18], ebx
mov dword [eax + 0x14], edi
mov dword [eax + 8], edx
mov dword [eax + 4], ecx
lea ecx, [esi + 0x14fc]
mov dword [eax], ecx
call fcn.0040aad0
add esp, 0x28
mov byte [esi + 0x117], al
jmp 0x431ac4
mov al, byte [esi + 0x117]
and al, 1
mov byte [esi + 0x6a9f], al
movsx eax, byte [0x49812c]
cmp eax, 4
jg 0x431f4c
cmp dword [0x49a58c], 0
jne 0x431b56
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431b14
mov al, byte [esi + 0x6a9f]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431b51
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xff], al
jl 0x431b43
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6990]
setl al
mov byte [esi + 0xff], al
mov al, byte [esi + 0xff]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431f47
cmp dword [0x49a58c], 1
jne 0x431c5e
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0xa
jle 0x431bd9
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431b97
mov al, byte [esi + 0x6a9f]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431bd4
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xfe], al
jl 0x431bc6
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6990]
setl al
mov byte [esi + 0xfe], al
mov al, byte [esi + 0xfe]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431c59
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xfd], al
jne 0x431c4b
test byte [esi + 0xcd7], 1
je 0x431c10
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xfd], al
jle 0x431c4b
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xfc], al
jl 0x431c3f
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6990]
setl al
mov byte [esi + 0xfc], al
mov al, byte [esi + 0xfc]
mov byte [esi + 0xfd], al
mov al, byte [esi + 0xfd]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431f42
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0xa
jle 0x431de3
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431c99
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xfb], al
jne 0x431dd0
jmp 0x431cc5
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jl 0x431cc5
mov ecx, dword [esi + 0x18d4]
mov al, 1
cmp ecx, dword [esi + 0x6990]
mov byte [esi + 0xfb], al
jl 0x431dd0
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xfa], al
je 0x431dc4
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xf9], al
jle 0x431db8
cmp dword [esi + 0x6a98], 2
jne 0x431d37
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 6
jne 0x431d37
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 1
mov byte [esi + 0xf9], al
je 0x431db8
cmp dword [esi + 0x6a98], 1
jne 0x431d7f
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 0xc
jne 0x431d7f
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 6
mov byte [esi + 0xf9], al
je 0x431db8
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x431d9f
mov al, byte [esi + 0xcf7]
mov byte [esi + 0xf8], al
jmp 0x431dac
xor eax, eax
mov byte [esi + 0xf8], al
jmp 0x431dac
mov al, byte [esi + 0xf8]
mov byte [esi + 0xf9], al
mov al, byte [esi + 0xf9]
mov byte [esi + 0xfa], al
mov al, byte [esi + 0xfa]
mov byte [esi + 0xfb], al
mov al, byte [esi + 0xfb]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431f3d
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xf7], al
jne 0x431f2f
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jl 0x431e24
mov ecx, dword [esi + 0x18d4]
mov al, 1
cmp ecx, dword [esi + 0x6990]
mov byte [esi + 0xf7], al
jl 0x431f2f
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xf6], al
je 0x431f23
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xf5], al
jle 0x431f17
cmp dword [esi + 0x6a98], 2
jne 0x431e96
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 6
jne 0x431e96
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 1
mov byte [esi + 0xf5], al
je 0x431f17
cmp dword [esi + 0x6a98], 1
jne 0x431ede
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 0xc
jne 0x431ede
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 6
mov byte [esi + 0xf5], al
je 0x431f17
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x431efe
mov al, byte [esi + 0xcf7]
mov byte [esi + 0xf4], al
jmp 0x431f0b
xor eax, eax
mov byte [esi + 0xf4], al
jmp 0x431f0b
mov al, byte [esi + 0xf4]
mov byte [esi + 0xf5], al
mov al, byte [esi + 0xf5]
mov byte [esi + 0xf6], al
mov al, byte [esi + 0xf6]
mov byte [esi + 0xf7], al
mov al, byte [esi + 0xf7]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431f42
jmp 0x431f47
jmp 0x43242c
cmp dword [0x49a58c], 0
jne 0x431fc0
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431f7e
mov al, byte [esi + 0x6a9f]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431fbb
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xf3], al
jl 0x431fad
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6990]
setl al
mov byte [esi + 0xf3], al
mov al, byte [esi + 0xf3]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x432427
cmp dword [0x49a58c], 1
jne 0x4320c8
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0xa
jle 0x432043
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x432001
mov al, byte [esi + 0x6a9f]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x43203e
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xf2], al
jl 0x432030
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6990]
setl al
mov byte [esi + 0xf2], al
mov al, byte [esi + 0xf2]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x4320c3
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xf1], al
jne 0x4320b5
test byte [esi + 0xcd7], 1
je 0x43207a
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xf1], al
jle 0x4320b5
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xf0], al
jl 0x4320a9
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6990]
setl al
mov byte [esi + 0xf0], al
mov al, byte [esi + 0xf0]
mov byte [esi + 0xf1], al
mov al, byte [esi + 0xf1]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x432422
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0xa
jle 0x43229f
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x432103
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xef], al
jne 0x43228c
jmp 0x43212f
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jl 0x43212f
mov ecx, dword [esi + 0x18d4]
mov al, 1
cmp ecx, dword [esi + 0x6990]
mov byte [esi + 0xef], al
jl 0x43228c
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xee], al
je 0x432280
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xed], al
jle 0x432274
cmp dword [esi + 0x5fbc], 3
jge 0x43217d
mov ecx, dword [esi + 0x25c]
mov al, 1
cmp dword [ecx], 7
mov byte [esi + 0xed], al
jl 0x432274
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x4321a6
mov al, 1
test byte [esi + 0x14ee], 1
mov byte [esi + 0xed], al
jne 0x432274
jmp 0x4321ab
jmp 0x4321ab
cmp dword [esi + 0x6a98], 2
jne 0x4321f3
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 6
jne 0x4321f3
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 1
mov byte [esi + 0xed], al
je 0x432274
cmp dword [esi + 0x6a98], 1
jne 0x43223b
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 0xc
jne 0x43223b
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 6
mov byte [esi + 0xed], al
je 0x432274
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x43225b
mov al, byte [esi + 0xcf7]
mov byte [esi + 0xec], al
jmp 0x432268
xor eax, eax
mov byte [esi + 0xec], al
jmp 0x432268
mov al, byte [esi + 0xec]
mov byte [esi + 0xed], al
mov al, byte [esi + 0xed]
mov byte [esi + 0xee], al
mov al, byte [esi + 0xee]
mov byte [esi + 0xef], al
mov al, byte [esi + 0xef]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x43241d
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xeb], al
jne 0x43240f
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jl 0x4322e0
mov ecx, dword [esi + 0x18d4]
mov al, 1
cmp ecx, dword [esi + 0x6990]
mov byte [esi + 0xeb], al
jl 0x43240f
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xea], al
je 0x432403
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xe9], al
jle 0x4323f7
cmp dword [esi + 0x5fbc], 3
jge 0x43232e
mov ecx, dword [esi + 0x25c]
mov al, 1
cmp dword [ecx], 7
mov byte [esi + 0xe9], al
jl 0x4323f7
cmp dword [esi + 0x6a98], 2
jne 0x432376
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 6
jne 0x432376
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 1
mov byte [esi + 0xe9], al
je 0x4323f7
cmp dword [esi + 0x6a98], 1
jne 0x4323be
mov eax, dword [esi + 0x254]
movsx ecx, byte [esi + 0x18d3]
shl ecx, 5
add eax, ecx
movsx ecx, byte [esi + 0x18d2]
cmp dword [eax + ecx*4], 0xc
jne 0x4323be
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 6
mov byte [esi + 0xe9], al
je 0x4323f7
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x4323de
mov al, byte [esi + 0xcf7]
mov byte [esi + 0xe8], al
jmp 0x4323eb
xor eax, eax
mov byte [esi + 0xe8], al
jmp 0x4323eb
mov al, byte [esi + 0xe8]
mov byte [esi + 0xe9], al
mov al, byte [esi + 0xe9]
mov byte [esi + 0xea], al
mov al, byte [esi + 0xea]
mov byte [esi + 0xeb], al
mov al, byte [esi + 0xeb]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x432422
jmp 0x432427
jmp 0x43242c
mov eax, dword [esi + 0x288]
mov byte [esi + 0xcbf], 1
mov cl, byte [esi + 0x14ef]
and cl, 1
mov byte [esi + 0xcbe], cl
mov ecx, esp
mov dword [esi + 0xdc], ecx
push eax
sub esp, 0x41c
mov ecx, esp
mov dword [esi + 0xe0], ecx
mov eax, dword [eax]
mov dword [esi + 0xe4], eax
test byte [esi + 0xd17], 1
jne 0x4324a7
test byte [esi + 0xcd7], 1
je 0x4324bd
mov eax, dword [esi + 0x278]
cmp dword [eax], 4
jge 0x4324a2
test byte [esi + 0xd16], 1
jne 0x4324a7
jmp 0x4324bd
jmp 0x4324bd
mov eax, dword [esi + 0x284]
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0xd8], eax
jmp 0x4324cb
mov eax, dword [esi + 0x284]
mov eax, dword [eax]
mov dword [esi + 0xd8], eax
mov eax, dword [esi + 0xd8]
mov dword [esi + 0xd4], eax
test byte [esi + 0xcf7], 1
je 0x4324fa
mov eax, dword [esi + 0x27c]
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0xd0], eax
jmp 0x432508
mov eax, dword [esi + 0x27c]
mov eax, dword [eax]
mov dword [esi + 0xd0], eax
mov eax, dword [esi + 0xd0]
mov dword [esi + 0xcc], eax
test byte [esi + 0xd16], 1
je 0x432537
mov eax, dword [esi + 0x278]
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0xc8], eax
jmp 0x432545
mov eax, dword [esi + 0x278]
mov eax, dword [eax]
mov dword [esi + 0xc8], eax
mov eax, dword [esi + 0x270]
mov ecx, dword [esi + 0xc8]
mov dword [esi + 0xb8], ecx
mov cl, byte [esi + 0x14ef]
mov byte [esi + 0xbe], cl
mov cl, byte [esi + 0x14ee]
mov byte [esi + 0xbf], cl
mov eax, dword [eax]
mov dword [esi + 0xc0], eax
mov al, 1
test byte [esi + 0xcbe], 1
mov byte [esi + 0xc7], al
jne 0x4325fb
mov al, 1
test byte [esi + 0xd17], 1
mov byte [esi + 0xc7], al
jne 0x4325fb
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xb7], al
je 0x4325ef
mov eax, dword [esi + 0x278]
cmp dword [eax], 4
jge 0x4325d6
mov al, byte [esi + 0xd16]
mov byte [esi + 0xb6], al
jmp 0x4325e3
xor eax, eax
mov byte [esi + 0xb6], al
jmp 0x4325e3
mov al, byte [esi + 0xb6]
mov byte [esi + 0xb7], al
mov al, byte [esi + 0xb7]
mov byte [esi + 0xc7], al
mov eax, dword [esi + 0x268]
mov cl, byte [esi + 0xc7]
mov byte [esi + 0xb4], cl
mov al, byte [eax]
mov byte [esi + 0xb5], al
test byte [esi + 0x6a9f], 1
je 0x432639
mov eax, dword [esi + 0x260]
movsx eax, byte [eax]
add eax, 1
mov dword [esi + 0xb0], eax
jmp 0x432648
mov eax, dword [esi + 0x260]
movsx eax, byte [eax]
mov dword [esi + 0xb0], eax
mov eax, dword [esi + 0x25c]
mov ecx, dword [esi + 0xb0]
mov byte [esi + 0xab], cl
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0xac], eax
test byte [esi + 0xd17], 1
jne 0x4326a5
test byte [esi + 0xcd7], 1
je 0x43270e
mov eax, dword [esi + 0x278]
cmp dword [eax], 4
jge 0x4326a0
test byte [esi + 0xd16], 1
jne 0x4326a5
jmp 0x43270e
jmp 0x43270e
mov eax, dword [esi + 0x284]
mov eax, dword [eax]
movsx edi, byte [0x49812c]
mov ecx, 2
mov edx, 4
cmp edi, 4
cmovl ecx, edx
cmp eax, ecx
jge 0x4326e2
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
sub eax, 1
mov dword [esi + 0xa4], eax
jmp 0x4326f3
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0xa4], eax
mov eax, dword [esi + 0xa4]
mov dword [esi + 0x6ad0], 7
mov dword [esi + 0xa0], eax
jmp 0x432729
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0x6ad0], 7
mov dword [esi + 0xa0], eax
mov ecx, dword [esi + 0xe0]
mov ebx, dword [esi + 0x248]
mov edi, dword [esi + 0x24c]
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x9c], eax
add ecx, 0x18
sub esp, 4
mov eax, esp
lea edx, [esi + 0x14fc]
mov dword [eax], edx
call fcn.0044b5c0
mov edx, dword [esi + 0x250]
mov ecx, dword [esi + 0x244]
mov eax, dword [esi + 0x240]
mov dl, byte [edx]
mov edi, dword [edi]
mov ebx, dword [ebx]
movss xmm0, dword [eax]
mov eax, dword [esi + 0xe0]
movaps xmm2, xmmword [0x48a640]
pxor xmm0, xmm2
movss xmm1, dword [ecx]
pxor xmm1, xmm2
lea ecx, [esi + 0x4e8]
mov dword [eax], ecx
mov ecx, dword [esi + 0x9c]
movss dword [eax + 4], xmm1
movss dword [eax + 8], xmm0
mov dword [eax + 0xc], ebx
mov ebx, dword [esi + 0xb8]
mov dword [eax + 0x10], edi
mov edi, dword [esi + 0xcc]
mov byte [eax + 0x14], dl
mov edx, dword [esi + 0xd4]
mov dword [eax + 0x3e8], ecx
mov ecx, dword [esi + 0xac]
mov dword [eax + 0x3ec], ecx
mov cl, byte [esi + 0xab]
mov ch, byte [esi + 0xb5]
mov byte [eax + 0x3f0], cl
mov cl, byte [esi + 0xb4]
mov byte [eax + 0x3f4], 0
and ch, 1
mov byte [eax + 0x3f8], ch
and cl, 1
mov byte [eax + 0x3fc], cl
mov ecx, dword [esi + 0xc0]
mov dword [eax + 0x400], ecx
mov cl, byte [esi + 0xbe]
mov ch, byte [esi + 0xbf]
and ch, 1
mov byte [eax + 0x404], ch
and cl, 1
mov byte [eax + 0x408], cl
mov ecx, dword [esi + 0xe4]
mov dword [eax + 0x40c], ebx
mov dword [eax + 0x410], edi
mov byte [eax + 0x414], 1
mov dword [eax + 0x418], edx
mov dword [eax + 0x41c], ecx
call fcn.0042e5f0
add esp, 0x420
jmp 0x432866
mov eax, dword [esi + 0xdc]
mov esp, eax
lea ecx, [esi + 0xd18]
lea eax, [esi + 0x4e8]
sub esp, 4
mov dword [esp], eax
call fcn.0044b910
lea ecx, [esi + 0x4e8]
call fcn.0044a600
mov dword [esi + 0x4e4], 0
mov eax, dword [esi + 0x4e4]
cmp eax, dword [esi + 0xd18]
jge 0x4328e0
mov eax, dword [esi + 0x4e4]
movss xmm0, dword [0x48a638]
mulss xmm0, dword [esi + eax*8 + 0xd20]
movss dword [esi + eax*8 + 0xd20], xmm0
mov eax, dword [esi + 0x4e4]
add eax, 1
mov dword [esi + 0x4e4], eax
jmp 0x43289a
lea eax, [esi + 0xd18]
add eax, 4
mov ecx, dword [esi + 0xd18]
xor edx, edx
sub esp, 0xc
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00401180
mov eax, dword [esi + 0x25c]
add esp, 0xc
movss xmm0, dword [esi + 0xd20]
movss dword [esi + 0x14f0], xmm0
cmp dword [eax], 0xfffffff9
jg 0x432b01
mov eax, dword [esi + 0x25c]
mov ecx, dword [eax]
mov dword [esi + 0x6ad0], 7
sub esp, 4
mov eax, esp
mov dword [eax], ecx
mov ecx, 0x4c5b70
call fcn.0044bed0
mov dword [esi + 0x98], eax
jmp 0x432958
mov ecx, dword [esi + 0x98]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x48a871
call fcn.0044b9f0
add esp, 8
mov dword [esi + 0x94], eax
jmp 0x43297f
mov ecx, dword [esi + 0x94]
mov edx, dword [esi + 0x18d4]
inc edx
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044bed0
mov dword [esi + 0x90], eax
jmp 0x4329a3
mov ecx, dword [esi + 0x90]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x48a871
call fcn.0044b9f0
add esp, 8
mov dword [esi + 0x8c], eax
jmp 0x4329ca
mov ecx, dword [esi + 0x8c]
movss xmm0, dword [esi + 0xd20]
sub esp, 4
mov eax, esp
movss dword [eax], xmm0
call fcn.0044c150
mov dword [esi + 0x88], eax
jmp 0x4329f1
mov ecx, dword [esi + 0x88]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x48a871
call fcn.0044b9f0
add esp, 8
mov dword [esi + 0x84], eax
jmp 0x432a18
mov ecx, dword [esi + 0x84]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], str._alpha_
call fcn.0044b9f0
add esp, 8
mov dword [esi + 0x80], eax
jmp 0x432a3f
mov ecx, dword [esi + 0x80]
mov eax, dword [esi + 0x240]
movss xmm0, dword [eax]
sub esp, 4
mov eax, esp
movss dword [eax], xmm0
call fcn.0044c150
mov dword [esi + 0x7c], eax
jmp 0x432a65
mov ecx, dword [esi + 0x7c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], str._beta_
call fcn.0044b9f0
add esp, 8
mov dword [esi + 0x78], eax
jmp 0x432a86
mov ecx, dword [esi + 0x78]
mov eax, dword [esi + 0x244]
movss xmm0, dword [eax]
sub esp, 4
mov eax, esp
movss dword [eax], xmm0
call fcn.0044c150
mov dword [esi + 0x74], eax
jmp 0x432aa9
mov ecx, dword [esi + 0x74]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x48a7a4
call fcn.0044b9f0
add esp, 8
jmp 0x432ac7
mov eax, dword [esi + 0x18d4]
lea ecx, [esi + eax*8 + 0x386c]
call fcn.0044c3a0
jmp 0x432ade
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jne 0x432afc
call fcn.0046975b
jmp 0x432af7
jmp 0x432afc
jmp 0x432b01
cmp dword [esi + 0xd18], 0
jne 0x432b1d
mov dword [esi + 0x6aa8], 0x29
jmp 0x432c33
lea eax, [esi + 0xd18]
add eax, 4
add eax, 4
lea ecx, [esi + 0x698c]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0044bde0
add esp, 8
mov ecx, eax
mov eax, dword [esi + 0x240]
movss xmm0, dword [ecx]
movss dword [esi + 0x698c], xmm0
lea ecx, [esi + 0x698c]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0044bde0
mov ecx, dword [esi + 0x240]
add esp, 8
mov edx, eax
mov eax, dword [esi + 0x244]
movss xmm0, dword [edx]
movss dword [ecx], xmm0
movss xmm0, dword [ecx]
ucomiss xmm0, dword [eax]
jbe 0x432c29
mov eax, dword [esi + 0x240]
movss xmm0, dword [eax]
movss dword [esi + 0x698c], xmm0
mov eax, dword [esi + 0x5fc0]
add eax, 1
mov dword [esi + 0x5fc0], eax
mov eax, dword [esi + 0x5fc0]
sub eax, 1
mov ecx, dword [esi + 0x5fbc]
sub ecx, 1
cmp eax, ecx
jle 0x432bd0
jmp 0x432bd0
movss xmm0, dword [esi + 0x698c]
mov eax, dword [esi + 0x5fc0]
sub eax, 1
movss dword [esi + eax*8 + 0x5fc8], xmm0
mov eax, dword [esi + 0x5fc0]
sub eax, 1
mov cx, word [esi + 0x18d0]
mov word [esi + eax*8 + 0x5fc4], cx
mov eax, dword [esi + 0x5fc0]
sub eax, 1
mov cx, word [esi + 0x18cc]
mov word [esi + eax*8 + 0x5fc6], cx
mov dword [esi + 0x6aa8], 0x39
jmp 0x432c33
mov dword [esi + 0x6aa8], 0
lea ecx, [esi + 0xd18]
call fcn.0044a600
cmp dword [esi + 0x6aa8], 0
jne 0x432cfb
mov eax, dword [esi + 0x5fc0]
add eax, 1
mov dword [esi + 0x5fc0], eax
mov eax, dword [esi + 0x5fc0]
sub eax, 1
mov ecx, dword [esi + 0x5fbc]
sub ecx, 1
cmp eax, ecx
jle 0x432c79
jmp 0x432c79
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jne 0x432ca7
movss xmm0, dword [esi + 0x14f0]
mov eax, dword [esi + 0x5fc0]
sub eax, 1
movss dword [esi + eax*8 + 0x5fc8], xmm0
jmp 0x432cc1
movss xmm0, dword [esi + 0x698c]
mov eax, dword [esi + 0x5fc0]
sub eax, 1
movss dword [esi + eax*8 + 0x5fc8], xmm0
mov eax, dword [esi + 0x5fc0]
sub eax, 1
mov cx, word [esi + 0x18d0]
mov word [esi + eax*8 + 0x5fc4], cx
mov eax, dword [esi + 0x5fc0]
sub eax, 1
mov cx, word [esi + 0x18cc]
mov word [esi + eax*8 + 0x5fc6], cx
mov dword [esi + 0x6aa8], 0
lea ecx, [esi + 0x14fc]
call fcn.0044a5b0
mov eax, dword [esi + 0x6aa8]
mov dword [esi + 0x70], eax
test eax, eax
je 0x432d3e
jmp 0x432d1c
mov eax, dword [esi + 0x70]
sub eax, 0x29
je 0x432d43
jmp 0x432d2d
mov eax, dword [esi + 0x70]
sub eax, 0x39
je 0x432d5c
jmp 0x433bdf
jmp 0x432d43
mov eax, dword [esi + 0x18d4]
add eax, 1
mov dword [esi + 0x18d4], eax
jmp 0x430ae7
jmp 0x432d5c
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jne 0x432f51
mov eax, dword [esi + 0x25c]
mov ecx, dword [eax]
mov byte [esi + 0x4e0], cl
mov ecx, dword [esi + 0x5fc4]
mov dword [esi + 0x4d8], ecx
mov ecx, dword [esi + 0x5fc8]
mov dword [esi + 0x4dc], ecx
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x4d7], al
mov al, byte [esi + 0x4d7]
mov dword [esi + 0x6ad0], 3
test al, 1
je 0x432e76
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x4d8]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x4b8]
mov dword [esi + 0x6c], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x6c]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x4b0]
mov dword [eax], ecx
mov ecx, 0x4c56f4
call fcn.0044c730
jmp 0x432e07
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044b6b0
jmp 0x432e23
lea ecx, [0x4c56f4]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x432e71
mov ecx, 0x4c5704
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x4a8], xmm0
lea ecx, [0x4c56f4]
lea eax, [esi + 0x4a8]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5704]
call fcn.0044b770
jmp 0x432f2b
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x4d8]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x490]
mov dword [esi + 0x68], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x68]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x488]
mov dword [eax], ecx
mov ecx, 0x4c56fc
call fcn.0044c730
jmp 0x432ebc
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044b6b0
jmp 0x432ed8
lea ecx, [0x4c56fc]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x432f26
mov ecx, 0x4c5718
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x480], xmm0
lea ecx, [0x4c56fc]
lea eax, [esi + 0x480]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5718]
call fcn.0044b770
jmp 0x432f2b
mov ecx, dword [esi + 0x23c]
lea eax, [esi + 0x5fc0]
sub esp, 4
mov dword [esp], eax
call fcn.0044b980
mov dword [esi + 0x6aa8], 1
jmp 0x433bdf
cmp dword [esi + 0x5fc0], 0
jne 0x433279
mov edx, dword [esi + 0x254]
mov dword [esi + 0x5fc0], 1
mov ebx, dword [esi + 0x6a98]
movzx eax, byte [edx + 0x3ca]
mov dword [esi + 0x60], eax
movzx eax, byte [edx + 0x3cb]
mov dword [esi + 0x5c], eax
movzx eax, byte [edx + 0x3cc]
mov dword [esi + 0x58], eax
movzx ecx, byte [edx + 0x3cd]
movsd xmm0, qword [edx + 0x380]
movsd qword [esi + 0x478], xmm0
mov edi, edx
add edi, 0x3a9
add edx, 0x388
mov dword [esi + 0x6ad0], 3
sub esp, 0x28
movsd xmm0, qword [esi + 0x478]
mov eax, esp
mov dword [esi + 0x54], eax
movsd qword [eax + 0xc], xmm0
and ecx, 1
mov dword [eax + 0x24], ecx
mov ecx, dword [esi + 0x58]
and ecx, 1
mov dword [eax + 0x20], ecx
mov ecx, dword [esi + 0x5c]
and ecx, 1
mov dword [eax + 0x1c], ecx
mov ecx, dword [esi + 0x60]
and ecx, 1
mov dword [eax + 0x18], ecx
mov ecx, dword [esi + 0x254]
mov dword [eax + 0x14], ebx
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.0040aad0
add esp, 0x28
mov byte [esi + 0x67], al
jmp 0x433018
mov al, byte [esi + 0x67]
test al, 1
jne 0x433028
jmp 0x433067
mov eax, dword [esi + 0x25c]
cvtsi2ss xmm0, dword [eax]
movss xmm1, dword [0x48a2cc]
mulss xmm0, xmm1
movss xmm1, dword [0x48a5dc]
addss xmm0, xmm1
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [esi + 0x5fc8], xmm0
jmp 0x433082
xorps xmm0, xmm0
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [esi + 0x5fc8], xmm0
mov eax, dword [esi + 0x25c]
mov byte [esi + 0x5fc4], 0xff
mov byte [esi + 0x5fc5], 0xff
mov byte [esi + 0x5fc6], 0xff
mov byte [esi + 0x5fc7], 0xff
mov ecx, dword [eax]
mov byte [esi + 0x474], cl
mov ecx, dword [esi + 0x5fc4]
mov dword [esi + 0x46c], ecx
mov ecx, dword [esi + 0x5fc8]
mov dword [esi + 0x470], ecx
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x46b], al
test byte [esi + 0x46b], 1
je 0x43319e
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x46c]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x450]
mov dword [esi + 0x50], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x50]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x448]
mov dword [eax], ecx
mov ecx, 0x4c56f4
call fcn.0044c730
jmp 0x43312f
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044b6b0
jmp 0x43314b
lea ecx, [0x4c56f4]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x433199
mov ecx, 0x4c5704
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x440], xmm0
lea ecx, [0x4c56f4]
lea eax, [esi + 0x440]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5704]
call fcn.0044b770
jmp 0x433253
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x46c]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x428]
mov dword [esi + 0x4c], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x4c]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x420]
mov dword [eax], ecx
mov ecx, 0x4c56fc
call fcn.0044c730
jmp 0x4331e4
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044b6b0
jmp 0x433200
lea ecx, [0x4c56fc]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x43324e
mov ecx, 0x4c5718
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x418], xmm0
lea ecx, [0x4c56fc]
lea eax, [esi + 0x418]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5718]
call fcn.0044b770
jmp 0x433253
mov ecx, dword [esi + 0x23c]
lea eax, [esi + 0x5fc0]
sub esp, 4
mov dword [esp], eax
call fcn.0044b980
mov dword [esi + 0x6aa8], 1
jmp 0x433bdf
mov ecx, dword [esi + 0x23c]
mov byte [esi + 0x417], 0
call fcn.0044b890
mov eax, dword [esi + 0x23c]
mov dword [eax], 1
lea eax, [esi + 0x5fc0]
add eax, 4
mov ecx, dword [esi + 0x5fc0]
xor edx, edx
sub esp, 0xc
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00401180
add esp, 0xc
mov dword [esi + 0x410], 0
movss xmm0, dword [esi + 0x5fc8]
movss dword [esi + 0x40c], xmm0
mov dword [esi + 0x408], 1
mov eax, dword [esi + 0x408]
cmp eax, dword [esi + 0x5fc0]
jge 0x43334b
mov eax, dword [esi + 0x408]
movss xmm0, dword [esi + eax*8 + 0x5fc8]
ucomiss xmm0, dword [esi + 0x40c]
jbe 0x433337
mov eax, dword [esi + 0x408]
movss xmm0, dword [esi + eax*8 + 0x5fc8]
movss dword [esi + 0x40c], xmm0
mov eax, dword [esi + 0x408]
mov dword [esi + 0x410], eax
mov eax, dword [esi + 0x408]
add eax, 1
mov dword [esi + 0x408], eax
jmp 0x4332e6
cmp dword [esi + 0x410], 0
je 0x4333c8
mov dword [esi + 0x6ad0], 5
sub esp, 8
mov eax, esp
mov dword [eax + 4], str.id_found_
mov dword [eax], 0x4c5b70
call fcn.0044b9f0
add esp, 8
mov dword [esi + 0x48], eax
jmp 0x433384
mov ecx, dword [esi + 0x48]
mov edx, dword [esi + 0x410]
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044bed0
mov dword [esi + 0x44], eax
jmp 0x4333a1
mov ecx, dword [esi + 0x44]
sub esp, 4
mov eax, esp
mov dword [eax], 0x44c4f0
call fcn.0044c4d0
jmp 0x4333b9
call fcn.0046975b
jmp 0x4333c3
jmp 0x4333c8
mov eax, dword [esi + 0x280]
mov ecx, dword [esi + 0x23c]
mov edx, dword [esi + 0x410]
movss xmm0, dword [esi + edx*8 + 0x5fc8]
movss dword [ecx + 8], xmm0
mov edx, dword [esi + 0x410]
mov dx, word [esi + edx*8 + 0x5fc4]
mov word [ecx + 4], dx
mov edx, dword [esi + 0x410]
mov dx, word [esi + edx*8 + 0x5fc6]
mov word [ecx + 6], dx
test byte [eax], 1
je 0x433456
mov eax, dword [esi + 0x25c]
mov ecx, dword [esi + 0x23c]
mov edx, dword [ecx + 4]
mov dword [esi + 0x400], edx
mov ecx, dword [ecx + 8]
mov dword [esi + 0x404], ecx
mov ecx, dword [eax]
lea eax, [esi + 0x400]
sub esp, 0xc
mov dword [esp], ecx
mov ecx, dword [eax]
mov dword [esp + 4], ecx
mov eax, dword [eax + 4]
mov dword [esp + 8], eax
call fcn.00434380
add esp, 0xc
mov eax, dword [esi + 0x25c]
cmp dword [eax], 1
jne 0x43346a
jmp 0x43346a
mov eax, dword [esi + 0x25c]
mov ecx, dword [esi + 0x23c]
mov edx, dword [eax]
mov byte [esi + 0x3fc], dl
mov edx, dword [ecx + 4]
mov dword [esi + 0x3f4], edx
mov ecx, dword [ecx + 8]
mov dword [esi + 0x3f8], ecx
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x3f3], al
mov al, byte [esi + 0x3f3]
mov dword [esi + 0x6ad0], 5
test al, 1
je 0x433575
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x3f4]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x3d8]
mov dword [esi + 0x40], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x40]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x3d0]
mov dword [eax], ecx
mov ecx, 0x4c56f4
call fcn.0044c730
jmp 0x433506
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044b6b0
jmp 0x433522
lea ecx, [0x4c56f4]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x433570
mov ecx, 0x4c5704
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x3c8], xmm0
lea ecx, [0x4c56f4]
lea eax, [esi + 0x3c8]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5704]
call fcn.0044b770
jmp 0x43362a
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x3f4]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x3b0]
mov dword [esi + 0x3c], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x3c]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x3a8]
mov dword [eax], ecx
mov ecx, 0x4c56fc
call fcn.0044c730
jmp 0x4335bb
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044b6b0
jmp 0x4335d7
lea ecx, [0x4c56fc]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x433625
mov ecx, 0x4c5718
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x3a0], xmm0
lea ecx, [0x4c56fc]
lea eax, [esi + 0x3a0]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5718]
call fcn.0044b770
jmp 0x43362a
mov byte [esi + 0x417], 1
mov dword [esi + 0x6aa8], 1
test byte [esi + 0x417], 1
jne 0x433653
mov ecx, dword [esi + 0x23c]
call fcn.0044a600
jmp 0x433bdf
mov ecx, dword [esi + 0x23c]
mov byte [esi + 0x39f], 0
call fcn.0044b890
mov eax, dword [esi + 0x23c]
mov dword [eax], 0
mov dword [eax], 1
movss xmm0, dword [esi + 0x6a8c]
sub esp, 4
movss dword [esp], xmm0
call fcn.0044a770
add esp, 4
fstp dword [esi + 0x2c8]
movss xmm0, dword [esi + 0x2c8]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a660]
ucomisd xmm0, xmm1
jbe 0x4336db
mov eax, dword [esi + 0x23c]
xorps xmm0, xmm0
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [eax + 8], xmm0
jmp 0x433800
mov edx, dword [esi + 0x254]
mov ebx, dword [esi + 0x6a98]
movzx eax, byte [edx + 0x3ca]
mov dword [esi + 0x34], eax
movzx eax, byte [edx + 0x3cb]
mov dword [esi + 0x30], eax
movzx eax, byte [edx + 0x3cc]
mov dword [esi + 0x2c], eax
movzx ecx, byte [edx + 0x3cd]
movsd xmm0, qword [edx + 0x380]
movsd qword [esi + 0x390], xmm0
mov edi, edx
add edi, 0x3a9
add edx, 0x388
mov dword [esi + 0x6ad0], 4
sub esp, 0x28
movsd xmm0, qword [esi + 0x390]
mov eax, esp
mov dword [esi + 0x28], eax
movsd qword [eax + 0xc], xmm0
and ecx, 1
mov dword [eax + 0x24], ecx
mov ecx, dword [esi + 0x2c]
and ecx, 1
mov dword [eax + 0x20], ecx
mov ecx, dword [esi + 0x30]
and ecx, 1
mov dword [eax + 0x1c], ecx
mov ecx, dword [esi + 0x34]
and ecx, 1
mov dword [eax + 0x18], ecx
mov ecx, dword [esi + 0x254]
mov dword [eax + 0x14], ebx
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.0040aad0
add esp, 0x28
mov byte [esi + 0x3b], al
jmp 0x43378b
mov al, byte [esi + 0x3b]
test al, 1
jne 0x43379b
jmp 0x4337dd
mov eax, dword [esi + 0x23c]
mov ecx, dword [esi + 0x25c]
cvtsi2ss xmm0, dword [ecx]
movss xmm1, dword [0x48a2cc]
mulss xmm0, xmm1
movss xmm1, dword [0x48a5dc]
addss xmm0, xmm1
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [eax + 8], xmm0
jmp 0x4337fb
mov eax, dword [esi + 0x23c]
xorps xmm0, xmm0
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [eax + 8], xmm0
jmp 0x433800
mov eax, dword [esi + 0x25c]
mov ecx, dword [esi + 0x23c]
mov byte [ecx + 4], 0xff
mov byte [ecx + 5], 0xff
mov byte [ecx + 6], 0xff
mov byte [ecx + 7], 0xff
mov edx, dword [eax]
mov byte [esi + 0x38c], dl
mov edx, dword [ecx + 4]
mov dword [esi + 0x384], edx
mov ecx, dword [ecx + 8]
mov dword [esi + 0x388], ecx
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x383], al
mov al, byte [esi + 0x383]
mov dword [esi + 0x6ad0], 4
test al, 1
je 0x43391b
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x384]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x368]
mov dword [esi + 0x24], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x24]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x360]
mov dword [eax], ecx
mov ecx, 0x4c56f4
call fcn.0044c730
jmp 0x4338ac
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044b6b0
jmp 0x4338c8
lea ecx, [0x4c56f4]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x433916
mov ecx, 0x4c5704
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x358], xmm0
lea ecx, [0x4c56f4]
lea eax, [esi + 0x358]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5704]
call fcn.0044b770
jmp 0x4339d0
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x384]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x340]
mov dword [esi + 0x20], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x20]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x338]
mov dword [eax], ecx
mov ecx, 0x4c56fc
call fcn.0044c730
jmp 0x433961
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044b6b0
jmp 0x43397d
lea ecx, [0x4c56fc]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x4339cb
mov ecx, 0x4c5718
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x330], xmm0
lea ecx, [0x4c56fc]
lea eax, [esi + 0x330]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5718]
call fcn.0044b770
jmp 0x4339d0
mov byte [esi + 0x39f], 1
mov dword [esi + 0x6aa8], 1
test byte [esi + 0x39f], 1
jne 0x4339f9
mov ecx, dword [esi + 0x23c]
call fcn.0044a600
jmp 0x433bdf
mov eax, dword [esi + 0x25c]
mov ecx, dword [eax]
mov byte [esi + 0x32c], cl
mov ecx, dword [esi + 0x5fc4]
mov dword [esi + 0x324], ecx
mov ecx, dword [esi + 0x5fc8]
mov dword [esi + 0x328], ecx
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
cmp edx, 1
sete al
and al, 1
mov byte [esi + 0x323], al
mov al, byte [esi + 0x323]
mov dword [esi + 0x6ad0], 3
test al, 1
je 0x433b09
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x324]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x308]
mov dword [esi + 0x1c], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x1c]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x300]
mov dword [eax], ecx
mov ecx, 0x4c56f4
call fcn.0044c730
jmp 0x433a9a
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044b6b0
jmp 0x433ab6
lea ecx, [0x4c56f4]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x433b04
mov ecx, 0x4c5704
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x2f8], xmm0
lea ecx, [0x4c56f4]
lea eax, [esi + 0x2f8]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5704]
call fcn.0044b770
jmp 0x433bbe
sub esp, 8
mov eax, esp
lea ecx, [esi + 0x324]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
lea ecx, [esi + 0x2e0]
mov dword [esi + 0x18], ecx
call fcn.0044c770
mov ecx, dword [esi + 0x18]
sub esp, 8
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x2d8]
mov dword [eax], ecx
mov ecx, 0x4c56fc
call fcn.0044c730
jmp 0x433b4f
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044b6b0
jmp 0x433b6b
lea ecx, [0x4c56fc]
call fcn.0044b6e0
cmp eax, 0x186a0
jbe 0x433bb9
mov ecx, 0x4c5718
call fcn.0044b700
movsd xmm0, qword [eax]
movsd qword [esi + 0x2d0], xmm0
lea ecx, [0x4c56fc]
lea eax, [esi + 0x2d0]
sub esp, 4
mov dword [esp], eax
call fcn.0044c7b0
lea ecx, [0x4c5718]
call fcn.0044b770
jmp 0x433bbe
mov ecx, dword [esi + 0x23c]
lea eax, [esi + 0x5fc0]
sub esp, 4
mov dword [esp], eax
call fcn.0044b980
mov dword [esi + 0x6aa8], 1
lea eax, [esi + 0x403c]
add eax, 0x1f80
mov dword [esi + 0x14], eax
mov ecx, dword [esi + 0x14]
add ecx, 0xfffffe08
mov dword [esi + 0x10], ecx
call fcn.0044a600
mov eax, dword [esi + 0x10]
lea ecx, [esi + 0x403c]
cmp eax, ecx
mov dword [esi + 0x14], eax
jne 0x433bed
lea ecx, [esi + 0x5fc0]
call fcn.0044a600
lea ecx, [esi + 0x6794]
call fcn.0044a600
jmp 0x433c2d
mov ecx, dword [esi + 0x254]
call fcn.0044a5b0
mov eax, dword [esi + 0x238]
mov eax, dword [eax]
mov ecx, dword [esi + 0x6ac8]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret