Function at 0x40e9a0
Capabilities:
Check for software breakpoints

Disassembly:
mov ecx, dword [esp + 8]
sub esp, 8
push ebx
push ebp
push esi
push edi
xor edi, edi
cmp ecx, 0xd2
jg 0x40f442
je 0x40f420
lea eax, [ecx - 3]
cmp eax, 0xcc
ja case.0x410c75.40296
movzx eax, byte [eax + 0x410ea8]
jmp dword [eax*4 + 0x410d98]
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 0xffffffff
jl 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x4e4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6c0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x70f], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x710], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x70d], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x708], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
cmp dword [eax], edi
setne al
mov byte [ecx + 0x702], al
test al, al
je 0x40eabc
or dword [ecx + 0x76c], 0x10
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
and dword [ecx + 0x76c], 0xffffffef
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
cmp dword [eax], edi
setne al
mov byte [ecx + 0x70b], al
test al, al
je 0x40eaf8
mov eax, edi
mov dword [ecx + 0x400], 5
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp dword [ecx + 0x400], 5
jne case.0x40e9d4.91
mov dword [ecx + 0x400], edi
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x703], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
cmp dword [eax], edi
setne al
mov byte [ecx + 0x70c], al
test al, al
je 0x40eb05
mov eax, edi
mov dword [ecx + 0x400], 4
pop edi
pop esi
pop ebp
mov byte [ecx + 0x70b], 0
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x6fd], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0x20c49b
ja 0x40f08f
imul ecx, eax, 0x3e8
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x210], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x6ff], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 3
ja 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x3ec], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax]
cdq
mov dword [ecx + 0x3f8], eax
mov eax, edi
pop edi
pop esi
pop ebp
mov dword [ecx + 0x3fc], edx
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cdq
mov ebx, eax
mov ebp, edx
cmp ebp, 0xffffffff
jg 0x40ec2c
jl 0x40f08f
cmp ebx, 0xffffffff
jb 0x40f08f
mov esi, dword [esp + 0x1c]
cmp dword [esi + 0x18c], ebp
jg 0x40ec6b
jl 0x40ec42
cmp dword [esi + 0x188], ebx
jae 0x40ec6b
mov eax, dword [esi + 0x180]
cmp eax, dword [esi + 0x660]
jne 0x40ec6b
push dword [esi + 0x660]
call dword [0x479004]
mov dword [esi + 0x660], edi
add esp, 4
mov dword [esi + 0x180], edi
mov eax, edi
mov dword [esi + 0x188], ebx
pop edi
mov dword [esi + 0x18c], ebp
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x70a], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x706], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x705], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x707], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 0xffffffff
jl 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x178], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
and ecx, 7
mov dword [eax + 0x17c], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
je 0x40ed64
mov dword [eax + 0x400], 1
mov byte [eax + 0x70b], 0
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov dword [eax + 0x400], edi
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
je case.0x40e9d4.91
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x400], edi
mov word [eax + 0x70b], di
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
cmp ecx, 3
jl 0x40edbb
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x1c]
mov byte [eax + 0x404], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
test edx, edx
jne 0x40eded
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x16c], edi
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov esi, dword [esp + 0x1c]
mov eax, edx
shr eax, 4
and al, 1
mov byte [esi + 0x996], al
test dl, 0x10
je 0x40ee09
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffd3
xor ecx, ecx
mov edi, edi
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0x40ee2e
cmp ecx, 0x1f
jl 0x40ee10
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 8
ret
mov eax, edi
mov dword [esi + 0x16c], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x6fe], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 0xffff
ja 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x154], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
test edx, edx
jne 0x40ee9f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x170], edi
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov esi, dword [esp + 0x1c]
mov eax, edx
shr eax, 4
and al, 1
mov byte [esi + 0x9a6], al
test dl, 0x10
je 0x40eebb
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffd3
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0x40eede
cmp ecx, 0x1f
jl 0x40eec0
pop edi
pop esi
pop ebp
mov eax, 4
pop ebx
add esp, 8
ret
mov eax, edi
mov dword [esi + 0x170], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 7
ja 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x3f0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
sub eax, 0
je 0x40ef38
dec eax
jne 0x40efc3
mov eax, dword [esp + 0x1c]
mov byte [eax + 0x717], 1
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x1c]
mov byte [eax + 0x717], 0
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x718], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x701], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x700], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 2
ja 0x40efc3
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x508], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov edi, 0x2b
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x40f08f
mov ecx, dword [esp + 0x1c]
cdq
mov dword [ecx + 0x220], eax
mov eax, edi
pop edi
pop esi
pop ebp
mov dword [ecx + 0x224], edx
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x228], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x22c], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 0xffff
ja 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x168], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0x20c49b
ja 0x40f08f
imul ecx, eax, 0x3e8
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x200], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
jns 0x40f071
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0x20c49b
ja 0x40f08f
imul ecx, eax, 0x3e8
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x204], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
jns 0x40f0af
pop edi
pop esi
pop ebp
mov eax, 0x2b
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x40f08f
mov ecx, dword [esp + 0x1c]
cdq
mov dword [ecx + 0x240], eax
mov eax, edi
pop edi
pop esi
pop ebp
mov dword [ecx + 0x244], edx
pop ebx
add esp, 8
ret
mov esi, dword [esp + 0x1c]
push dword [esi + 0x5d0]
call dword [0x479004]
push esi
mov dword [esi + 0x5d0], edi
call fcn.004194e0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x6fa], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffff
ja 0x40f08f
push eax
call fcn.004201c0
mov ecx, dword [esp + 0x20]
add esp, 4
mov word [ecx + 0x190], ax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0xffff
ja 0x40f08f
push eax
call fcn.004201a0
mov ecx, dword [esp + 0x20]
add esp, 4
mov dword [ecx + 0x194], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x444], cl
mov eax, dword [eax + 0xc]
test eax, eax
je case.0x40e9d4.91
mov byte [eax + 0x210], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
test byte [eax], 3
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x445], cl
mov eax, dword [eax + 0xc]
test eax, eax
je case.0x40e9d4.91
mov byte [eax + 0x211], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 2
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x46c], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ecx, dword [esp + 0x1c]
cmp dword [ecx + 0x8ec], edi
jne 0x40f08f
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0x80000
jle 0x40f25e
mov eax, 0x80000
mov dword [ecx + 0x4e8], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp eax, 1
jge 0x40f278
mov eax, 0x4000
mov dword [ecx + 0x4e8], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov edx, 0x400
cmp eax, edx
cmovl eax, edx
mov dword [ecx + 0x4e8], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x711], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
js 0x40f08f
mov ecx, dword [esp + 0x1c]
cdq
mov dword [ecx + 0x500], eax
mov eax, edi
pop edi
pop esi
pop ebp
mov dword [ecx + 0x504], edx
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 3
ja 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x514], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
cmp ecx, 2
ja 0x40f08f
mov eax, dword [esp + 0x1c]
mov byte [eax + 0x4f8], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x712], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x713], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x714], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x447], cl
mov byte [eax + 0x4b3], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
sete cl
mov byte [eax + 0x715], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
sete cl
mov byte [eax + 0x716], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x688], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x68c], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x690], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6b4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x2711
jg 0x40f9c1
je 0x40f9a7
lea eax, [ecx - 0xd4]
cmp eax, 0x67
ja case.0x410c75.40296
movzx eax, byte [eax + 0x411000]
jmp dword [eax*4 + 0x410f78]
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x704], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x1c]
lea edx, [eax + 0x408]
cmp ecx, 0x20
je 0x40f4a3
lea edx, [eax + 0x474]
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
movzx eax, cx
and ecx, 0xffff0000
test eax, eax
js 0x40f08f
cmp eax, 2
je 0x40f08f
cmp eax, 3
je 0x40f08f
cmp eax, 8
jge 0x40f08f
cmp ecx, 0x7ffff
ja 0x40f08f
mov dword [edx], eax
mov eax, edi
pop edi
pop esi
pop ebp
mov dword [edx + 4], ecx
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov cl, byte [eax]
mov eax, dword [esp + 0x1c]
and cl, 1
mov byte [eax + 0x6f8], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6c4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 1
jg 0x40f08f
test eax, eax
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x727], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x174], ecx
test ecx, 0xfffffffa
je case.0x40e9d4.91
mov edi, 4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x208], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x724], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x4b0], cl
mov eax, dword [eax + 0xc]
test eax, eax
je case.0x40e9d4.91
mov byte [eax + 0x250], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
test byte [eax], 3
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x4b1], cl
mov eax, dword [eax + 0xc]
test eax, eax
je case.0x40e9d4.91
mov byte [eax + 0x251], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
call fcn.00418c10
test al, al
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x446], cl
mov eax, dword [eax + 0xc]
test eax, eax
je case.0x40e9d4.91
mov byte [eax + 0x212], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
call fcn.00419020
test al, al
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x46d], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp eax, 0x200000
jle 0x40f697
mov eax, 0x200000
jmp 0x40f6a1
mov ecx, 0x4000
cmp eax, ecx
cmovl eax, ecx
mov esi, dword [esp + 0x1c]
mov dword [esi + 0x4ec], eax
push dword [esi + 0x8f0]
call dword [0x479004]
add esp, 4
mov dword [esi + 0x8f0], edi
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov edx, dword [eax]
mov al, dl
and al, 1
mov byte [ecx + 0x46e], al
mov eax, edx
shr eax, 1
and al, 1
mov byte [ecx + 0x46f], al
mov eax, edx
shr eax, 2
and al, 1
mov byte [ecx + 0x470], al
mov eax, edx
shr eax, 3
and al, 1
mov byte [ecx + 0x471], al
mov eax, edx
shr eax, 4
and al, 1
shr edx, 5
mov byte [ecx + 0x472], al
and dl, 1
mov eax, edi
mov byte [ecx + 0x473], dl
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov edx, dword [eax]
mov al, dl
and al, 1
mov byte [ecx + 0x4da], al
mov eax, edx
shr eax, 1
and al, 1
mov byte [ecx + 0x4db], al
mov eax, edx
shr eax, 2
and al, 1
mov byte [ecx + 0x4dc], al
mov eax, edx
shr eax, 3
and al, 1
mov byte [ecx + 0x4dd], al
mov eax, edx
shr eax, 4
and al, 1
shr edx, 5
mov byte [ecx + 0x4de], al
and dl, 1
mov eax, edi
mov byte [ecx + 0x4df], dl
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x694], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x719], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x71b], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6b8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6bc], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x71d], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x71e], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x71f], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x720], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x721], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x20c], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
cmp dword [eax], edi
mov eax, dword [esp + 0x1c]
setne cl
mov byte [eax + 0x726], cl
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6dc], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x214], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
test ecx, ecx
js 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x218], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
test byte [eax], 1
je 0x40f98b
mov esi, dword [esp + 0x1c]
cmp dword [esi + 0x734], edi
jne case.0x40e9d4.91
call fcn.00420560
mov dword [esi + 0x734], eax
test eax, eax
jne case.0x40e9d4.91
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x1c]
add eax, 0x734
push eax
call fcn.00420510
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x158], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x27fb
jg 0x41036b
je case.0x40f9ec.10179
add ecx, 0xffffd8ee
cmp ecx, 0xe4
ja case.0x410c75.40296
movzx eax, byte [ecx + 0x41114c]
jmp dword [eax*4 + 0x411068]
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5a4
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5b8
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5b4
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov ebp, dword [eax]
test ebp, ebp
je 0x40fb0c
mov edx, dword [esi + 0x188]
mov eax, edx
mov ecx, dword [esi + 0x18c]
and eax, ecx
cmp eax, 0xffffffff
je 0x40fb0c
test ecx, ecx
jl 0x40fadf
jg 0x40fadf
test edx, edx
jb 0x40fadf
test ecx, ecx
jg 0x40fadf
jl 0x40fa99
cmp edx, 0xffffffff
ja 0x40fadf
push dword [esi + 0x660]
call dword [0x479004]
mov dword [esi + 0x660], edi
add esp, 4
mov ecx, dword [esi + 0x188]
mov eax, ecx
mov edx, dword [esi + 0x18c]
or eax, edx
je 0x40fac6
mov dword [esp + 0x14], edx
jmp 0x40facf
mov ecx, 1
mov dword [esp + 0x14], edi
push ecx
call dword [section..data]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x40fae6
mov edi, 0x1b
jmp 0x40fb1e
mov eax, dword [esi + 0x188]
or eax, dword [esi + 0x18c]
je 0x40fb04
push dword [esi + 0x188]
push ebp
push ebx
call fcn.0043dba0
add esp, 0xc
mov dword [esi + 0x660], ebx
jmp 0x40fb1e
lea eax, [esi + 0x660]
push ebp
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
mov eax, dword [esi + 0x660]
mov dword [esi + 0x180], eax
mov eax, edi
pop edi
mov dword [esi + 0x400], 1
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov eax, dword [eax]
mov dword [esi + 0x180], eax
push dword [esi + 0x660]
call dword [0x479004]
add esp, 4
mov dword [esi + 0x660], edi
mov eax, edi
mov dword [esi + 0x400], 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
je 0x40fbc6
cmp byte [eax], 0
jne 0x40fbc6
call fcn.00421050
mov esi, eax
test esi, esi
jne 0x40fba0
mov edi, 0x1b
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x1c]
add eax, 0x548
push esi
push eax
call fcn.0040e930
push esi
mov edi, eax
call dword [0x479004]
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
push eax
mov eax, dword [esp + 0x20]
add eax, 0x548
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [ecx + 0x250], eax
mov eax, edi
pop edi
pop esi
pop ebp
mov dword [ecx + 0x400], 2
mov byte [ecx + 0x70b], 0
pop ebx
add esp, 8
ret
mov ebx, dword [esp + 0x1c]
cmp byte [ebx + 0xcf7], 0
je 0x40fc37
push dword [ebx + 0xc88]
call dword [0x479004]
add esp, 4
mov dword [ebx + 0xc88], edi
mov byte [ebx + 0xcf7], 0
mov eax, dword [esp + 0x24]
lea esi, [ebx + 0x584]
push dword [eax]
push esi
call fcn.0040e930
add esp, 8
mov edi, eax
mov eax, dword [esi]
mov dword [ebx + 0xc88], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5bc
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x248], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x24c], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x4f4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x53c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x578
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x160], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x150], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x15c], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ebx, dword [esp + 0x1c]
cmp byte [ebx + 0xcf6], 0
je 0x40fd8b
push dword [ebx + 0xc84]
call dword [0x479004]
add esp, 4
mov dword [ebx + 0xc84], edi
mov byte [ebx + 0xcf6], 0
mov eax, dword [esp + 0x24]
lea esi, [ebx + 0x588]
push dword [eax]
push esi
call fcn.0040e930
add esp, 8
mov edi, eax
mov eax, dword [esi]
mov dword [ebx + 0xc84], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x5d8]
push eax
lea eax, [ecx + 0x5d4]
push eax
mov eax, dword [esp + 0x2c]
push dword [eax]
call fcn.004114b0
add esp, 0xc
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5d4
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5d8
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5dc
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x62c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x3cc], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x3d0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x3c8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x3e4], ecx
mov dword [eax + 0xc90], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1f8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x5e4]
push eax
lea eax, [ecx + 0x5e0]
jmp 0x40fdc5
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5e0
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5e4
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5e8
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x580
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x14c], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov eax, dword [eax]
mov dword [esi + 0x148], eax
test eax, eax
jne case.0x40e9d4.91
call fcn.00406c50
add eax, 0x40
mov dword [esi + 0x148], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1d8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1fc], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x524
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x52c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x558
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x568
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x560
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov esi, dword [eax]
test esi, esi
je case.0x40e9d4.91
cmp byte [esi], 0
je case.0x40e9d4.91
mov ebx, dword [esp + 0x1c]
push esi
lea eax, [ebx + 0x5d0]
push eax
call fcn.0040e930
mov edi, eax
add esp, 8
test edi, edi
jne case.0x40e9d4.91
push esi
push ebx
call fcn.004194d0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x544
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 8
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x454], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 4
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x59c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x594
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 1
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x58c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5c0
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5c8
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov ebx, dword [eax]
cmp dword [esi + 0x78], edi
je 0x410267
push 2
push 1
push esi
call fcn.00421370
add esp, 0xc
cmp dword [esi + 0x6c], 2
jne 0x410238
mov dword [esi + 0x68], edi
mov dword [esi + 0x6c], edi
mov eax, dword [esi + 0x78]
mov eax, dword [eax + 0x68]
cmp eax, dword [esi + 0x90c]
jne 0x41024c
mov dword [esi + 0x90c], edi
mov eax, dword [esi + 0x78]
push 1
push esi
mov ecx, dword [eax + 8]
mov eax, dword [esi + 0x78]
dec ecx
mov dword [eax + 8], ecx
call fcn.004213b0
add esp, 8
mov dword [esi + 0x78], edi
test ebx, ebx
je 0x410276
cmp dword [ebx], 0x7e117a1e
jne 0x410276
mov dword [esi + 0x78], ebx
cmp dword [esi + 0x78], edi
je case.0x40e9d4.91
push 2
push 1
push esi
call fcn.00421370
mov eax, dword [esi + 0x78]
add esp, 0xc
mov ecx, dword [eax + 8]
mov eax, dword [esi + 0x78]
inc ecx
mov dword [eax + 8], ecx
mov eax, dword [esi + 0x78]
test byte [eax + 4], 8
je 0x4102af
add eax, 0x50
mov dword [esi + 0x68], eax
mov dword [esi + 0x6c], 2
mov eax, dword [esi + 0x78]
cmp dword [eax + 0x68], edi
je 0x4102cc
mov eax, dword [eax + 0x6c]
mov dword [esi + 0x4e0], eax
mov eax, dword [esi + 0x78]
mov eax, dword [eax + 0x68]
mov dword [esi + 0x90c], eax
push 1
push esi
call fcn.004213b0
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x4f0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1bc], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1c4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1cc], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x60c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x4e2b
jg 0x410821
je 0x4107e2
add ecx, 0xffffd804
cmp ecx, 0x4d
ja case.0x410c75.40296
movzx eax, byte [ecx + 0x4112b0]
jmp dword [eax*4 + 0x411234]
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5a8
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
call fcn.00419550
test al, al
je case.0x410393.10240
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5ac
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
call fcn.00419550
test al, al
je case.0x410393.10240
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5b0
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x634
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x1c]
push dword [eax]
lea esi, [ebx + 0x664]
push esi
call fcn.0040e930
add esp, 8
mov edi, eax
cmp dword [esi], 0
je case.0x40e9d4.91
pop edi
pop esi
pop ebp
mov dword [ebx + 0x16c], 0x80
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
push 0
push dword [eax]
lea eax, [esi + 0x258]
push eax
call fcn.00416140
mov edi, eax
add esp, 0xc
test edi, edi
jne case.0x40e9d4.91
pop edi
mov dword [esi + 0x400], 3
mov byte [esi + 0x70b], al
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x57c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x610
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6e8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x528
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x530
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x55c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x56c
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x564
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 4
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5a0
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x598
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 1
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x590
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5c4
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x5cc
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x658
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6d8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x540
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x644
push eax
call fcn.0040e930
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x3e8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6ec], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1ec], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1f4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov esi, dword [esp + 0x1c]
cmp dword [esi + 0x734], edi
jne 0x410786
call fcn.00420560
mov dword [esi + 0x734], eax
test eax, eax
je 0x40f97e
mov eax, dword [esp + 0x24]
mov ebx, dword [eax]
lea eax, [esi + 0x640]
push ebx
push eax
call fcn.0040e930
mov edi, eax
add esp, 8
test edi, edi
jne 0x410d8f
test ebx, ebx
je case.0x40e9d4.91
push ebx
push dword [esi + 0x734]
push esi
call fcn.004205b0
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1d4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax]
mov dword [ecx + 0x198], eax
test eax, eax
jne 0x410810
mov byte [ecx + 0x6f5], al
mov eax, edi
pop edi
pop esi
pop ebp
mov dword [ecx + 0x198], fcn.00444754
pop ebx
add esp, 8
ret
mov eax, edi
mov byte [ecx + 0x6f5], 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x4f30
jg 0x410a23
je 0x410a09
add ecx, 0xffffb1d4
cmp ecx, 0xcf
ja case.0x410c75.40296
movzx eax, byte [ecx + 0x41133c]
jmp dword [eax*4 + 0x411300]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax]
test eax, eax
mov dword [ecx + 0x1a8], eax
setne al
mov byte [ecx + 0x8bc], al
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax]
test eax, eax
mov dword [ecx + 0x1ac], eax
setne al
mov byte [ecx + 0x8bc], al
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1b0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x19c], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax]
mov dword [ecx + 0x1a4], eax
test eax, eax
jne 0x4108ff
mov byte [ecx + 0x6f4], al
mov eax, edi
pop edi
pop esi
pop ebp
mov dword [ecx + 0x1a4], fcn.00444e5c
pop ebx
add esp, 8
ret
mov eax, edi
mov byte [ecx + 0x6f4], 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x184], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1dc], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1e0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1e4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1b4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 8
je case.0x40f46a.244
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x450], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1b8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1c0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1c8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6d4], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x75c1
jg 0x410bc6
je 0x410b91
cmp ecx, 0x75a3
jg 0x410b03
je 0x410acc
add ecx, 0xffffb0c5
cmp ecx, 0x1d
ja case.0x410c75.40296
movzx eax, byte [ecx + 0x411420]
jmp dword [eax*4 + 0x41140c]
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x6f0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1e8], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1f0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1d0], ecx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
cmp edx, 0xffffffff
jg 0x410ae9
jl 0x40f08f
cmp ecx, 0xffffffff
jb 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x220], ecx
mov dword [eax + 0x224], edx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
sub ecx, 0x75a4
je 0x410b5a
dec ecx
je 0x410b25
sub ecx, 3
jne case.0x410c75.40296
mov eax, dword [esp + 0x24]
mov ebx, dword [eax]
mov ebp, dword [eax + 4]
jmp 0x40ec18
mov eax, dword [esp + 0x24]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
test edx, edx
jg 0x410b40
jl 0x40f08f
test ecx, ecx
jb 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x500], ecx
mov dword [eax + 0x504], edx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
cmp edx, 0xffffffff
jg 0x410b77
jl 0x40f08f
cmp ecx, 0xffffffff
jb 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x240], ecx
mov dword [eax + 0x244], edx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
test edx, edx
jg 0x410bac
jl 0x40f08f
test ecx, ecx
jb 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x230], ecx
mov dword [eax + 0x234], edx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
cmp ecx, 0x9d63
jg 0x410c5f
je 0x410c3d
sub ecx, 0x75c2
je 0x410c08
sub ecx, 0x7c
jne case.0x410c75.40296
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov eax, dword [edx]
mov dword [ecx + 0x3f8], eax
mov eax, dword [edx + 4]
mov dword [ecx + 0x3fc], eax
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
mov edx, dword [eax + 4]
mov ecx, dword [eax]
test edx, edx
jg 0x410c23
jl 0x40f08f
test ecx, ecx
jb 0x40f08f
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x238], ecx
mov dword [eax + 0x23c], edx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x668
push eax
call fcn.0040e8a0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
add ecx, 0xffff629c
cmp ecx, 0x12
ja case.0x410c75.40296
movzx eax, byte [ecx + 0x411460]
jmp dword [eax*4 + 0x411440]
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x66c
push eax
call fcn.0040e8a0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x670
push eax
call fcn.0040e8a0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x674
push eax
call fcn.0040e8a0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 0x40
je case.0x410393.10240
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x680
push eax
call fcn.0040e8a0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [0x479014]
test byte [eax + 8], 0x40
je case.0x410393.10240
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x684
push eax
call fcn.0040e8a0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x678
push eax
call fcn.0040e8a0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov eax, dword [esp + 0x24]
push dword [eax]
mov eax, dword [esp + 0x20]
add eax, 0x67c
push eax
call fcn.0040e8a0
add esp, 8
mov edi, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret
mov edi, 0x30
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret