Function at 0x42e5e0
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.00463df0
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], 0x449080
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.0044b9d0
mov dword [esi + 0x28c], edx
mov dword [esi + 0x290], eax
jmp 0x42e76c
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.0044bd40
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 0x42e8ce
lea ecx, [0x4c56f4]
call fcn.0044ba50
test al, 1
jne 0x42e7d9
jmp 0x42e7e8
mov dword [esi + 0x6aa8], 2
jmp 0x42e9d6
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.0044cb30
jmp 0x42e817
lea ecx, [0x4c56f4]
lea eax, [esi + 0x6aac]
sub esp, 4
mov dword [esp], eax
call fcn.0044cb90
lea ecx, [esi + 0x6ab0]
lea eax, [esi + 0x6aac]
sub esp, 4
mov dword [esp], eax
call fcn.0044bca0
test al, 1
jne 0x42e852
jmp 0x42e8bf
lea ecx, [esi + 0x6ab0]
call fcn.0044bd20
mov ecx, dword [esi + 0x25c]
movsx eax, byte [eax + 0x10]
cmp eax, dword [ecx]
jg 0x42e8b0
mov eax, dword [esi + 0x23c]
mov dword [eax], 1
lea ecx, [esi + 0x6ab0]
call fcn.0044bd20
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 0x42e9d6
mov dword [esi + 0x6aa8], 2
jmp 0x42e9d6
mov dword [esi + 0x6aa8], 2
jmp 0x42e9d6
lea ecx, [0x4c56fc]
call fcn.0044ba50
test al, 1
jne 0x42e8e6
jmp 0x42e8f5
mov dword [esi + 0x6aa8], 2
jmp 0x42e9d6
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.0044cb30
jmp 0x42e924
lea ecx, [0x4c56fc]
lea eax, [esi + 0x6aa0]
sub esp, 4
mov dword [esp], eax
call fcn.0044cb90
lea ecx, [esi + 0x6aa4]
lea eax, [esi + 0x6aa0]
sub esp, 4
mov dword [esp], eax
call fcn.0044bca0
test al, 1
jne 0x42e95f
jmp 0x42e9cc
lea ecx, [esi + 0x6aa4]
call fcn.0044bd20
mov ecx, dword [esi + 0x25c]
movsx eax, byte [eax + 0x10]
cmp eax, dword [ecx]
jg 0x42e9bd
mov eax, dword [esi + 0x23c]
mov dword [eax], 1
lea ecx, [esi + 0x6aa4]
call fcn.0044bd20
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 0x42e9d6
mov dword [esi + 0x6aa8], 2
jmp 0x42e9d6
mov dword [esi + 0x6aa8], 2
test byte [esi + 0x6ab7], 1
jne 0x42e9ee
mov ecx, dword [esi + 0x23c]
call fcn.0044aab0
cmp dword [esi + 0x6aa8], 2
je 0x42ea00
jmp 0x433c1d
jmp 0x42ea05
mov eax, dword [esi + 0x258]
cmp dword [eax], 0
jge 0x42ea26
mov eax, dword [esi + 0x258]
mov ecx, dword [eax]
add ecx, 2
mov dword [eax], ecx
jmp 0x42ea05
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.004343c0
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 0x42ea8e
mov eax, dword [esi + 0x24c]
mov eax, dword [eax]
mov dword [esi + 0x6ad0], 0
mov dword [esi + 0x234], eax
jmp 0x42eaa6
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.0040a810
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.0044ba70
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.00422200
add esp, 0x3e0
fstp dword [esi + 0x2cc]
movss xmm0, dword [esi + 0x2cc]
movss dword [esi + 0x230], xmm0
jmp 0x42eb95
movss xmm0, dword [esi + 0x230]
mov eax, dword [esi + 0x220]
mov esp, eax
movss dword [esi + 0x6a8c], xmm0
test byte [0x49a594], 1
je 0x42f075
movsx eax, byte [0x49812c]
cmp eax, 0xe
je 0x42ec4a
movsx eax, byte [0x49812c]
cmp eax, 0xc
je 0x42ec4a
movsx eax, byte [0x49812c]
cmp eax, 0xa
je 0x42ec4a
movsx eax, byte [0x49812c]
cmp eax, 8
je 0x42ec4a
movsx eax, byte [0x49812c]
cmp eax, 6
je 0x42ec4a
movsx eax, byte [0x49812c]
cmp eax, 7
je 0x42ec4a
movsx eax, byte [0x49812c]
cmp eax, 9
je 0x42ec4a
movsx eax, byte [0x49812c]
cmp eax, 0xb
je 0x42ec4a
movsx eax, byte [0x49812c]
cmp eax, 0xd
jne 0x42f075
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 0x42ed6e
movsx eax, byte [0x49812c]
cmp eax, 0xa
jne 0x42ec92
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 0x42ed6e
movsx eax, byte [0x49812c]
cmp eax, 0xc
jne 0x42ecbe
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 0x42ed6e
movsx eax, byte [0x49812c]
cmp eax, 9
jne 0x42ecea
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 0x42ed6e
movsx eax, byte [0x49812c]
cmp eax, 0xb
jne 0x42ed16
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 0x42ed6e
movsx eax, byte [0x49812c]
cmp eax, 0xd
jne 0x42ed42
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 0x42ed6e
movsx eax, byte [0x49812c]
cmp eax, 0xe
jne 0x42f070
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 0x42f070
mov eax, dword [esi + 0x274]
test byte [eax], 1
jne 0x42f06b
mov eax, dword [esi + 0x268]
test byte [eax], 1
jne 0x42f066
mov eax, dword [esi + 0x26c]
test byte [eax], 1
jne 0x42f066
lea ecx, [esi + 0x6a84]
call fcn.0040a6c0
mov eax, dword [esi + 0x244]
movss xmm0, dword [0x48a640]
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 0x42f061
mov ecx, dword [esi + 0x23c]
mov byte [esi + 0x6a7f], 0
call fcn.0044bd40
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.00401130
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.00401130
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 0x42ef6e
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.0044cc20
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.0044cbe0
jmp 0x42eeff
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044bb60
jmp 0x42ef1b
lea ecx, [0x4c56f4]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x42ef69
mov ecx, 0x4c5704
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5704]
call fcn.0044bc20
jmp 0x42f033
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.0044cc20
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.0044cbe0
jmp 0x42efc4
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044bb60
jmp 0x42efe0
lea ecx, [0x4c56fc]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x42f02e
mov ecx, 0x4c5718
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5718]
call fcn.0044bc20
jmp 0x42f033
mov byte [esi + 0x6a7f], 1
mov dword [esi + 0x6aa8], 1
test byte [esi + 0x6a7f], 1
jne 0x42f05c
mov ecx, dword [esi + 0x23c]
call fcn.0044aab0
jmp 0x433c1d
jmp 0x42f066
jmp 0x42f06b
jmp 0x42f070
jmp 0x42f075
test byte [0x49a595], 1
je 0x42f213
movsx eax, byte [0x49812c]
cmp eax, 0xe
je 0x42f0c2
movsx eax, byte [0x49812c]
cmp eax, 0xc
je 0x42f0c2
movsx eax, byte [0x49812c]
cmp eax, 8
je 0x42f0c2
movsx eax, byte [0x49812c]
cmp eax, 0xa
jne 0x42f213
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 0x42f162
movsx eax, byte [0x49812c]
cmp eax, 0xa
jne 0x42f10a
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 0x42f162
movsx eax, byte [0x49812c]
cmp eax, 0xc
jne 0x42f136
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 0x42f162
movsx eax, byte [0x49812c]
cmp eax, 0xe
jne 0x42f20e
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 0x42f20e
mov eax, dword [esi + 0x274]
test byte [eax], 1
jne 0x42f209
mov eax, dword [esi + 0x268]
test byte [eax], 1
jne 0x42f204
mov eax, dword [esi + 0x26c]
test byte [eax], 1
jne 0x42f204
lea ecx, [esi + 0x6a10]
call fcn.0040a6c0
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 0x42f1ff
mov eax, dword [esi + 0x250]
movsx eax, byte [eax]
cmp eax, 8
jle 0x42f1ed
mov eax, dword [esi + 0x258]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x42f1fa
mov eax, dword [esi + 0x258]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x42f1ff
jmp 0x42f204
jmp 0x42f209
jmp 0x42f20e
jmp 0x42f213
mov ecx, dword [esi + 0x250]
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
movsx ecx, byte [ecx]
cmp eax, ecx
jge 0x42f257
mov eax, dword [esi + 0x254]
sub esp, 4
mov dword [esp], eax
call fcn.00421440
add esp, 4
test al, 1
jne 0x42f257
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0x1e
jl 0x42f75b
mov ecx, dword [esi + 0x23c]
mov byte [esi + 0x6a0b], 0
call fcn.0044bd40
mov eax, dword [esi + 0x23c]
mov dword [eax], 1
cmp dword [0x49a580], 0
jne 0x42f34c
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.0044ba70
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.00429e60
add esp, 0x3e4
fstp dword [esi + 0x294]
movss xmm0, dword [esi + 0x294]
movss dword [esi + 0x214], xmm0
jmp 0x42f32c
mov eax, dword [esi + 0x23c]
movss xmm0, dword [esi + 0x214]
mov ecx, dword [esi + 0x208]
mov esp, ecx
movss dword [eax + 8], xmm0
jmp 0x42f518
mov eax, dword [esi + 0x288]
mov eax, dword [eax]
cmp eax, dword [0x49a578]
jg 0x42f44e
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.0044ba70
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.0042c160
add esp, 0x3ec
fstp dword [esi + 0x298]
movss xmm0, dword [esi + 0x298]
movss dword [esi + 0x204], xmm0
jmp 0x42f42e
mov eax, dword [esi + 0x23c]
movss xmm0, dword [esi + 0x204]
mov ecx, dword [esi + 0x1f4]
mov esp, ecx
movss dword [eax + 8], xmm0
jmp 0x42f513
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.0044ba70
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.00429e60
add esp, 0x3e4
fstp dword [esi + 0x29c]
movss xmm0, dword [esi + 0x29c]
movss dword [esi + 0x1f0], xmm0
jmp 0x42f4f8
mov eax, dword [esi + 0x23c]
movss xmm0, dword [esi + 0x1f0]
mov ecx, dword [esi + 0x1e4]
mov esp, ecx
movss dword [eax + 8], xmm0
jmp 0x42f518
sub esp, 4
mov dword [esp], 0xffffffff
call fcn.00401130
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.00401130
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 0x42f672
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.0044cc20
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.0044cbe0
jmp 0x42f603
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044bb60
jmp 0x42f61f
lea ecx, [0x4c56f4]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x42f66d
mov ecx, 0x4c5704
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5704]
call fcn.0044bc20
jmp 0x42f72d
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.0044cc20
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.0044cbe0
jmp 0x42f6be
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044bb60
jmp 0x42f6da
lea ecx, [0x4c56fc]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x42f728
mov ecx, 0x4c5718
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5718]
call fcn.0044bc20
jmp 0x42f72d
mov byte [esi + 0x6a0b], 1
mov dword [esi + 0x6aa8], 1
test byte [esi + 0x6a0b], 1
jne 0x42f756
mov ecx, dword [esi + 0x23c]
call fcn.0044aab0
jmp 0x433c1d
mov dword [esi + 0x6994], 0
mov dword [esi + 0x6990], 0
movss xmm0, dword [0x48a5ec]
movss dword [esi + 0x698c], xmm0
lea ecx, [esi + 0x6794]
call fcn.00449480
lea ecx, [esi + 0x5fc0]
call fcn.0044bd40
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.00449480
mov ecx, dword [esi + 0x1d4]
mov eax, dword [esi + 0x1d0]
add eax, 0x1f8
cmp eax, ecx
mov dword [esi + 0x1d8], eax
jne 0x42f7c6
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 0x42fddc
mov eax, dword [esi + 0x26c]
test byte [eax], 1
jne 0x42fddc
mov eax, dword [esi + 0x274]
test byte [eax], 1
jne 0x42fddc
movsx eax, byte [0x49812c]
cmp eax, 6
je 0x42f89e
movsx eax, byte [0x49812c]
cmp eax, 7
je 0x42f89e
movsx eax, byte [0x49812c]
cmp eax, 8
je 0x42f89e
movsx eax, byte [0x49812c]
cmp eax, 0xa
je 0x42f89e
movsx eax, byte [0x49812c]
cmp eax, 0xc
je 0x42f89e
movsx eax, byte [0x49812c]
cmp eax, 0xe
jne 0x42fdd2
lea ecx, [esi + 0x308c]
call fcn.0044bd40
mov dword [esi + 0x308c], 0
mov dword [esi + 0x6ad0], 9
lea ecx, [esi + 0x2cbc]
call fcn.004013e0
jmp 0x42f8cd
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.004494e0
movss xmm0, dword [0x48a620]
ucomiss xmm0, dword [esi + 0x6a94]
jbe 0x42fd80
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 0x42fa62
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 2
mov dword [esi + 0x19c], eax
jmp 0x42fb4a
movsx eax, byte [0x49812c]
cmp eax, 8
jne 0x42fa8b
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 4
mov dword [esi + 0x198], eax
jmp 0x42fb3e
movsx eax, byte [0x49812c]
cmp eax, 0xa
jne 0x42fab4
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 6
mov dword [esi + 0x194], eax
jmp 0x42fb32
movsx eax, byte [0x49812c]
cmp eax, 0xc
jne 0x42fadd
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 8
mov dword [esi + 0x190], eax
jmp 0x42fb26
movsx eax, byte [0x49812c]
cmp eax, 0xe
jne 0x42fb06
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
add eax, 1
add eax, 0xa
mov dword [esi + 0x18c], eax
jmp 0x42fb1a
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.0044ba70
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 [0x48a66c]
movaps xmm0, xmm1
addss xmm0, xmm2
movaps xmm2, xmmword [0x48a650]
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.0042e5e0
add esp, 0x420
jmp 0x42fc8e
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.0044bdc0
lea ecx, [esi + 0x24e4]
call fcn.0044aab0
mov dword [esi + 0x24e0], 0
mov eax, dword [esi + 0x24e0]
cmp eax, dword [esi + 0x308c]
jge 0x42fd08
mov eax, dword [esi + 0x24e0]
movss xmm0, dword [0x48a648]
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 0x42fcc2
mov eax, dword [esi + 0x244]
movss xmm0, dword [esi + 0x3094]
ucomiss xmm0, dword [eax]
jbe 0x42fd7b
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 0x42fd8a
jmp 0x42fd80
mov dword [esi + 0x6aa8], 0
lea ecx, [esi + 0x2cbc]
call fcn.0044aa60
lea ecx, [esi + 0x308c]
call fcn.0044aab0
mov eax, dword [esi + 0x6aa8]
mov dword [esi + 0x184], eax
test eax, eax
je 0x42fdcd
jmp 0x42fdb9
mov eax, dword [esi + 0x184]
sub eax, 8
je 0x4339ee
jmp 0x433bcf
jmp 0x42fdd2
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.0044ba70
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.00425ac0
add esp, 0x414
jmp 0x42ff5e
mov eax, dword [esi + 0x160]
mov esp, eax
cmp dword [esi + 0x5fbc], 0
jle 0x430a1e
mov eax, dword [esi + 0x25c]
mov eax, dword [eax]
cmp dword [eax*4 + 0x4c5564], 0
jle 0x430a19
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 0x430188
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 0x430174
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 0x430160
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 0x430160
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 0x430160
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 0x430160
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 0x43015b
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 0x43015b
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 0x43015b
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 0x43015b
mov byte [esi + 0x24d7], 1
jmp 0x430174
jmp 0x430160
mov eax, dword [esi + 0x24c8]
add eax, 1
mov dword [esi + 0x24c8], eax
jmp 0x42ffc2
mov eax, dword [esi + 0x24cc]
add eax, 1
mov dword [esi + 0x24cc], eax
jmp 0x42ffa6
test byte [esi + 0x24d7], 1
je 0x4305c1
cmp dword [esi + 0x5fbc], 0
jle 0x4305c1
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.00466460
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.00466460
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 0x430414
mov eax, dword [esi + 0x3864]
mov dword [esi + 0x1ddc], eax
mov eax, dword [esi + 0x1ddc]
cmp eax, dword [esi + 0x3868]
jge 0x430400
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 0x4303ec
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 0x4303ec
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 0x4303ec
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 0x4303ec
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 0x4303e7
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 0x4303e7
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 0x4303e7
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 0x4303e7
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 0x430400
jmp 0x4303ec
mov eax, dword [esi + 0x1ddc]
add eax, 1
mov dword [esi + 0x1ddc], eax
jmp 0x430229
mov eax, dword [esi + 0x1de0]
add eax, 1
mov dword [esi + 0x1de0], eax
jmp 0x430202
mov eax, dword [esi + 0x3864]
add eax, dword [esi + 0x24c4]
add eax, 1
mov dword [esi + 0x24d0], eax
cmp dword [esi + 0x24c4], 0
jl 0x4305bc
mov dword [esi + 0x1dd8], 0
mov eax, dword [esi + 0x1dd8]
cmp eax, dword [esi + 0x24c4]
jg 0x4305b7
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 0x4304be
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 0x430465
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 0x430440
jmp 0x4305bc
jmp 0x4305c1
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 0x43060d
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 0x4305d9
mov eax, dword [esi + 0x6994]
mov dword [esi + 0x1cd0], eax
mov eax, dword [esi + 0x1cd0]
cmp eax, dword [esi + 0x3868]
jge 0x4308ff
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.00401150
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.004013e0
jmp 0x4306c6
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.004494e0
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.00449690
jmp 0x4307b9
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.00415a80
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.0040aac0
add esp, 0x28
mov byte [esi + 0x14b], al
jmp 0x4308ca
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.0044aa60
mov eax, dword [esi + 0x1cd0]
add eax, 1
mov dword [esi + 0x1cd0], eax
jmp 0x430619
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 0x430a14
mov eax, dword [esi + 0x18e4]
test byte [esi + eax + 0x1cda], 1
je 0x430a00
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 0x4309ba
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 0x43096c
mov eax, dword [esi + 0x18e4]
cmp eax, dword [esi + 0x6990]
je 0x4309fb
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 0x430a00
mov eax, dword [esi + 0x18e4]
add eax, 1
mov dword [esi + 0x18e4], eax
jmp 0x430917
jmp 0x430a19
jmp 0x430a1e
cmp dword [esi + 0x5fbc], 1
jne 0x430a61
movsx eax, byte [esi + 0x386c]
movsx ecx, byte [esi + 0x386e]
cmp eax, ecx
jne 0x430a61
movsx eax, byte [esi + 0x386d]
movsx ecx, byte [esi + 0x386f]
cmp eax, ecx
jne 0x430a61
mov dword [esi + 0x5fbc], 0
cmp dword [esi + 0x5fbc], 0
jle 0x433648
cmp dword [esi + 0x5fbc], 0xfa
jle 0x430acd
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.0044c330
add esp, 0xc
jmp 0x430ab0
sub esp, 4
mov eax, esp
mov dword [eax], str.PAUSE
call fcn.0046998e
add esp, 4
jmp 0x430ac8
jmp 0x430acd
mov dword [esi + 0x18d4], 0
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x3868]
mov byte [esi + 0x133], al
jge 0x430b11
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 0x430b24
jmp 0x432d47
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386c]
cmp eax, 0
jl 0x430bdc
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386c]
cmp eax, 7
jg 0x430bdc
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386d]
cmp eax, 0
jl 0x430bdc
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386d]
cmp eax, 7
jg 0x430bdc
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386e]
cmp eax, 0
jl 0x430bdc
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386e]
cmp eax, 7
jg 0x430bdc
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386f]
cmp eax, 0
jl 0x430bdc
mov eax, dword [esi + 0x18d4]
movsx eax, byte [esi + eax*8 + 0x386f]
cmp eax, 7
jle 0x430bf5
mov dword [esi + 0x3868], 0
mov dword [esi + 0x5fbc], 0
jmp 0x432d47
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.00401150
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.004013e0
jmp 0x430c90
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.004494e0
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.00449690
jmp 0x430d83
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 0x430e89
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.00425a80
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.00425a80
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 0x430f95
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 0x430f90
mov eax, dword [esi + 0x254]
cmp dword [eax + 0x384], 0xc
jne 0x430f90
mov ecx, dword [esi + 0x254]
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [ecx + 0x382]
cmp eax, ecx
jne 0x430f90
mov ecx, dword [esi + 0x254]
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [ecx + 0x380]
cmp eax, ecx
jne 0x430f90
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18d0]
add ecx, 1
cmp eax, ecx
je 0x430f36
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18d0]
sub ecx, 1
cmp eax, ecx
jne 0x430f90
mov eax, dword [esi + 0x254]
movsx eax, byte [eax + 0x381]
cmp eax, 1
jne 0x430f90
mov eax, dword [esi + 0x254]
movsx eax, byte [eax + 0x383]
cmp eax, 3
jne 0x430f90
movsx eax, byte [esi + 0x18d1]
cmp eax, 3
jne 0x430f90
movsx eax, byte [esi + 0x18cd]
cmp eax, 2
jne 0x430f90
mov byte [esi + 0x14ef], 1
mov byte [esi + 0x14ee], 1
jmp 0x430f95
cmp dword [esi + 0x6a98], 1
jne 0x4310a1
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 0x43109c
mov eax, dword [esi + 0x254]
cmp dword [eax + 0x384], 6
jne 0x43109c
mov ecx, dword [esi + 0x254]
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [ecx + 0x382]
cmp eax, ecx
jne 0x43109c
mov ecx, dword [esi + 0x254]
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [ecx + 0x380]
cmp eax, ecx
jne 0x43109c
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18d0]
add ecx, 1
cmp eax, ecx
je 0x431042
movsx eax, byte [esi + 0x18cc]
movsx ecx, byte [esi + 0x18d0]
sub ecx, 1
cmp eax, ecx
jne 0x43109c
mov eax, dword [esi + 0x254]
movsx eax, byte [eax + 0x381]
cmp eax, 6
jne 0x43109c
mov eax, dword [esi + 0x254]
movsx eax, byte [eax + 0x383]
cmp eax, 4
jne 0x43109c
movsx eax, byte [esi + 0x18d1]
cmp eax, 4
jne 0x43109c
movsx eax, byte [esi + 0x18cd]
cmp eax, 5
jne 0x43109c
mov byte [esi + 0x14ef], 1
mov byte [esi + 0x14ee], 1
jmp 0x4310a1
lea ecx, [esi + 0xd18]
call fcn.0044bd40
mov dword [esi + 0xd18], 0
mov byte [esi + 0xd17], 0
mov byte [esi + 0xd16], 0
cmp dword [esi + 0x6a98], 2
jne 0x431319
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 0x431319
mov dword [esi + 0xd10], 0
mov eax, dword [esi + 0xd10]
movsx ecx, byte [esi + 0x18a5]
cmp eax, ecx
jge 0x431314
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 0x431300
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.0044caf0
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 [0x48a678]
ucomisd xmm0, xmm1
jbe 0x4312fb
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.0044caf0
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 0x4312ac
mov byte [esi + 0xd16], 1
movss xmm0, dword [esi + 0xd0c]
ucomiss xmm0, dword [esi + 0xd08]
jne 0x4312f6
jp 0x4312f6
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 0x4312f6
mov byte [esi + 0xd16], 1
jmp 0x4312fb
jmp 0x431314
mov eax, dword [esi + 0xd10]
add eax, 1
mov dword [esi + 0xd10], eax
jmp 0x4310fe
jmp 0x431319
cmp dword [esi + 0x6a98], 1
jne 0x43156e
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 0x43156e
mov dword [esi + 0xd00], 0
mov eax, dword [esi + 0xd00]
movsx ecx, byte [esi + 0x1884]
cmp eax, ecx
jge 0x431569
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 0x431555
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.0044caf0
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 [0x48a678]
ucomisd xmm0, xmm1
jbe 0x431550
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.0044caf0
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 0x431501
mov byte [esi + 0xd16], 1
movss xmm0, dword [esi + 0xcfc]
ucomiss xmm0, dword [esi + 0xcf8]
jne 0x43154b
jp 0x43154b
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 0x43154b
mov byte [esi + 0xd16], 1
jmp 0x431550
jmp 0x431569
mov eax, dword [esi + 0xd00]
add eax, 1
mov dword [esi + 0xd00], eax
jmp 0x431353
jmp 0x43156e
cmp dword [0x49a590], 0
jne 0x431582
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 0x431766
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 0x431752
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.0044caf0
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.0044caf0
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 [0x48a680]
ucomisd xmm0, xmm1
jbe 0x431728
mov byte [esi + 0xcf7], 1
movss xmm0, dword [esi + 0xce8]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a680]
ucomisd xmm0, xmm1
jbe 0x43174d
mov byte [esi + 0xcf7], 1
jmp 0x431766
mov eax, dword [esi + 0xcf0]
add eax, 1
mov dword [esi + 0xcf0], eax
jmp 0x431593
mov dword [esi + 0xce0], 0
mov eax, dword [esi + 0xce0]
movsx ecx, byte [esi + 0x1884]
cmp eax, ecx
jge 0x431943
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 0x43192f
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.0044caf0
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.0044caf0
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 [0x48a680]
ucomisd xmm0, xmm1
jbe 0x431905
mov byte [esi + 0xcf7], 1
movss xmm0, dword [esi + 0xcd8]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a680]
ucomisd xmm0, xmm1
jbe 0x43192a
mov byte [esi + 0xcf7], 1
jmp 0x431943
mov eax, dword [esi + 0xce0]
add eax, 1
mov dword [esi + 0xce0], eax
jmp 0x431770
mov byte [esi + 0xcd7], 1
movss xmm0, dword [esi + 0x6a94]
movss dword [esi + 0xcd0], xmm0
cmp dword [0x49a58c], 2
jne 0x43198c
movss xmm0, dword [esi + 0xcd0]
movss xmm1, dword [0x48a688]
ucomiss xmm0, xmm1
jbe 0x431987
mov byte [esi + 0xcd7], 0
jmp 0x4319b1
movss xmm0, dword [esi + 0xcd0]
movss xmm1, dword [0x48a620]
ucomiss xmm0, xmm1
jbe 0x4319ac
mov byte [esi + 0xcd7], 0
jmp 0x4319b1
mov eax, dword [esi + 0x260]
mov dword [esi + 0xccc], 0xa
mov dword [esi + 0xcc8], 2
movsx eax, byte [eax]
cmp eax, 2
jge 0x431ac2
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.00415a80
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.0040aac0
add esp, 0x28
mov byte [esi + 0x117], al
jmp 0x431ab4
mov al, byte [esi + 0x117]
and al, 1
mov byte [esi + 0x6a9f], al
movsx eax, byte [0x49812c]
cmp eax, 4
jg 0x431f3c
cmp dword [0x49a58c], 0
jne 0x431b46
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431b04
mov al, byte [esi + 0x6a9f]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431b41
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xff], al
jl 0x431b33
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 0x431f37
cmp dword [0x49a58c], 1
jne 0x431c4e
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0xa
jle 0x431bc9
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431b87
mov al, byte [esi + 0x6a9f]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431bc4
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xfe], al
jl 0x431bb6
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 0x431c49
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xfd], al
jne 0x431c3b
test byte [esi + 0xcd7], 1
je 0x431c00
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xfd], al
jle 0x431c3b
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xfc], al
jl 0x431c2f
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 0x431f32
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0xa
jle 0x431dd3
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431c89
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xfb], al
jne 0x431dc0
jmp 0x431cb5
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jl 0x431cb5
mov ecx, dword [esi + 0x18d4]
mov al, 1
cmp ecx, dword [esi + 0x6990]
mov byte [esi + 0xfb], al
jl 0x431dc0
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xfa], al
je 0x431db4
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xf9], al
jle 0x431da8
cmp dword [esi + 0x6a98], 2
jne 0x431d27
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 0x431d27
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 1
mov byte [esi + 0xf9], al
je 0x431da8
cmp dword [esi + 0x6a98], 1
jne 0x431d6f
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 0x431d6f
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 6
mov byte [esi + 0xf9], al
je 0x431da8
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x431d8f
mov al, byte [esi + 0xcf7]
mov byte [esi + 0xf8], al
jmp 0x431d9c
xor eax, eax
mov byte [esi + 0xf8], al
jmp 0x431d9c
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 0x431f2d
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xf7], al
jne 0x431f1f
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jl 0x431e14
mov ecx, dword [esi + 0x18d4]
mov al, 1
cmp ecx, dword [esi + 0x6990]
mov byte [esi + 0xf7], al
jl 0x431f1f
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xf6], al
je 0x431f13
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xf5], al
jle 0x431f07
cmp dword [esi + 0x6a98], 2
jne 0x431e86
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 0x431e86
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 1
mov byte [esi + 0xf5], al
je 0x431f07
cmp dword [esi + 0x6a98], 1
jne 0x431ece
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 0x431ece
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 6
mov byte [esi + 0xf5], al
je 0x431f07
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x431eee
mov al, byte [esi + 0xcf7]
mov byte [esi + 0xf4], al
jmp 0x431efb
xor eax, eax
mov byte [esi + 0xf4], al
jmp 0x431efb
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 0x431f32
jmp 0x431f37
jmp 0x43241c
cmp dword [0x49a58c], 0
jne 0x431fb0
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431f6e
mov al, byte [esi + 0x6a9f]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x431fab
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xf3], al
jl 0x431f9d
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 0x432417
cmp dword [0x49a58c], 1
jne 0x4320b8
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0xa
jle 0x432033
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x431ff1
mov al, byte [esi + 0x6a9f]
and al, 1
mov byte [esi + 0xd17], al
jmp 0x43202e
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xf2], al
jl 0x432020
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 0x4320b3
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xf1], al
jne 0x4320a5
test byte [esi + 0xcd7], 1
je 0x43206a
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xf1], al
jle 0x4320a5
mov ecx, dword [esi + 0x18d4]
xor eax, eax
cmp ecx, dword [esi + 0x6994]
mov byte [esi + 0xf0], al
jl 0x432099
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 0x432412
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0xa
jle 0x43228f
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jge 0x4320f3
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xef], al
jne 0x43227c
jmp 0x43211f
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jl 0x43211f
mov ecx, dword [esi + 0x18d4]
mov al, 1
cmp ecx, dword [esi + 0x6990]
mov byte [esi + 0xef], al
jl 0x43227c
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xee], al
je 0x432270
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xed], al
jle 0x432264
cmp dword [esi + 0x5fbc], 3
jge 0x43216d
mov ecx, dword [esi + 0x25c]
mov al, 1
cmp dword [ecx], 7
mov byte [esi + 0xed], al
jl 0x432264
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x432196
mov al, 1
test byte [esi + 0x14ee], 1
mov byte [esi + 0xed], al
jne 0x432264
jmp 0x43219b
jmp 0x43219b
cmp dword [esi + 0x6a98], 2
jne 0x4321e3
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 0x4321e3
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 1
mov byte [esi + 0xed], al
je 0x432264
cmp dword [esi + 0x6a98], 1
jne 0x43222b
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 0x43222b
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 6
mov byte [esi + 0xed], al
je 0x432264
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x43224b
mov al, byte [esi + 0xcf7]
mov byte [esi + 0xec], al
jmp 0x432258
xor eax, eax
mov byte [esi + 0xec], al
jmp 0x432258
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 0x43240d
mov al, 1
test byte [esi + 0x6a9f], 1
mov byte [esi + 0xeb], al
jne 0x4323ff
mov eax, dword [esi + 0x18d4]
cmp eax, dword [esi + 0x6994]
jl 0x4322d0
mov ecx, dword [esi + 0x18d4]
mov al, 1
cmp ecx, dword [esi + 0x6990]
mov byte [esi + 0xeb], al
jl 0x4323ff
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xea], al
je 0x4323f3
mov al, 1
cmp dword [esi + 0x5fbc], 1
mov byte [esi + 0xe9], al
jle 0x4323e7
cmp dword [esi + 0x5fbc], 3
jge 0x43231e
mov ecx, dword [esi + 0x25c]
mov al, 1
cmp dword [ecx], 7
mov byte [esi + 0xe9], al
jl 0x4323e7
cmp dword [esi + 0x6a98], 2
jne 0x432366
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 0x432366
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 1
mov byte [esi + 0xe9], al
je 0x4323e7
cmp dword [esi + 0x6a98], 1
jne 0x4323ae
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 0x4323ae
movsx ecx, byte [esi + 0x18cd]
mov al, 1
cmp ecx, 6
mov byte [esi + 0xe9], al
je 0x4323e7
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jge 0x4323ce
mov al, byte [esi + 0xcf7]
mov byte [esi + 0xe8], al
jmp 0x4323db
xor eax, eax
mov byte [esi + 0xe8], al
jmp 0x4323db
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 0x432412
jmp 0x432417
jmp 0x43241c
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 0x432497
test byte [esi + 0xcd7], 1
je 0x4324ad
mov eax, dword [esi + 0x278]
cmp dword [eax], 4
jge 0x432492
test byte [esi + 0xd16], 1
jne 0x432497
jmp 0x4324ad
jmp 0x4324ad
mov eax, dword [esi + 0x284]
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0xd8], eax
jmp 0x4324bb
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 0x4324ea
mov eax, dword [esi + 0x27c]
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0xd0], eax
jmp 0x4324f8
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 0x432527
mov eax, dword [esi + 0x278]
mov eax, dword [eax]
add eax, 1
mov dword [esi + 0xc8], eax
jmp 0x432535
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 0x4325eb
mov al, 1
test byte [esi + 0xd17], 1
mov byte [esi + 0xc7], al
jne 0x4325eb
xor eax, eax
test byte [esi + 0xcd7], 1
mov byte [esi + 0xb7], al
je 0x4325df
mov eax, dword [esi + 0x278]
cmp dword [eax], 4
jge 0x4325c6
mov al, byte [esi + 0xd16]
mov byte [esi + 0xb6], al
jmp 0x4325d3
xor eax, eax
mov byte [esi + 0xb6], al
jmp 0x4325d3
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 0x432629
mov eax, dword [esi + 0x260]
movsx eax, byte [eax]
add eax, 1
mov dword [esi + 0xb0], eax
jmp 0x432638
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 0x432695
test byte [esi + 0xcd7], 1
je 0x4326fe
mov eax, dword [esi + 0x278]
cmp dword [eax], 4
jge 0x432690
test byte [esi + 0xd16], 1
jne 0x432695
jmp 0x4326fe
jmp 0x4326fe
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 0x4326d2
mov eax, dword [esi + 0x258]
mov eax, dword [eax]
sub eax, 1
mov dword [esi + 0xa4], eax
jmp 0x4326e3
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 0x432719
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.0044ba70
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 [0x48a650]
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.0042e5e0
add esp, 0x420
jmp 0x432856
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.0044bdc0
lea ecx, [esi + 0x4e8]
call fcn.0044aab0
mov dword [esi + 0x4e4], 0
mov eax, dword [esi + 0x4e4]
cmp eax, dword [esi + 0xd18]
jge 0x4328d0
mov eax, dword [esi + 0x4e4]
movss xmm0, dword [0x48a648]
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 0x43288a
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.00401170
mov eax, dword [esi + 0x25c]
add esp, 0xc
movss xmm0, dword [esi + 0xd20]
movss dword [esi + 0x14f0], xmm0
cmp dword [eax], 0xfffffff9
jg 0x432af1
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.0044c380
mov dword [esi + 0x98], eax
jmp 0x432948
mov ecx, dword [esi + 0x98]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x48a891
call fcn.0044bea0
add esp, 8
mov dword [esi + 0x94], eax
jmp 0x43296f
mov ecx, dword [esi + 0x94]
mov edx, dword [esi + 0x18d4]
inc edx
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044c380
mov dword [esi + 0x90], eax
jmp 0x432993
mov ecx, dword [esi + 0x90]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x48a891
call fcn.0044bea0
add esp, 8
mov dword [esi + 0x8c], eax
jmp 0x4329ba
mov ecx, dword [esi + 0x8c]
movss xmm0, dword [esi + 0xd20]
sub esp, 4
mov eax, esp
movss dword [eax], xmm0
call fcn.0044c600
mov dword [esi + 0x88], eax
jmp 0x4329e1
mov ecx, dword [esi + 0x88]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x48a891
call fcn.0044bea0
add esp, 8
mov dword [esi + 0x84], eax
jmp 0x432a08
mov ecx, dword [esi + 0x84]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], str._alpha_
call fcn.0044bea0
add esp, 8
mov dword [esi + 0x80], eax
jmp 0x432a2f
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.0044c600
mov dword [esi + 0x7c], eax
jmp 0x432a55
mov ecx, dword [esi + 0x7c]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], str._beta_
call fcn.0044bea0
add esp, 8
mov dword [esi + 0x78], eax
jmp 0x432a76
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.0044c600
mov dword [esi + 0x74], eax
jmp 0x432a99
mov ecx, dword [esi + 0x74]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], 0x48a7c4
call fcn.0044bea0
add esp, 8
jmp 0x432ab7
mov eax, dword [esi + 0x18d4]
lea ecx, [esi + eax*8 + 0x386c]
call fcn.0044c850
jmp 0x432ace
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jne 0x432aec
call fcn.00469c9b
jmp 0x432ae7
jmp 0x432aec
jmp 0x432af1
cmp dword [esi + 0xd18], 0
jne 0x432b0d
mov dword [esi + 0x6aa8], 0x29
jmp 0x432c23
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.0044c290
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.0044c290
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 0x432c19
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 0x432bc0
jmp 0x432bc0
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 0x432c23
mov dword [esi + 0x6aa8], 0
lea ecx, [esi + 0xd18]
call fcn.0044aab0
cmp dword [esi + 0x6aa8], 0
jne 0x432ceb
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 0x432c69
jmp 0x432c69
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jne 0x432c97
movss xmm0, dword [esi + 0x14f0]
mov eax, dword [esi + 0x5fc0]
sub eax, 1
movss dword [esi + eax*8 + 0x5fc8], xmm0
jmp 0x432cb1
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.0044aa60
mov eax, dword [esi + 0x6aa8]
mov dword [esi + 0x70], eax
test eax, eax
je 0x432d2e
jmp 0x432d0c
mov eax, dword [esi + 0x70]
sub eax, 0x29
je 0x432d33
jmp 0x432d1d
mov eax, dword [esi + 0x70]
sub eax, 0x39
je 0x432d4c
jmp 0x433bcf
jmp 0x432d33
mov eax, dword [esi + 0x18d4]
add eax, 1
mov dword [esi + 0x18d4], eax
jmp 0x430ad7
jmp 0x432d4c
mov eax, dword [esi + 0x25c]
cmp dword [eax], 0
jne 0x432f41
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 0x432e66
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.0044cc20
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.0044cbe0
jmp 0x432df7
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044bb60
jmp 0x432e13
lea ecx, [0x4c56f4]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x432e61
mov ecx, 0x4c5704
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5704]
call fcn.0044bc20
jmp 0x432f1b
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.0044cc20
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.0044cbe0
jmp 0x432eac
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044bb60
jmp 0x432ec8
lea ecx, [0x4c56fc]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x432f16
mov ecx, 0x4c5718
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5718]
call fcn.0044bc20
jmp 0x432f1b
mov ecx, dword [esi + 0x23c]
lea eax, [esi + 0x5fc0]
sub esp, 4
mov dword [esp], eax
call fcn.0044be30
mov dword [esi + 0x6aa8], 1
jmp 0x433bcf
cmp dword [esi + 0x5fc0], 0
jne 0x433269
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.0040aac0
add esp, 0x28
mov byte [esi + 0x67], al
jmp 0x433008
mov al, byte [esi + 0x67]
test al, 1
jne 0x433018
jmp 0x433057
mov eax, dword [esi + 0x25c]
cvtsi2ss xmm0, dword [eax]
movss xmm1, dword [0x48a2cc]
mulss xmm0, xmm1
movss xmm1, dword [0x48a5ec]
addss xmm0, xmm1
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [esi + 0x5fc8], xmm0
jmp 0x433072
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 0x43318e
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.0044cc20
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.0044cbe0
jmp 0x43311f
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044bb60
jmp 0x43313b
lea ecx, [0x4c56f4]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x433189
mov ecx, 0x4c5704
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5704]
call fcn.0044bc20
jmp 0x433243
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.0044cc20
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.0044cbe0
jmp 0x4331d4
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044bb60
jmp 0x4331f0
lea ecx, [0x4c56fc]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x43323e
mov ecx, 0x4c5718
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5718]
call fcn.0044bc20
jmp 0x433243
mov ecx, dword [esi + 0x23c]
lea eax, [esi + 0x5fc0]
sub esp, 4
mov dword [esp], eax
call fcn.0044be30
mov dword [esi + 0x6aa8], 1
jmp 0x433bcf
mov ecx, dword [esi + 0x23c]
mov byte [esi + 0x417], 0
call fcn.0044bd40
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.00401170
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 0x43333b
mov eax, dword [esi + 0x408]
movss xmm0, dword [esi + eax*8 + 0x5fc8]
ucomiss xmm0, dword [esi + 0x40c]
jbe 0x433327
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 0x4332d6
cmp dword [esi + 0x410], 0
je 0x4333b8
mov dword [esi + 0x6ad0], 5
sub esp, 8
mov eax, esp
mov dword [eax + 4], str.id_found_
mov dword [eax], 0x4c5b70
call fcn.0044bea0
add esp, 8
mov dword [esi + 0x48], eax
jmp 0x433374
mov ecx, dword [esi + 0x48]
mov edx, dword [esi + 0x410]
sub esp, 4
mov eax, esp
mov dword [eax], edx
call fcn.0044c380
mov dword [esi + 0x44], eax
jmp 0x433391
mov ecx, dword [esi + 0x44]
sub esp, 4
mov eax, esp
mov dword [eax], 0x44c9a0
call fcn.0044c980
jmp 0x4333a9
call fcn.00469c9b
jmp 0x4333b3
jmp 0x4333b8
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 0x433446
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.00434370
add esp, 0xc
mov eax, dword [esi + 0x25c]
cmp dword [eax], 1
jne 0x43345a
jmp 0x43345a
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 0x433565
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.0044cc20
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.0044cbe0
jmp 0x4334f6
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044bb60
jmp 0x433512
lea ecx, [0x4c56f4]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x433560
mov ecx, 0x4c5704
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5704]
call fcn.0044bc20
jmp 0x43361a
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.0044cc20
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.0044cbe0
jmp 0x4335ab
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044bb60
jmp 0x4335c7
lea ecx, [0x4c56fc]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x433615
mov ecx, 0x4c5718
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5718]
call fcn.0044bc20
jmp 0x43361a
mov byte [esi + 0x417], 1
mov dword [esi + 0x6aa8], 1
test byte [esi + 0x417], 1
jne 0x433643
mov ecx, dword [esi + 0x23c]
call fcn.0044aab0
jmp 0x433bcf
mov ecx, dword [esi + 0x23c]
mov byte [esi + 0x39f], 0
call fcn.0044bd40
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.0044ac20
add esp, 4
fstp dword [esi + 0x2c8]
movss xmm0, dword [esi + 0x2c8]
cvtss2sd xmm1, xmm0
movsd xmm0, qword [0x48a670]
ucomisd xmm0, xmm1
jbe 0x4336cb
mov eax, dword [esi + 0x23c]
xorps xmm0, xmm0
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [eax + 8], xmm0
jmp 0x4337f0
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.0040aac0
add esp, 0x28
mov byte [esi + 0x3b], al
jmp 0x43377b
mov al, byte [esi + 0x3b]
test al, 1
jne 0x43378b
jmp 0x4337cd
mov eax, dword [esi + 0x23c]
mov ecx, dword [esi + 0x25c]
cvtsi2ss xmm0, dword [ecx]
movss xmm1, dword [0x48a2cc]
mulss xmm0, xmm1
movss xmm1, dword [0x48a5ec]
addss xmm0, xmm1
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [eax + 8], xmm0
jmp 0x4337eb
mov eax, dword [esi + 0x23c]
xorps xmm0, xmm0
movss dword [esi + 0x698c], xmm0
movss xmm0, dword [esi + 0x698c]
movss dword [eax + 8], xmm0
jmp 0x4337f0
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 0x43390b
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.0044cc20
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.0044cbe0
jmp 0x43389c
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044bb60
jmp 0x4338b8
lea ecx, [0x4c56f4]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x433906
mov ecx, 0x4c5704
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5704]
call fcn.0044bc20
jmp 0x4339c0
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.0044cc20
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.0044cbe0
jmp 0x433951
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044bb60
jmp 0x43396d
lea ecx, [0x4c56fc]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x4339bb
mov ecx, 0x4c5718
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5718]
call fcn.0044bc20
jmp 0x4339c0
mov byte [esi + 0x39f], 1
mov dword [esi + 0x6aa8], 1
test byte [esi + 0x39f], 1
jne 0x4339e9
mov ecx, dword [esi + 0x23c]
call fcn.0044aab0
jmp 0x433bcf
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 0x433af9
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.0044cc20
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.0044cbe0
jmp 0x433a8a
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5704
call fcn.0044bb60
jmp 0x433aa6
lea ecx, [0x4c56f4]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x433af4
mov ecx, 0x4c5704
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5704]
call fcn.0044bc20
jmp 0x433bae
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.0044cc20
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.0044cbe0
jmp 0x433b3f
sub esp, 4
mov eax, esp
lea ecx, [esi + 0x6ab8]
mov dword [eax], ecx
mov ecx, 0x4c5718
call fcn.0044bb60
jmp 0x433b5b
lea ecx, [0x4c56fc]
call fcn.0044bb90
cmp eax, 0x186a0
jbe 0x433ba9
mov ecx, 0x4c5718
call fcn.0044bbb0
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.0044cc60
lea ecx, [0x4c5718]
call fcn.0044bc20
jmp 0x433bae
mov ecx, dword [esi + 0x23c]
lea eax, [esi + 0x5fc0]
sub esp, 4
mov dword [esp], eax
call fcn.0044be30
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.0044aab0
mov eax, dword [esi + 0x10]
lea ecx, [esi + 0x403c]
cmp eax, ecx
mov dword [esi + 0x14], eax
jne 0x433bdd
lea ecx, [esi + 0x5fc0]
call fcn.0044aab0
lea ecx, [esi + 0x6794]
call fcn.0044aab0
jmp 0x433c1d
mov ecx, dword [esi + 0x254]
call fcn.0044aa60
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