Function at 0x4146b0
Capabilities:
Check for software breakpoints

Disassembly:
sub esp, 0xc
mov eax, dword [esp + 0x14]
push ebx
push ebp
xor ebx, ebx
push esi
push edi
mov dword [esp + 0x10], ebx
cmp eax, 0xd2
jg 0x41555f
je 0x41553b
lea ecx, [eax - 3]
cmp ecx, 0xcc
ja case.0x4176da.40296
movzx ecx, byte [ecx + 0x417990]
jmp dword [ecx*4 + 0x417844]
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0xffffffff
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x53c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x720], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7d4], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7d8], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7cc], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7b8], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor eax, eax
cmp dword [edx], ebx
setne al
mov dword [ecx + 0x7a0], eax
cmp eax, ebx
je 0x4147e8
or dword [ecx + 0x894], 0x10
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
and dword [ecx + 0x894], 0xffffffef
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
xor eax, eax
cmp dword [ecx], ebx
mov ecx, dword [esp + 0x20]
setne al
mov dword [ecx + 0x7c4], eax
cmp eax, ebx
je 0x41482a
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x410], 5
pop ebx
add esp, 0xc
ret
cmp dword [ecx + 0x410], 5
jne case.0x4146e8.91
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x410], ebx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7a4], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor eax, eax
cmp dword [edx], ebx
setne al
mov dword [ecx + 0x7c8], eax
cmp eax, ebx
je 0x414837
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x7c4], ebx
mov dword [ecx + 0x410], 4
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
setne al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x778], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, 0x20c49b
ja 0x414f64
mov ecx, dword [esp + 0x20]
imul eax, eax, 0x3e8
pop edi
pop esi
pop ebp
mov dword [ecx + 0x220], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x228], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 2
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x578], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x780], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 3
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x3fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
cdq
pop esi
pop ebp
mov dword [ecx + 0x408], eax
mov eax, dword [esp + 4]
mov dword [ecx + 0x40c], edx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cdq
mov ebp, edx
mov edi, eax
cmp ebp, 0xffffffff
jg 0x4149bd
jl 0x414f64
cmp edi, 0xffffffff
jb 0x414f64
mov esi, dword [esp + 0x20]
cmp dword [esi + 0x1a4], ebp
jg 0x4149fd
jl 0x4149d3
cmp dword [esi + 0x1a0], edi
jae 0x4149fd
mov eax, dword [esi + 0x198]
cmp eax, dword [esi + 0x6c4]
jne 0x4149fd
mov ecx, dword [esi + 0x6c4]
push ecx
call dword [0x7c6024]
mov dword [esi + 0x6c4], ebx
add esp, 4
mov dword [esi + 0x198], ebx
mov eax, dword [esp + 0x10]
mov dword [esi + 0x1a0], edi
pop edi
mov dword [esi + 0x1a4], ebp
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7c0], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7b0], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7ac], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7b4], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0xffffffff
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x190], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
and eax, 7
pop ebp
mov dword [ecx + 0x194], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
cmp dword [edx], ebx
je 0x414b0d
pop edi
pop esi
mov dword [eax + 0x7c4], ebx
pop ebp
mov dword [eax + 0x410], 1
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
pop edi
pop esi
mov dword [eax + 0x410], ebx
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
xor ecx, ecx
cmp dword [edx], ebx
pop edi
setne cl
pop esi
pop ebp
pop ebx
mov dword [eax + 0x768], ecx
mov eax, dword [esp]
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
cmp dword [ecx], ebx
je case.0x4146e8.91
mov eax, dword [esp + 0x20]
pop edi
pop esi
mov dword [eax + 0x410], ebx
mov dword [eax + 0x7c8], ebx
mov dword [eax + 0x7c4], ebx
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
cmp eax, 3
jl 0x414b8d
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov byte [ecx + 0x414], al
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jne 0x414bc3
mov eax, dword [esp + 0x20]
pop edi
pop esi
mov dword [eax + 0x184], ebx
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x20]
mov ecx, eax
shr ecx, 4
and ecx, 1
mov dword [edx + 0xaf4], ecx
test al, 0x10
je 0x414bdf
and eax, 0xffffffef
or eax, 2
and eax, 0xffffffdb
xor ecx, ecx
mov esi, 1
shl esi, cl
inc ecx
and esi, eax
jne 0x414c02
cmp ecx, 0x1f
jl 0x414be4
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 0xc
ret
pop edi
pop esi
pop ebp
mov dword [edx + 0x184], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x77c], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0xffff
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x16c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jne 0x414c7c
mov eax, dword [esp + 0x20]
pop edi
pop esi
mov dword [eax + 0x188], ebx
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x20]
mov ecx, eax
shr ecx, 4
and ecx, 1
mov dword [edx + 0xb0c], ecx
test al, 0x10
je 0x414c98
and eax, 0xffffffef
or eax, 2
and eax, 0xffffffdb
xor ecx, ecx
lea ecx, [ecx]
mov esi, 1
shl esi, cl
inc ecx
and esi, eax
jne 0x414cbc
cmp ecx, 0x1f
jl 0x414ca0
pop edi
lea eax, [esi + 4]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
pop edi
pop esi
pop ebp
mov dword [edx + 0x188], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 7
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x400], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
sub eax, ebx
je 0x414d1e
dec eax
jne 0x414e8a
mov eax, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [eax + 0x7f4], 1
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x7f4], ebx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x788], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x784], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 3
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x560], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x794], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x790], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x798], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 2
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x568], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x79c], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 2
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x564], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 2
ja 0x414e8a
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x56c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
pop edi
pop esi
mov dword [esp + 8], 0x2b
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0xffffffff
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
cdq
pop esi
pop ebp
mov dword [ecx + 0x230], eax
mov eax, dword [esp + 4]
mov dword [ecx + 0x234], edx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x238], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x23c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0xffff
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x180], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0x20c49b
ja 0x414f64
imul eax, eax, 0x3e8
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x210], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jge 0x414f44
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0x20c49b
ja 0x414f64
imul eax, eax, 0x3e8
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x214], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jge 0x414f84
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0xffffffff
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
cdq
pop esi
pop ebp
mov dword [ecx + 0x250], eax
mov eax, dword [esp + 4]
mov dword [ecx + 0x254], edx
pop ebx
add esp, 0xc
ret
mov esi, dword [esp + 0x20]
mov eax, dword [esi + 0x638]
push eax
call dword [0x7c6024]
push esi
mov dword [esi + 0x638], ebx
call fcn.004232b0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
xor ecx, ecx
cmp dword [edx], ebx
pop edi
setne cl
pop esi
pop ebp
pop ebx
mov dword [eax + 0x76c], ecx
mov eax, dword [esp]
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
cmp eax, 0xffff
ja 0x414f64
push eax
call fcn.00427340
mov edx, dword [esp + 0x24]
add esp, 4
pop edi
pop esi
pop ebp
mov word [edx + 0x1a8], ax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, 0xffff
ja 0x414f64
push eax
call fcn.00427320
mov ecx, dword [esp + 0x24]
add esp, 4
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1ac], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor eax, eax
cmp dword [edx], ebx
setne al
mov dword [ecx + 0x454], eax
mov ecx, dword [ecx + 0xc]
cmp ecx, ebx
je case.0x4146e8.91
pop edi
pop esi
pop ebp
mov dword [ecx + 0x210], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
test byte [eax], 3
mov ecx, dword [esp + 0x20]
mov eax, ebx
setne al
mov dword [ecx + 0x458], eax
mov ecx, dword [ecx + 0xc]
cmp ecx, ebx
je case.0x4146e8.91
pop edi
pop esi
pop ebp
mov dword [ecx + 0x214], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [0x7c6034]
test byte [ecx + 8], 2
je case.0x415586.244
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x488], edx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
cmp dword [ecx + 0xa1c], ebx
jne 0x414f64
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0x80000
jle 0x415150
pop edi
pop esi
mov eax, 0x80000
pop ebp
mov dword [ecx + 0x540], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
cmp eax, 1
jge 0x41516c
pop edi
pop esi
mov eax, 0x4000
pop ebp
mov dword [ecx + 0x540], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
cmp eax, 0x400
jge 0x415178
mov eax, 0x400
pop edi
pop esi
pop ebp
mov dword [ecx + 0x540], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
setne al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x7dc], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
cdq
pop esi
mov dword [ecx + 0x558], eax
mov eax, dword [esp + 8]
pop ebp
mov dword [ecx + 0x55c], edx
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
cmp eax, 3
ja 0x414f64
mov edx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [edx + 0x57c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, 2
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov byte [ecx + 0x550], al
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7e0], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7e4], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7e8], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor eax, eax
cmp dword [edx], ebx
pop edi
setne al
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x460], eax
mov dword [ecx + 0x4f0], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
sete al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x7ec], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
sete al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x7f0], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, 0x1ff
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x580], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0x1ff
ja 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x584], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x6ec], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x6f0], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x6f4], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
dec eax
cmp eax, 0xa
ja case.default.0x41539a
jmp dword [eax*4 + 0x417a60]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 1
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 2
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 3
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 4
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 5
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 6
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 7
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 8
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 9
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 0xa
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov eax, 0xb
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
pop edi
pop esi
xor eax, eax
pop ebp
mov dword [ecx + 0x6fc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0xd98], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0xd9c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x7fc], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x714], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
cmp eax, 0x2711
jg 0x415c26
je 0x415c0a
lea ecx, [eax - 0xd4]
cmp ecx, 0x60
ja case.0x4176da.40296
movzx edx, byte [ecx + 0x417b28]
jmp dword [edx*4 + 0x417a8c]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
setne al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x7a8], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
setne al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x760], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
lea edx, [ecx + 0x418]
cmp eax, 0x20
je 0x4155e2
lea edx, [ecx + 0x4a8]
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, ecx
and eax, 0xffff
and ecx, 0xffff0000
cmp eax, ebx
jl 0x414f64
cmp eax, 2
je 0x414f64
cmp eax, 3
je 0x414f64
cmp eax, 8
jge 0x414f64
cmp ecx, 0x7ffff
ja 0x414f64
pop edi
pop esi
pop ebp
mov dword [edx], eax
mov eax, dword [esp + 4]
mov dword [edx + 4], ecx
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
pop edi
pop esi
and edx, 1
pop ebp
mov dword [eax + 0x764], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
cmp eax, ebx
jl 0x414f64
mov edx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [edx + 0x724], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, 1
jg 0x414f64
mov edx, dword [esp + 0x20]
xor ecx, ecx
cmp eax, ebx
mov eax, dword [esp + 0x10]
setne cl
pop edi
pop esi
pop ebp
pop ebx
mov dword [edx + 0x844], ecx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x18c], eax
test eax, 0xfffffffa
je case.0x4146e8.91
pop edi
pop esi
mov dword [esp + 8], 4
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x218], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x824], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x838], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor eax, eax
cmp dword [edx], ebx
setne al
mov dword [ecx + 0x4e4], eax
mov ecx, dword [ecx + 0xc]
cmp ecx, ebx
je case.0x4146e8.91
pop edi
pop esi
pop ebp
mov dword [ecx + 0x25c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
test byte [eax], 3
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
mov ecx, ebx
setne cl
pop edi
pop esi
pop ebp
pop ebx
mov dword [edx + 0x83c], ecx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
test byte [eax], 3
mov ecx, dword [esp + 0x20]
mov eax, ebx
setne al
mov dword [ecx + 0x4e8], eax
mov ecx, dword [ecx + 0xc]
cmp ecx, ebx
je case.0x4146e8.91
pop edi
pop esi
pop ebp
mov dword [ecx + 0x260], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
call fcn.00423970
test eax, eax
je case.0x415586.244
mov ecx, dword [esp + 0x28]
xor eax, eax
cmp dword [ecx], ebx
mov ecx, dword [esp + 0x20]
setne al
mov dword [ecx + 0x45c], eax
mov ecx, dword [ecx + 0xc]
cmp ecx, ebx
je case.0x4146e8.91
pop edi
pop esi
pop ebp
mov dword [ecx + 0x218], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
call fcn.00423970
test eax, eax
je case.0x415586.244
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x840], edx
add esp, 0xc
ret
call fcn.00423980
test eax, eax
je case.0x415586.244
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x48c], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, 0x200000
jle 0x41586f
mov eax, 0x200000
jmp 0x41587b
cmp eax, 0x4000
jge 0x41587b
mov eax, 0x4000
mov esi, dword [esp + 0x20]
mov dword [esi + 0x544], eax
mov eax, dword [esi + 0xa20]
push eax
call dword [0x7c6024]
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
mov dword [esi + 0xa20], ebx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov ecx, dword [esp + 0x20]
mov edx, eax
and edx, 1
mov dword [ecx + 0x490], edx
mov edx, eax
shr edx, 1
and edx, 1
mov dword [ecx + 0x494], edx
mov edx, eax
shr edx, 2
and edx, 1
mov dword [ecx + 0x498], edx
mov edx, eax
shr edx, 3
and edx, 1
mov dword [ecx + 0x49c], edx
mov edx, eax
pop edi
shr edx, 4
shr eax, 5
and edx, 1
pop esi
and eax, 1
mov dword [ecx + 0x4a0], edx
pop ebp
mov dword [ecx + 0x4a4], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov ecx, dword [esp + 0x20]
mov edx, eax
and edx, 1
mov dword [ecx + 0x520], edx
mov edx, eax
shr edx, 1
and edx, 1
mov dword [ecx + 0x524], edx
mov edx, eax
shr edx, 2
and edx, 1
mov dword [ecx + 0x528], edx
mov edx, eax
shr edx, 3
and edx, 1
mov dword [ecx + 0x52c], edx
mov edx, eax
pop edi
shr edx, 4
shr eax, 5
and edx, 1
pop esi
and eax, 1
mov dword [ecx + 0x530], edx
pop ebp
mov dword [ecx + 0x534], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
setne al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x848], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
setne al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x7f8], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [ecx], ebx
pop edi
setne al
pop esi
pop ebp
pop ebx
mov dword [edx + 0x800], eax
mov eax, dword [esp]
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x718], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x71c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x808], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x80c], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x810], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x814], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x818], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x21c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x81c], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp dword [eax], ebx
mov eax, dword [esp + 0x10]
setne dl
pop edi
pop esi
pop ebp
pop ebx
mov dword [ecx + 0x82c], edx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x73c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
cmp eax, ebx
jl 0x414f64
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x224], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
test byte [edx], 1
je 0x415ba3
mov esi, dword [esp + 0x20]
cmp dword [esi + 0x854], ebx
jne case.0x4146e8.91
call fcn.0041f330
mov dword [esi + 0x854], eax
cmp eax, ebx
jne case.0x4146e8.91
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x20]
add eax, 0x854
push eax
call fcn.0041f380
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov esi, dword [esp + 0x20]
cmp dword [esi + 0x858], ebx
jne 0x415be0
call fcn.0041ea40
mov dword [esi + 0x858], eax
cmp eax, ebx
je 0x415fe1
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov edx, dword [esi + 0x858]
push eax
push edx
call fcn.0041ea80
add esp, 8
mov dword [esp + 0x10], eax
cmp eax, ebx
je case.0x4146e8.91
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x170], ecx
pop ebx
add esp, 0xc
ret
cmp eax, 0x27f4
jg 0x416b80
je 0x416b64
add eax, 0xffffd8ee
cmp eax, 0xde
ja case.0x4176da.40296
movzx eax, byte [eax + 0x417cb4]
jmp dword [eax*4 + 0x417b8c]
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x60c
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x620
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x61c
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x5dc
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov ebp, dword [ecx]
mov esi, dword [esp + 0x20]
cmp ebp, ebx
je 0x415da1
mov ecx, dword [esi + 0x1a0]
mov eax, dword [esi + 0x1a4]
mov edx, ecx
and edx, eax
cmp edx, 0xffffffff
je 0x415da1
cmp eax, ebx
jl 0x415d70
jg 0x415d70
cmp ecx, ebx
jb 0x415d70
cmp eax, ebx
jg 0x415d70
jl 0x415d29
cmp ecx, 0xffffffff
ja 0x415d70
mov eax, dword [esi + 0x6c4]
push eax
call dword [0x7c6024]
mov dword [esi + 0x6c4], ebx
mov eax, dword [esi + 0x1a0]
mov ecx, dword [esi + 0x1a4]
mov edx, eax
add esp, 4
or edx, ecx
je 0x415d57
mov dword [esp + 0x18], ecx
jmp 0x415d60
mov eax, 1
mov dword [esp + 0x18], ebx
push eax
call dword [0x7c6020]
mov edi, eax
add esp, 4
cmp edi, ebx
jne 0x415d7a
mov dword [esp + 0x10], 0x1b
jmp 0x415db5
mov eax, dword [esi + 0x1a0]
or eax, dword [esi + 0x1a4]
je 0x415d99
mov ecx, dword [esi + 0x1a0]
push ecx
push ebp
push edi
call fcn.004cfb70
add esp, 0xc
mov dword [esi + 0x6c4], edi
jmp 0x415db5
lea eax, [esi + 0x6c4]
push ebp
push eax
call fcn.004144e0
add esp, 8
mov dword [esp + 0x10], eax
mov edx, dword [esi + 0x6c4]
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x198], edx
mov dword [esi + 0x410], 1
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov esi, dword [esp + 0x20]
mov dword [esi + 0x198], ecx
mov edx, dword [esi + 0x6c4]
push edx
call dword [0x7c6024]
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [esi + 0x6c4], ebx
pop edi
mov dword [esi + 0x410], 1
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
cmp eax, ebx
je 0x415e6b
cmp byte [eax], bl
jne 0x415e6b
call fcn.004269e0
mov esi, eax
cmp esi, ebx
jne 0x415e40
pop edi
pop esi
mov dword [esp + 8], 0x1b
mov eax, dword [esp + 8]
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x20]
add ecx, 0x5b0
push esi
push ecx
call fcn.004144e0
push esi
mov dword [esp + 0x1c], eax
call dword [0x7c6024]
mov eax, dword [esp + 0x1c]
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x20]
push eax
add edx, 0x5b0
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [esp + 0x20]
pop edi
pop esi
mov dword [eax + 0x7c4], ebx
pop ebp
mov dword [eax + 0x260], ecx
mov dword [eax + 0x410], 2
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov esi, dword [esp + 0x20]
cmp dword [esi + 0xe98], ebx
je 0x415edf
mov edx, dword [esi + 0xdf0]
push edx
call dword [0x7c6024]
add esp, 4
mov dword [esi + 0xdf0], ebx
mov dword [esi + 0xe98], ebx
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
push ecx
lea edi, [esi + 0x5ec]
push edi
call fcn.004144e0
mov edx, dword [edi]
add esp, 8
pop edi
mov dword [esi + 0xdf0], edx
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x624
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x258], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x54c], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x59c
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov edx, dword [eax]
cmp edx, ebx
je 0x416000
mov eax, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x415fa0
sub eax, esi
cmp eax, 0x7a1200
ja 0x414f64
mov esi, dword [esp + 0x20]
mov ecx, dword [esi + 0xdf4]
push edx
push ecx
call fcn.004143e0
add esp, 8
cmp eax, ebx
jne 0x415fee
mov edx, dword [esi + 0xdf4]
push edx
call fcn.00414460
add esp, 4
mov dword [esi + 0xdf4], ebx
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0xc
ret
pop edi
mov dword [esi + 0xdf4], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov esi, dword [esp + 0x20]
mov eax, dword [esi + 0xdf4]
push eax
call fcn.00414460
mov eax, dword [esi + 0x78]
add esp, 4
mov dword [esi + 0xdf4], ebx
cmp eax, ebx
je 0x416025
cmp dword [eax + 0x68], ebx
jne 0x416040
mov ecx, dword [esi + 0x850]
push ecx
call fcn.00425c70
mov edx, dword [esi + 0x850]
push edx
call fcn.00424580
add esp, 8
mov eax, dword [esp + 0x10]
pop edi
mov dword [esi + 0x850], ebx
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov esi, dword [esp + 0x20]
push ecx
lea edx, [esi + 0x5a0]
push edx
call fcn.004144e0
mov ecx, dword [esi + 0x850]
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0x768]
push eax
push ecx
push ebx
push esi
call fcn.004258f0
add esp, 0x18
cmp eax, ebx
jne 0x416091
mov dword [esp + 0x10], 0x1b
pop edi
mov dword [esi + 0x850], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov edi, dword [edx]
cmp edi, ebx
je case.0x4146e8.91
push 0x725794
push edi
call fcn.004260b0
add esp, 8
test eax, eax
je 0x4160f4
mov esi, dword [esp + 0x20]
push 2
push 2
push esi
call fcn.00426530
mov eax, dword [esi + 0x850]
push eax
call fcn.00425c70
push 2
push esi
call fcn.00426570
mov eax, dword [esp + 0x28]
add esp, 0x18
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push str.SESS
push edi
call fcn.004260b0
add esp, 8
test eax, eax
je 0x416137
mov esi, dword [esp + 0x20]
push 2
push 2
push esi
call fcn.00426530
mov ecx, dword [esi + 0x850]
push ecx
call fcn.004244a0
push 2
push esi
call fcn.00426570
mov eax, dword [esp + 0x28]
add esp, 0x18
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push str.FLUSH
push edi
call fcn.004260b0
add esp, 8
test eax, eax
je 0x416163
mov edx, dword [esp + 0x20]
push ebx
push edx
call fcn.00425fa0
mov eax, dword [esp + 0x18]
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push str.RELOAD
push edi
call fcn.004260b0
add esp, 8
test eax, eax
je 0x41618e
mov eax, dword [esp + 0x20]
push eax
call fcn.00425d20
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov esi, dword [esp + 0x20]
cmp dword [esi + 0x850], ebx
jne 0x4161ad
push 1
push ebx
push ebx
push esi
call fcn.004258f0
add esp, 0x10
mov dword [esi + 0x850], eax
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4161b2
sub eax, edx
cmp eax, 0x7a1200
ja 0x414f64
push edi
call dword [0x7c602c]
mov edi, eax
add esp, 4
cmp edi, ebx
je 0x416241
cmp dword [esi + 0x850], ebx
je 0x416241
push 2
push 2
push esi
call fcn.00426530
push 0xb
push edi
push 0x725770
call fcn.00426250
add esp, 0x18
push 1
push ebx
push ebx
test eax, eax
je 0x416210
mov edx, dword [esi + 0x850]
lea ecx, [edi + 0xb]
push ecx
push ebx
push 1
push edx
jmp 0x41621a
mov eax, dword [esi + 0x850]
push edi
push ebx
push ebx
push eax
push esi
call fcn.00424c60
add esp, 0x20
push 2
push esi
call fcn.00426570
push edi
call dword [0x7c6024]
mov eax, dword [esp + 0x1c]
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push edi
mov dword [esp + 0x14], 0x1b
call dword [0x7c6024]
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x5a4
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x5e0
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x178], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x168], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov edi, dword [esp + 0x20]
push edx
lea esi, [edi + 0x5bc]
push esi
call fcn.004144e0
add esp, 8
mov dword [esp + 0x10], eax
xor eax, eax
cmp dword [esi], ebx
setne al
mov dword [edi + 0x78c], eax
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x5b4
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x5b8
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov edi, dword [esp + 0x20]
push edx
lea esi, [edi + 0x5d8]
push esi
call fcn.004144e0
add esp, 8
mov dword [esp + 0x10], eax
xor eax, eax
cmp dword [esi], ebx
setne al
mov dword [edi + 0x7d0], eax
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x174], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov esi, dword [esp + 0x20]
cmp dword [esi + 0xe94], ebx
je 0x4163dd
mov ecx, dword [esi + 0xdec]
push ecx
call dword [0x7c6024]
add esp, 4
mov dword [esi + 0xdec], ebx
mov dword [esi + 0xe94], ebx
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
push eax
lea edi, [esi + 0x5f0]
push edi
call fcn.004144e0
mov ecx, dword [edi]
add esp, 8
pop edi
mov dword [esi + 0xdec], ecx
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
mov edi, dword [edx]
lea ebx, [eax + 0x640]
add eax, 0x63c
push eax
call fcn.004145f0
add esp, 4
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x63c
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x640
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x644
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x690
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x3dc], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x3e0], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x3d8], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x3f4], eax
mov dword [ecx + 0xdf8], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x208], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov edi, dword [ecx]
lea ebx, [eax + 0x64c]
add eax, 0x648
push eax
call fcn.004145f0
add esp, 4
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x648
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x64c
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x650
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x5e8
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x164], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov esi, dword [esp + 0x20]
mov dword [esi + 0x160], eax
cmp eax, ebx
jne case.0x4146e8.91
call fcn.004d1350
add eax, 0x40
pop edi
mov dword [esi + 0x160], eax
mov eax, dword [esp + 0xc]
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x1e8], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x20c], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x58c
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x594
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x5c0
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x5d0
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x5c8
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov esi, dword [eax]
cmp esi, ebx
je case.0x4146e8.91
cmp byte [esi], bl
je case.0x4146e8.91
mov edi, dword [esp + 0x20]
lea eax, [edi + 0x638]
push esi
push eax
call fcn.004144e0
add esp, 8
mov dword [esp + 0x10], eax
cmp eax, ebx
jne case.0x4146e8.91
push esi
push edi
call fcn.004232a0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x5ac
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [0x7c6034]
test byte [ecx + 8], 8
je case.0x415586.244
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x470], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x5fc
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [0x7c6034]
test byte [edx + 8], 1
je case.0x415586.244
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x5f4
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x628
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x630
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x3f0], ecx
pop ebx
add esp, 0xc
ret
mov esi, dword [esp + 0x20]
mov eax, dword [esp + 0x28]
mov edi, dword [eax]
cmp dword [esi + 0x78], ebx
je 0x41692a
push 2
push 1
push esi
call fcn.00426530
add esp, 0xc
cmp dword [esi + 0x6c], 2
jne 0x4168ea
mov dword [esi + 0x68], ebx
mov dword [esi + 0x6c], ebx
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 0x68]
cmp ecx, dword [esi + 0x850]
jne 0x4168fe
mov dword [esi + 0x850], ebx
mov edx, dword [eax + 0x6c]
cmp edx, dword [esi + 0xa3c]
jne 0x41690f
mov dword [esi + 0xa3c], ebx
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 8]
mov edx, dword [esi + 0x78]
dec ecx
push 1
push esi
mov dword [edx + 8], ecx
call fcn.00426570
add esp, 8
mov dword [esi + 0x78], ebx
cmp edi, ebx
je 0x416939
cmp dword [edi], 0x7e117a1e
jne 0x416939
mov dword [esi + 0x78], edi
cmp dword [esi + 0x78], ebx
je case.0x4146e8.91
push 2
push 1
push esi
call fcn.00426530
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 8]
mov edx, dword [esi + 0x78]
inc ecx
mov dword [edx + 8], ecx
mov eax, dword [esi + 0x78]
add esp, 0xc
test byte [eax + 4], 8
je 0x416972
add eax, 0x50
mov dword [esi + 0x68], eax
mov dword [esi + 0x6c], 2
mov eax, dword [esi + 0x78]
cmp dword [eax + 0x68], ebx
je 0x416995
mov eax, dword [esi + 0x850]
push eax
call fcn.00424580
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 0x68]
add esp, 4
mov dword [esi + 0x850], ecx
cmp dword [eax + 0x6c], ebx
je 0x4169af
mov edx, dword [eax + 0x70]
mov dword [esi + 0x538], edx
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 0x6c]
mov dword [esi + 0xa3c], ecx
push 1
push esi
call fcn.00426570
mov eax, dword [esp + 0x18]
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x548], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1d4], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1dc], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1e4], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x678
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x67c
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x6f8], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x654
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x658
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x65c
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x17c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0xec4], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x710], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x25c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
cmp eax, 0x4e2b
jg 0x4171da
je 0x417194
add eax, 0xffffd80a
cmp eax, 0x4b
ja case.0x4176da.40296
movzx edx, byte [eax + 0x417e24]
jmp dword [edx*4 + 0x417d94]
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x610
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
call fcn.00423990
test eax, eax
je case.0x416ba6.10240
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x614
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
call fcn.00423990
test eax, eax
je case.0x416ba6.10240
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x618
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x698
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edi, dword [esp + 0x20]
push ecx
lea esi, [edi + 0x6c8]
push esi
call fcn.004144e0
add esp, 8
mov dword [esp + 0x10], eax
cmp dword [esi], ebx
je case.0x4146e8.91
mov dword [edi + 0x184], 0x80
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov esi, dword [esp + 0x20]
push ebx
push eax
lea ecx, [esi + 0x268]
push ecx
call fcn.00421f70
add esp, 0xc
mov dword [esp + 0x10], eax
cmp eax, ebx
jne case.0x4146e8.91
pop edi
mov dword [esi + 0x7c4], ebx
mov dword [esi + 0x410], 3
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x5e4
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x670
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x674
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x748], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x590
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x598
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x5c4
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x5d4
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x5cc
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [0x7c6034]
mov eax, 4
test byte [edx + 8], al
je 0x415c6e
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x604
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [0x7c6034]
mov eax, 4
test byte [ecx + 8], al
je 0x415c6e
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x608
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x600
push ecx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [0x7c6034]
test byte [edx + 8], 1
je case.0x415586.244
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x5f8
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x62c
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x634
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x6bc
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x738], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x5a8
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x6a8
push edx
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov dword [eax + 0x828], ebx
mov edx, dword [ecx]
push edx
add eax, 0x694
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov dword [eax + 0x828], 1
mov edx, dword [ecx]
push edx
add eax, 0x694
push eax
call fcn.004144e0
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x3f8], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edi, dword [esp + 0x20]
push ecx
lea esi, [edi + 0x69c]
push esi
call fcn.004144e0
add esp, 8
xor edx, edx
cmp dword [esi], ebx
mov dword [esp + 0x10], eax
setne dl
mov dword [edi + 0x830], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x74c], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x1fc], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x204], ecx
pop ebx
add esp, 0xc
ret
mov edi, dword [esp + 0x20]
cmp dword [edi + 0x854], ebx
jne 0x4170e8
call fcn.0041f330
mov dword [edi + 0x854], eax
cmp eax, ebx
je 0x415fe1
mov eax, dword [esp + 0x28]
mov esi, dword [eax]
lea ecx, [edi + 0x6a4]
push esi
push ecx
call fcn.004144e0
add esp, 8
mov dword [esp + 0x10], eax
cmp eax, ebx
jne 0x417839
cmp esi, ebx
je case.0x4146e8.91
mov edx, dword [edi + 0x854]
push esi
push edx
push edi
call fcn.0041fb20
mov eax, dword [esp + 0x1c]
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov edi, dword [esp + 0x20]
cmp dword [edi + 0x858], ebx
jne 0x41714e
call fcn.0041ea40
mov dword [edi + 0x858], eax
cmp eax, ebx
je 0x415fe1
mov eax, dword [esp + 0x28]
mov esi, dword [eax]
lea ecx, [edi + 0x6a0]
push esi
push ecx
call fcn.004144e0
add esp, 8
mov dword [esp + 0x10], eax
cmp eax, ebx
jne 0x417839
cmp esi, ebx
je case.0x4146e8.91
mov edx, dword [edi + 0x858]
push esi
push edx
call fcn.0041ea70
mov eax, dword [esp + 0x18]
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x1b0], eax
cmp eax, ebx
jne 0x4171c4
mov eax, dword [esp + 0x10]
pop edi
pop esi
mov dword [ecx + 0x758], ebx
pop ebp
mov dword [ecx + 0x1b0], fcn.004d0971
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x758], 1
pop ebx
add esp, 0xc
ret
cmp eax, 0x4f30
jg 0x417471
je 0x417455
add eax, 0xffffb1d4
cmp eax, 0xcf
ja case.0x4176da.40296
movzx ecx, byte [eax + 0x417ebc]
jmp dword [ecx*4 + 0x417e70]
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp eax, ebx
setne dl
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1c0], eax
mov eax, dword [esp + 4]
pop ebx
mov dword [ecx + 0x9e4], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov ecx, dword [esp + 0x20]
xor edx, edx
cmp eax, ebx
setne dl
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1c4], eax
mov eax, dword [esp + 4]
pop ebx
mov dword [ecx + 0x9e4], edx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x1c8], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [edx + 0x1b4], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov ecx, dword [esp + 0x20]
mov dword [ecx + 0x1bc], eax
cmp eax, ebx
jne 0x4172c3
mov eax, dword [esp + 0x10]
pop edi
pop esi
mov dword [ecx + 0x754], ebx
pop ebp
mov dword [ecx + 0x1bc], fcn.004d1333
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x754], 1
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x19c], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x1ec], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x1f0], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x1f4], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
pop edi
pop esi
pop ebp
mov dword [eax + 0x1cc], edx
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov ecx, dword [0x7c6034]
test byte [ecx + 8], 8
je case.0x415586.244
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x46c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1d0], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1d8], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1e0], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1b8], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x704], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x708], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x70c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x734], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
cmp eax, 0x763e
jg 0x4176c5
je 0x4176a0
cmp eax, 0x75a3
jg 0x417531
je 0x4174f8
sub eax, 0x4f3b
je 0x4174dc
sub eax, 0x12
je 0x4174c0
sub eax, 2
jne case.0x4176da.40296
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x200], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1f8], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [ecx + 0x750], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jg 0x417515
jl 0x414f64
cmp ecx, 0xffffffff
jb 0x414f64
mov edx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [edx + 0x234], eax
mov eax, dword [esp + 4]
mov dword [edx + 0x230], ecx
pop ebx
add esp, 0xc
ret
add eax, 0xffff8a5c
cmp eax, 0x1e
ja case.0x4176da.40296
movzx edx, byte [eax + 0x417fa4]
jmp dword [edx*4 + 0x417f8c]
mov eax, dword [esp + 0x28]
mov edi, dword [eax + 4]
mov ebp, dword [eax]
cmp edi, 0xffffffff
jg 0x41756a
jl 0x414f64
cmp ebp, 0xffffffff
jb 0x414f64
mov esi, dword [esp + 0x20]
cmp dword [esi + 0x1a4], edi
jg 0x4175aa
jl 0x417580
cmp dword [esi + 0x1a0], ebp
jae 0x4175aa
mov edx, dword [esi + 0x198]
cmp edx, dword [esi + 0x6c4]
jne 0x4175aa
mov eax, dword [esi + 0x6c4]
push eax
call dword [0x7c6024]
mov dword [esi + 0x6c4], ebx
add esp, 4
mov dword [esi + 0x198], ebx
mov eax, dword [esp + 0x10]
mov dword [esi + 0x1a4], edi
pop edi
mov dword [esi + 0x1a0], ebp
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, ebx
jg 0x4175dd
jl 0x414f64
cmp ecx, ebx
jb 0x414f64
mov edx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [edx + 0x244], eax
mov eax, dword [esp + 4]
mov dword [edx + 0x240], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, ebx
jg 0x417614
jl 0x414f64
cmp ecx, ebx
jb 0x414f64
mov edx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [edx + 0x24c], eax
mov eax, dword [esp + 4]
mov dword [edx + 0x248], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jg 0x41764d
jl 0x414f64
cmp ecx, 0xffffffff
jb 0x414f64
mov edx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
mov dword [edx + 0x254], eax
mov eax, dword [esp + 4]
mov dword [edx + 0x250], ecx
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, ebx
jg 0x417684
jl 0x414f64
cmp ecx, ebx
jb 0x414f64
mov edx, dword [esp + 0x20]
pop edi
pop esi
mov dword [edx + 0x558], ecx
pop ebp
mov dword [edx + 0x55c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
mov eax, dword [esp + 0x28]
mov edx, dword [eax]
mov ecx, dword [esp + 0x20]
pop edi
pop esi
mov dword [ecx + 0x408], edx
mov eax, dword [eax + 4]
pop ebp
mov dword [ecx + 0x40c], eax
mov eax, dword [esp + 4]
pop ebx
add esp, 0xc
ret
add eax, 0xffff629d
cmp eax, 0x13
ja case.0x4176da.40296
movzx ecx, byte [eax + 0x417fe8]
jmp dword [ecx*4 + 0x417fc4]
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x6cc
push ecx
call fcn.00414550
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x6d0
push ecx
call fcn.00414550
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x6d4
push ecx
call fcn.00414550
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
mov ecx, dword [esp + 0x20]
push eax
add ecx, 0x6d8
push ecx
call fcn.00414550
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov edx, dword [0x7c6034]
test byte [edx + 8], 0x40
je case.0x416ba6.10240
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov edx, dword [esp + 0x20]
push ecx
add edx, 0x6e4
push edx
call fcn.00414550
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov eax, dword [0x7c6034]
test byte [eax + 8], 0x40
je case.0x416ba6.10240
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x6e8
push eax
call fcn.00414550
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x6dc
push eax
call fcn.00414550
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esp + 0x20]
push edx
add eax, 0x6e0
push eax
call fcn.00414550
add esp, 8
pop edi
pop esi
pop ebp
mov dword [esp + 4], eax
pop ebx
add esp, 0xc
ret
mov dword [esp + 0x10], 0x30
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret