Function at 0x994590
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [ebp + 0xc]
sub esp, 8
push ebx
push esi
xor ebx, ebx
push edi
mov edi, dword [ebp + 8]
cmp ecx, 0xd2
jg 0x99517d
je 0x995167
lea eax, [ecx - 3]
cmp eax, 0xcc
ja case.0x996e77.40296
movzx eax, byte [eax + 0x9970c8]
jmp dword [eax*4 + 0x996f80]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x996e23
mov dword [edi + 0x4ac], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x680], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d1], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d2], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6cf], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6cb], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [edi + 0x734]
mov edx, dword [eax]
test edx, edx
setne al
mov byte [edi + 0x6c5], al
mov eax, ecx
and eax, 0xffffffef
or ecx, 0x10
test edx, edx
cmove ecx, eax
mov eax, ebx
mov dword [edi + 0x734], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
test ecx, ecx
setne al
mov byte [edi + 0x6ce], al
test ecx, ecx
je 0x9946ba
mov byte [edi + 0x3c9], 5
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0x3c9], 5
jne case.0x99574c.10076
mov byte [edi + 0x3c9], bl
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c6], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
je 0x99470b
mov byte [edi + 0x6ce], bl
mov al, 4
mov byte [edi + 0x3c9], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor al, al
mov byte [edi + 0x3c9], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6ba], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 0x20c49b
jg 0x996e23
imul eax, eax, 0x3e8
mov dword [edi + 0x1fc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x208], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 3
jge 0x996e23
mov byte [edi + 0x4e5], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6bc], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 4
jge 0x996e23
mov byte [edi + 0x3c8], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cdq
mov dword [edi + 0x3c0], eax
mov eax, ebx
mov dword [edi + 0x3c4], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cdq
mov esi, eax
mov ecx, edx
mov dword [ebp + 0xc], ecx
cmp ecx, 0xffffffff
jl 0x996e23
jg 0x994819
cmp esi, 0xffffffff
jb 0x996e23
cmp dword [edi + 0x184], ecx
jg 0x99484f
jl 0x99482b
cmp dword [edi + 0x180], esi
jae 0x99484f
mov eax, dword [edi + 0x178]
lea edx, [edi + 0x628]
cmp eax, dword [edx]
jne 0x99484f
push 0
push edx
call fcn.00994520
mov ecx, dword [ebp + 0xc]
add esp, 8
mov dword [edi + 0x178], ebx
mov dword [edi + 0x180], esi
mov eax, ebx
mov dword [edi + 0x184], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6cd], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c9], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c8], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6ca], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x996e23
mov dword [edi + 0x174], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
and al, 7
mov byte [edi + 0x6a8], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
je 0x99470b
mov byte [edi + 0x6ce], bl
mov al, 1
mov byte [edi + 0x3c9], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6b6], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
je case.0x99574c.10076
mov byte [edi + 0x3c9], bl
mov eax, ebx
mov byte [edi + 0x6ce], bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, ecx
sub eax, 0
je 0x99497e
sub eax, 1
je 0x99497e
sub eax, 1
je 0x99497e
test ecx, ecx
js 0x996e23
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x3ca], cl
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
test edx, edx
jne 0x9949a5
mov dword [edi + 0x16c], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, edx
shr eax, 4
and al, 1
mov byte [edi + 0x97e], al
test dl, 0x10
je 0x9949bd
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x9949df
cmp ecx, 0x1f
jl 0x9949c2
pop edi
pop esi
mov eax, 4
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x16c], edx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6bb], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 0xffff
jg 0x996e23
mov word [edi + 0x4a0], ax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
test edx, edx
jne 0x994a45
mov dword [edi + 0x170], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, edx
shr eax, 4
and al, 1
mov byte [edi + 0x98e], al
test dl, 0x10
je 0x994a5d
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x994a7f
cmp ecx, 0x1f
jl 0x994a62
pop edi
pop esi
mov eax, 4
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x170], edx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 7
jg 0x996e23
mov byte [edi + 0x4a2], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
sub eax, 0
je 0x994ad6
sub eax, 1
jne 0x994c12
mov byte [edi + 0x6d8], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6d8], bl
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d9], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6be], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6bd], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 4
jge 0x996e23
mov byte [edi + 0x4d0], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c1], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c0], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c2], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 3
jge 0x996e23
mov byte [edi + 0x4d2], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c3], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 3
jge 0x996e23
mov byte [edi + 0x4d1], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x994c12
cmp eax, 2
jg 0x994c12
mov byte [edi + 0x4e4], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
mov ebx, 0x2b
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x996e23
cdq
mov dword [edi + 0x210], eax
mov eax, ebx
mov dword [edi + 0x214], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x218], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x21c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 0xffff
jg 0x996e23
mov word [edi + 0x168], ax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 0x20c49b
jg 0x996e23
imul eax, eax, 0x3e8
mov dword [edi + 0x1f0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1f0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 0x20c49b
jg 0x996e23
imul eax, eax, 0x3e8
mov dword [edi + 0x1f4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1f4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x996e23
cdq
mov dword [edi + 0x230], eax
mov eax, ebx
mov dword [edi + 0x234], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [edi + 0x590]
push 0
push eax
call fcn.00994520
push edi
call fcn.009a1c30
add esp, 0xc
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6b7], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 0xffff
jg 0x996e23
push eax
call fcn.009a9400
add esp, 4
mov word [edi + 0x188], ax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 0xffff
jg 0x996e23
push eax
call fcn.009a9400
add esp, 4
mov word [edi + 0x18a], ax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x405], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x99574c.10076
pop edi
mov byte [ecx + 0x181], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
test byte [eax], 3
setne al
mov byte [edi + 0x406], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x99574c.10076
pop edi
mov byte [ecx + 0x182], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 2
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x42c], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x8c0], ebx
jne 0x996e23
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xa00000
jle 0x994e8a
mov eax, 0xa00000
mov dword [edi + 0x4b0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 1
jge 0x994ea3
mov eax, 0x4000
mov dword [edi + 0x4b0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x400
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x4b0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d3], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cdq
mov dword [edi + 0x4c8], eax
mov eax, ebx
mov dword [edi + 0x4cc], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 4
jge 0x996e23
mov byte [edi + 0x6b1], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 2
jg 0x996e23
mov byte [edi + 0x4c0], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d4], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6d5], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 2
jg 0x996e23
mov byte [edi + 0x6b2], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x408], al
mov byte [edi + 0x470], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
sete al
mov byte [edi + 0x6d6], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
sete al
mov byte [edi + 0x6d7], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
cmp eax, 0x1ff
jg 0x996e23
mov dword [edi + 0x4e8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x64c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x650], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
dec eax
cmp eax, 0xa
ja case.default.0x995034
jmp dword [eax*4 + 0x997198]
mov eax, 1
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 2
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 3
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 4
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 5
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 6
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 7
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 8
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 9
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0xa
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0xb
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
mov dword [edi + 0x65c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0xc60], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0xc64], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c4], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov al, byte [eax]
and al, 3
mov byte [edi + 0x674], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x2711
jg 0x995721
je 0x99570d
lea eax, [ecx - 0xd4]
cmp eax, 0x6e
ja case.0x996e77.40296
movzx eax, byte [eax + 0x997270]
jmp dword [eax*4 + 0x9971c4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x996e23
mov dword [edi + 0x4a8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6c7], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6b4], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
movzx eax, dx
and edx, 0xffff0000
mov dword [ebp - 4], eax
cmp eax, 2
je 0x996e23
cmp eax, 3
je 0x996e23
cmp eax, 8
jae 0x996e23
cmp edx, 0x7ffff
ja 0x996e23
cmp ecx, 0x20
mov esi, 0x404
mov ecx, dword [ebp - 4]
mov eax, 0x46c
cmove eax, esi
cmp dword [ebp + 0xc], 0x20
mov esi, 0x400
mov byte [eax + edi], cl
mov eax, 0x468
cmove eax, esi
mov dword [eax + edi], edx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov al, byte [eax]
and al, 1
mov byte [edi + 0x6b5], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x684], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 1
jg 0x996e23
test eax, eax
setne al
mov byte [edi + 0x6e9], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x654], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov al, byte [eax]
mov byte [edi + 0x4a3], al
and al, 0xfa
movzx ebx, al
neg ebx
pop edi
sbb ebx, ebx
and ebx, 4
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x4d4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e2], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e6], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x46d], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x99574c.10076
pop edi
mov byte [ecx + 0x1c1], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
test byte [eax], 3
setne al
mov byte [edi + 0x6e7], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
test byte [eax], 3
setne al
mov byte [edi + 0x46e], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x99574c.10076
pop edi
mov byte [ecx + 0x1c2], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.009a1400
test al, al
jne 0x9953ac
pop edi
mov ebx, 4
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x407], al
mov ecx, dword [edi + 0x18]
test ecx, ecx
je case.0x99574c.10076
pop edi
mov byte [ecx + 0x183], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.009a1400
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e8], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push edi
call fcn.009a1770
add esp, 4
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x42d], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0x200000
jle 0x99542b
mov eax, 0x200000
jmp 0x995435
mov ecx, 0x4000
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x4b4], eax
push dword [edi + 0x8c4]
call dword [0xa3f17c]
add esp, 4
mov dword [edi + 0x8c4], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov al, cl
and al, 1
mov byte [edi + 0x3fc], cl
mov byte [edi + 0x42e], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [edi + 0x42f], al
mov eax, ecx
shr eax, 2
and al, 1
mov byte [edi + 0x430], al
mov eax, ecx
shr eax, 3
and al, 1
mov byte [edi + 0x431], al
mov eax, ecx
shr eax, 4
and al, 1
shr ecx, 5
mov byte [edi + 0x432], al
and cl, 1
mov byte [edi + 0x433], cl
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov al, cl
and al, 1
mov byte [edi + 0x464], cl
mov byte [edi + 0x496], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [edi + 0x497], al
mov eax, ecx
shr eax, 2
and al, 1
mov byte [edi + 0x498], al
mov eax, ecx
shr eax, 3
and al, 1
mov byte [edi + 0x499], al
mov eax, ecx
shr eax, 4
and al, 1
shr ecx, 5
mov byte [edi + 0x49a], al
and cl, 1
mov byte [edi + 0x49b], cl
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6b0], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6da], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6db], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x678], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x67c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6dd], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6de], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6df], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e0], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1f8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e1], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e4], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x690], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x200], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
js 0x996e23
mov dword [edi + 0x204], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
add edi, 0x6f4
test byte [eax], 1
je 0x9956b0
cmp dword [edi], ebx
jne case.0x99574c.10076
call fcn.009aa880
mov dword [edi], eax
test eax, eax
je 0x995a50
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
push edi
call fcn.009aa830
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x6f8]
test eax, eax
jne 0x9956df
call fcn.009a9960
mov dword [edi + 0x6f8], eax
test eax, eax
je 0x995a50
mov ecx, dword [ebp + 0x10]
push dword [ecx]
push eax
call fcn.009a9940
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6b9], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x15c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x27f4
jg 0x99645d
je 0x996449
add ecx, 0xffffd8ee
cmp ecx, 0xde
ja case.0x996e77.40296
movzx eax, byte [ecx + 0x997404]
jmp dword [eax*4 + 0x9972e0]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x56c]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x53c]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov dword [ebp + 0xc], ecx
test ecx, ecx
je 0x99588a
mov esi, dword [edi + 0x180]
mov eax, esi
mov edx, dword [edi + 0x184]
and eax, edx
cmp eax, 0xffffffff
je 0x99588a
test edx, edx
ja 0x995863
jb 0x9957c9
cmp esi, 0xffffffff
ja 0x995863
lea esi, [edi + 0x628]
push 0
push esi
call fcn.00994520
mov ecx, dword [edi + 0x180]
add esp, 8
mov edx, dword [edi + 0x184]
mov eax, ecx
or eax, edx
je 0x9957f1
mov dword [ebp - 4], edx
jmp 0x9957f9
mov ecx, 1
mov dword [ebp - 4], ebx
push ecx
call dword [0xa3f178]
mov ecx, eax
add esp, 4
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x995829
mov eax, dword [esi]
mov ebx, 0x1b
mov dword [edi + 0x178], eax
mov eax, ebx
mov byte [edi + 0x3c9], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [edi + 0x180]
mov eax, edx
or eax, dword [edi + 0x184]
je 0x995849
push edx
push dword [ebp + 0xc]
push ecx
call fcn.009e5d30
mov ecx, dword [ebp - 4]
add esp, 0xc
mov dword [esi], ecx
mov eax, ecx
mov dword [edi + 0x178], eax
mov eax, ebx
mov byte [edi + 0x3c9], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x628]
lea esi, [edi + 0x628]
mov dword [edi + 0x178], eax
mov ebx, 0x1b
mov byte [edi + 0x3c9], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push ecx
lea esi, [edi + 0x628]
push esi
call fcn.00994520
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0x178], eax
mov eax, ebx
mov byte [edi + 0x3c9], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push 0
mov eax, dword [eax]
mov dword [edi + 0x178], eax
lea eax, [edi + 0x628]
push eax
call fcn.00994520
add esp, 8
mov byte [edi + 0x3c9], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
je 0x995928
cmp byte [eax], bl
jne 0x995928
call fcn.009ab590
mov esi, eax
test esi, esi
jne 0x995906
pop edi
mov ebx, 0x1b
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [edi + 0x510]
push esi
push eax
call fcn.00994520
push esi
mov ebx, eax
call dword [0xa3f17c]
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push eax
lea eax, [edi + 0x510]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [edi + 0xcd4]
mov eax, dword [eax]
mov dword [edi + 0x23c], eax
mov byte [edi + 0x3c9], 2
mov byte [edi + 0x6ce], bl
call fcn.0099e0a0
push dword [edi + 0xcd4]
call dword [0xa3f17c]
add esp, 8
mov dword [edi + 0xcd4], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0xd81], bl
je 0x9959a5
push dword [edi + 0xcc8]
call dword [0xa3f17c]
add esp, 4
mov dword [edi + 0xcc8], ebx
mov byte [edi + 0xd81], bl
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x54c]
push dword [eax]
push esi
call fcn.00994520
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0xcc8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x57c]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x4fc]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
test edx, edx
je 0x995a6b
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x995a14
sub ecx, esi
cmp ecx, 0x7a1200
ja 0x996e23
push edx
push dword [edi + 0x1d0]
call fcn.009979f0
add esp, 8
test eax, eax
jne 0x995a5c
push dword [edi + 0x1d0]
call fcn.00997a30
add esp, 4
mov dword [edi + 0x1d0], ebx
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x1d0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [edi + 0x1d0]
call fcn.00997a30
mov eax, dword [edi + 0x84]
add esp, 4
mov dword [edi + 0x1d0], ebx
test eax, eax
je 0x995a8e
cmp dword [eax + 0x78], ebx
jne 0x995aa7
push dword [edi + 0x6f0]
call fcn.0099c000
push dword [edi + 0x6f0]
call fcn.0099bfd0
add esp, 8
mov dword [edi + 0x6f0], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x500]
push eax
call fcn.00994520
mov ebx, eax
movzx eax, byte [edi + 0x6b6]
push eax
push dword [edi + 0x6f0]
push 0
push edi
call fcn.0099c2a0
add esp, 0x18
mov dword [edi + 0x6f0], eax
test eax, eax
mov ecx, 0x1b
cmove ebx, ecx
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
test esi, esi
je case.0x99574c.10076
push 0xa217d0
push esi
call fcn.009ab420
add esp, 8
test eax, eax
je 0x995b43
push 2
push 2
push edi
call fcn.009ab830
push dword [edi + 0x6f0]
call fcn.0099c000
push 2
push edi
call fcn.009ab870
add esp, 0x18
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.SESS
push esi
call fcn.009ab420
add esp, 8
test eax, eax
je 0x995b7e
push 2
push 2
push edi
call fcn.009ab830
push dword [edi + 0x6f0]
call fcn.0099c040
push 2
push edi
call fcn.009ab870
add esp, 0x18
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.FLUSH
push esi
call fcn.009ab420
add esp, 8
test eax, eax
je 0x995ba4
push 0
push edi
call fcn.0099c500
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.RELOAD
push esi
call fcn.009ab420
add esp, 8
test eax, eax
je 0x995bc8
push edi
call fcn.0099c490
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f0], ebx
jne 0x995be5
push 1
push 0
push 0
push edi
call fcn.0099c2a0
add esp, 0x10
mov dword [edi + 0x6f0], eax
mov ecx, esi
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x995bf0
sub ecx, edx
cmp ecx, 0x7a1200
ja 0x996e23
push esi
call dword [0xa3f184]
mov esi, eax
add esp, 4
test esi, esi
je 0x995c79
cmp dword [edi + 0x6f0], ebx
je 0x995c79
push 2
push 2
push edi
call fcn.009ab830
push 0xb
push str.Set_Cookie:
push esi
call fcn.009ab450
add esp, 0x18
lea ecx, [esi + 0xb]
test eax, eax
jne 0x995c40
mov ecx, esi
push 1
push 0
push 0
test eax, eax
push ecx
setne al
push 0
movzx eax, al
push eax
push dword [edi + 0x6f0]
push edi
call fcn.0099b170
push 2
push edi
call fcn.009ab870
push esi
call dword [0xa3f17c]
add esp, 0x2c
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
mov ebx, 0x1b
call dword [0xa3f17c]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x4bc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x238], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x504]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x540]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x164], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x158], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x51c]
push dword [eax]
push esi
call fcn.00994520
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6bf], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x514]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x518]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x538]
push dword [eax]
push esi
call fcn.00994520
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6d0], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x4dc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x4e0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x4d8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x160], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0xd80], bl
je 0x995e1e
push dword [edi + 0xcc4]
call dword [0xa3f17c]
add esp, 4
mov dword [edi + 0xcc4], ebx
mov byte [edi + 0xd80], bl
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x550]
push dword [eax]
push esi
call fcn.00994520
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0xcc4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [edi + 0x598]
push eax
lea eax, [edi + 0x594]
push eax
mov eax, dword [ebp + 0x10]
push dword [eax]
call fcn.00997840
add esp, 0xc
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x594]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x598]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x59c]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5ec]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x3b4], eax
mov dword [edi + 0xccc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1e8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [edi + 0x5a4]
push eax
lea eax, [edi + 0x5a0]
jmp 0x995e52
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5a0]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5a4]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5a8]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x548]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x154], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x150], eax
test eax, eax
jne case.0x99574c.10076
push 2
call fcn.009f0a6c
add esp, 4
mov dword [edi + 0x150], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1cc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1ec], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x4ec]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x4f4]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x520]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x530]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x528]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
test esi, esi
je case.0x99574c.10076
cmp byte [esi], bl
je case.0x99574c.10076
lea eax, [edi + 0x590]
push esi
push eax
call fcn.00994520
mov ebx, eax
add esp, 8
test ebx, ebx
jne case.0x99574c.10076
push esi
push edi
call fcn.009a1c20
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x50c]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 8
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x414], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x55c]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x554]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x580]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x588]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x3b0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x84]
mov dword [ebp + 0xc], esi
mov edx, dword [eax]
mov eax, dword [esi]
mov dword [ebp - 4], edx
test eax, eax
je 0x996248
push 2
push 1
push edi
call fcn.009ab830
add esp, 0xc
mov ecx, esi
cmp dword [edi + 0x78], 2
jne 0x9961e7
mov dword [edi + 0x74], ebx
lea ecx, [edi + 0x84]
mov dword [edi + 0x78], ebx
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
cmp eax, dword [edi + 0x6f0]
jne 0x9961fc
mov dword [edi + 0x6f0], ebx
jmp 0x9961fe
mov ecx, esi
mov eax, dword [edx + 0x7c]
mov dword [ebp + 0xc], esi
cmp eax, dword [edi + 0x6f4]
jne 0x996217
mov dword [edi + 0x6f4], ebx
mov esi, ecx
mov dword [ebp + 0xc], ecx
mov eax, dword [edx + 0x80]
cmp eax, dword [edi + 0x8e0]
jne 0x99622b
mov dword [edi + 0x8e0], ebx
mov eax, dword [esi]
push 1
push edi
mov ecx, dword [eax + 8]
mov eax, dword [esi]
dec ecx
mov dword [eax + 8], ecx
call fcn.009ab870
mov edx, dword [ebp - 4]
add esp, 8
mov dword [esi], ebx
xor eax, eax
mov ecx, esi
test edx, edx
je 0x996263
cmp dword [edx], 0x7e117a1e
jne 0x996263
lea eax, [edi + 0x84]
mov dword [esi], edx
mov dword [ebp - 4], eax
jmp 0x99626e
mov dword [ebp - 4], ecx
test eax, eax
je case.0x99574c.10076
push 2
push 1
push edi
call fcn.009ab830
mov eax, dword [esi]
add esp, 0xc
mov ecx, dword [eax + 8]
mov eax, dword [esi]
inc ecx
mov dword [eax + 8], ecx
mov ecx, dword [esi]
test byte [ecx + 4], 8
je 0x9962a1
mov esi, dword [ebp - 4]
lea eax, [ecx + 0x60]
mov dword [edi + 0x74], eax
mov dword [edi + 0x78], 2
mov dword [ebp + 0xc], esi
cmp dword [ecx + 0x78], ebx
je 0x9962bf
push dword [edi + 0x6f0]
call fcn.0099bfd0
mov ecx, dword [esi]
add esp, 4
mov eax, dword [ecx + 0x78]
mov dword [edi + 0x6f0], eax
cmp dword [ecx + 0x7c], ebx
je 0x9962df
lea esi, [edi + 0x6f4]
push esi
call fcn.009aa830
mov ecx, dword [ebp + 0xc]
add esp, 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x7c]
mov dword [esi], eax
jmp 0x9962e2
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx]
cmp dword [ecx + 0x80], ebx
je 0x996304
mov eax, dword [ecx + 0x84]
mov dword [edi + 0x4a4], eax
mov eax, dword [ecx + 0x80]
mov dword [edi + 0x8e0], eax
push 1
push edi
call fcn.009ab870
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x4b8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1b0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1b8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1c0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5d4]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5d8]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x6ac], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5ac]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5b0]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5b4]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x658], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x670], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x66c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x49c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x4e2b
jg 0x996aae
je 0x996a88
add ecx, 0xffffd80a
cmp ecx, 0x5d
ja case.0x996e77.40296
movzx eax, byte [ecx + 0x997584]
jmp dword [eax*4 + 0x9974e4]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x570]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x20
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x574]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x20
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x578]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5f4]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x61c]
push dword [eax]
push esi
call fcn.00994520
add esp, 8
mov ebx, eax
cmp dword [esi], 0
je case.0x99574c.10076
mov dword [edi + 0x16c], 0x80
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push 0
push dword [eax]
lea eax, [edi + 0x240]
push eax
call fcn.0099e570
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne case.0x99574c.10076
push dword [edi + 0xcd4]
mov byte [edi + 0x3c9], 3
mov byte [edi + 0x6ce], al
call fcn.0099e0a0
push dword [edi + 0xcd4]
call dword [0xa3f17c]
add esp, 8
mov dword [edi + 0xcd4], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x544]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5cc]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5d0]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x69c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x4f0]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x4f8]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x524]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x534]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x52c]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x620]
push eax
call fcn.00994520
add esp, 8
mov byte [edi + 0x6e2], 1
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 4
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x564]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 4
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x568]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x560]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x558]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x584]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x58c]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x618]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x68c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
lea ecx, [ebp + 0xc]
push ecx
push dword [eax]
call fcn.00997790
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x996f76
mov eax, dword [ebp + 0xc]
mov dword [edi + 0x64c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
lea ecx, [ebp + 0xc]
push ecx
push dword [eax]
call fcn.00997790
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x996f76
mov eax, dword [ebp + 0xc]
mov dword [edi + 0x650], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x508]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x604]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov byte [edi + 0x6e3], bl
push dword [eax]
lea eax, [edi + 0x5f0]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov byte [edi + 0x6e3], 1
push dword [eax]
lea eax, [edi + 0x5f0]
push eax
call fcn.00994520
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
je case.0x9951a5.239
cmp dword [eax], 0xc0dedbad
je case.0x9951a5.239
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x3b8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
lea esi, [edi + 0x5f8]
push dword [eax]
push esi
call fcn.00994520
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6e5], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x6a0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1dc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1e4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f4], ebx
lea esi, [edi + 0x6f4]
jne 0x996979
call fcn.009aa880
mov dword [esi], eax
test eax, eax
je 0x995a50
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [ebp + 0xc], eax
test eax, eax
je 0x9969e1
push eax
lea eax, [edi + 0x600]
push eax
call fcn.00994520
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x996f76
push dword [ebp + 0xc]
push dword [edi + 0x1d4]
call fcn.009979f0
add esp, 8
test eax, eax
jne 0x9969d2
push dword [edi + 0x1d4]
call fcn.00997a30
add esp, 4
mov dword [edi + 0x1d4], ebx
lea eax, [ebx + 0x1b]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x1d4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [edi + 0x1d4]
call fcn.00997a30
mov dword [edi + 0x1d4], ebx
add esp, 4
mov eax, dword [edi + 0x84]
test eax, eax
je 0x996a08
cmp dword [eax + 0x7c], ebx
jne case.0x99574c.10076
push esi
call fcn.009aa830
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f8], ebx
jne 0x996a35
call fcn.009a9960
mov dword [edi + 0x6f8], eax
test eax, eax
je 0x995a50
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
lea eax, [edi + 0x5fc]
push esi
push eax
call fcn.00994520
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x996f76
test esi, esi
je case.0x99574c.10076
push esi
push dword [edi + 0x6f8]
call fcn.009a9990
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1c8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x18c], eax
test eax, eax
jne case.0x99574c.10076
mov dword [edi + 0x18c], fcn.009f5a88
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x4f30
jg 0x996c6d
je 0x996c59
add ecx, 0xffffb1d4
cmp ecx, 0xcf
ja case.0x996e77.40296
movzx eax, byte [ecx + 0x997624]
jmp dword [eax*4 + 0x9975e4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
mov dword [edi + 0x19c], eax
setne al
mov byte [edi + 0x884], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
test eax, eax
mov dword [edi + 0x1a0], eax
setne al
mov byte [edi + 0x884], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1a4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x190], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x198], eax
test eax, eax
jne 0x996b6e
mov byte [edi + 0x6b3], bl
mov eax, ebx
mov dword [edi + 0x198], fcn.009f57a0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6b3], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x17c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1a8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 8
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.244
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x410], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1ac], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1b4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1bc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x194], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x664], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x668], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x688], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x75c1
jg 0x996dd5
je 0x996dae
cmp ecx, 0x75a3
jg 0x996d2b
je 0x996cfa
add ecx, 0xffffb0c5
cmp ecx, 0x1d
ja case.0x996e77.40296
movzx eax, byte [ecx + 0x997708]
jmp dword [eax*4 + 0x9976f4]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x6a4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1d8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1e0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [edi + 0x1c4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0x996e23
jg 0x996d16
cmp ecx, 0xffffffff
jb 0x996e23
mov dword [edi + 0x214], eax
mov eax, ebx
mov dword [edi + 0x210], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
sub ecx, 0x75a4
je 0x996d7d
sub ecx, 1
je 0x996d4e
sub ecx, 3
jne case.0x996e77.40296
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
mov ecx, dword [eax + 4]
jmp 0x994802
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x996e23
jg 0x996d68
test ecx, ecx
jb 0x996e23
mov dword [edi + 0x4c8], ecx
mov dword [edi + 0x4cc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0x996e23
jg 0x996d99
cmp ecx, 0xffffffff
jb 0x996e23
mov dword [edi + 0x230], ecx
mov dword [edi + 0x234], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x996e23
jg 0x996dc0
test ecx, ecx
jb 0x996e23
mov dword [edi + 0x224], eax
mov eax, ebx
mov dword [edi + 0x220], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x9d63
jg 0x996e61
je 0x996e44
sub ecx, 0x75c2
je 0x996e11
sub ecx, 0x7c
jne case.0x996e77.40296
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [edi + 0x3c4], eax
mov eax, ebx
mov dword [edi + 0x3c0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jg 0x996e2f
jl 0x996e23
test ecx, ecx
jae 0x996e2f
pop edi
pop esi
mov eax, 0x2b
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x22c], eax
mov eax, ebx
mov dword [edi + 0x228], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x62c]
push eax
call fcn.00994480
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add ecx, 0xffff629c
cmp ecx, 0x12
ja case.0x996e77.40296
movzx eax, byte [ecx + 0x997748]
jmp dword [eax*4 + 0x997728]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x630]
push eax
call fcn.00994480
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x634]
push eax
call fcn.00994480
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x638]
push eax
call fcn.00994480
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x40
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x644]
push eax
call fcn.00994480
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x40
push edi
call fcn.009a1cb0
add esp, 8
test al, al
je case.0x9951a5.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x648]
push eax
call fcn.00994480
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x63c]
push eax
call fcn.00994480
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x640]
push eax
call fcn.00994480
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, 0x30
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret