Function at 0x985730
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 0x98631d
je 0x986307
lea eax, [ecx - 3]
cmp eax, 0xcc
ja case.0x988017.40296
movzx eax, byte [eax + 0x988268]
jmp dword [eax*4 + 0x988120]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x987fc3
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 0x987fc3
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 0x98585a
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.0x9868ec.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 0x9858ab
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 0x987fc3
cmp eax, 0x20c49b
jg 0x987fc3
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 0x987fc3
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 0x987fc3
cmp eax, 3
jge 0x987fc3
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 0x987fc3
cmp eax, 4
jge 0x987fc3
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 0x987fc3
jg 0x9859b9
cmp esi, 0xffffffff
jb 0x987fc3
cmp dword [edi + 0x184], ecx
jg 0x9859ef
jl 0x9859cb
cmp dword [edi + 0x180], esi
jae 0x9859ef
mov eax, dword [edi + 0x178]
lea edx, [edi + 0x628]
cmp eax, dword [edx]
jne 0x9859ef
push 0
push edx
call fcn.009856c0
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 0x987fc3
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 0x987fc3
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 0x9858ab
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.0x9868ec.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 0x985b1e
sub eax, 1
je 0x985b1e
sub eax, 1
je 0x985b1e
test ecx, ecx
js 0x987fc3
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 0x985b45
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 0x985b5d
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x985b7f
cmp ecx, 0x1f
jl 0x985b62
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 0x987fc3
cmp eax, 0xffff
jg 0x987fc3
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 0x985be5
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 0x985bfd
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x985c1f
cmp ecx, 0x1f
jl 0x985c02
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 0x987fc3
cmp eax, 7
jg 0x987fc3
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 0x985c76
sub eax, 1
jne 0x985db2
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 0x987fc3
cmp eax, 4
jge 0x987fc3
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 0x987fc3
cmp eax, 3
jge 0x987fc3
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 0x987fc3
cmp eax, 3
jge 0x987fc3
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 0x985db2
cmp eax, 2
jg 0x985db2
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 0x987fc3
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 0x987fc3
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 0x987fc3
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 0x987fc3
cmp eax, 0xffff
jg 0x987fc3
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 0x987fc3
cmp eax, 0x20c49b
jg 0x987fc3
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 0x987fc3
cmp eax, 0x20c49b
jg 0x987fc3
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 0x987fc3
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.009856c0
push edi
call fcn.00992dd0
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 0x987fc3
cmp eax, 0xffff
jg 0x987fc3
push eax
call fcn.0099a5a0
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 0x987fc3
cmp eax, 0xffff
jg 0x987fc3
push eax
call fcn.0099a5a0
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.0x9868ec.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.0x9868ec.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.00992e50
add esp, 8
test al, al
je case.0x986345.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 0x987fc3
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xa00000
jle 0x98602a
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 0x986043
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 0x987fc3
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 0x987fc3
cmp eax, 4
jge 0x987fc3
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 0x987fc3
cmp eax, 2
jg 0x987fc3
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 0x987fc3
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 0x987fc3
cmp eax, 0x1ff
jg 0x987fc3
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.0x9861d4
jmp dword [eax*4 + 0x988338]
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 0x9868c1
je 0x9868ad
lea eax, [ecx - 0xd4]
cmp eax, 0x6e
ja case.0x988017.40296
movzx eax, byte [eax + 0x988410]
jmp dword [eax*4 + 0x988364]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x987fc3
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 0x987fc3
cmp eax, 3
je 0x987fc3
cmp eax, 8
jae 0x987fc3
cmp edx, 0x7ffff
ja 0x987fc3
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 0x987fc3
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 0x987fc3
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.0x9868ec.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.0x9868ec.10076
pop edi
mov byte [ecx + 0x1c2], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.009925a0
test al, al
jne 0x98654c
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.0x9868ec.10076
pop edi
mov byte [ecx + 0x183], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.009925a0
test al, al
je case.0x986345.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.00992910
add esp, 4
test al, al
je case.0x986345.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 0x9865cb
mov eax, 0x200000
jmp 0x9865d5
mov ecx, 0x4000
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x4b4], eax
push dword [edi + 0x8c4]
call dword [0xa2f17c]
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 0x987fc3
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 0x987fc3
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 0x987fc3
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 0x987fc3
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 0x987fc3
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 0x986850
cmp dword [edi], ebx
jne case.0x9868ec.10076
call fcn.0099ba20
mov dword [edi], eax
test eax, eax
je 0x986bf0
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
push edi
call fcn.0099b9d0
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 0x98687f
call fcn.0099ab00
mov dword [edi + 0x6f8], eax
test eax, eax
je 0x986bf0
mov ecx, dword [ebp + 0x10]
push dword [ecx]
push eax
call fcn.0099aae0
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 0x9875fd
je 0x9875e9
add ecx, 0xffffd8ee
cmp ecx, 0xde
ja case.0x988017.40296
movzx eax, byte [ecx + 0x9885a4]
jmp dword [eax*4 + 0x988480]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x56c]
push eax
call fcn.009856c0
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.009856c0
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 0x986a2a
mov esi, dword [edi + 0x180]
mov eax, esi
mov edx, dword [edi + 0x184]
and eax, edx
cmp eax, 0xffffffff
je 0x986a2a
test edx, edx
ja 0x986a03
jb 0x986969
cmp esi, 0xffffffff
ja 0x986a03
lea esi, [edi + 0x628]
push 0
push esi
call fcn.009856c0
mov ecx, dword [edi + 0x180]
add esp, 8
mov edx, dword [edi + 0x184]
mov eax, ecx
or eax, edx
je 0x986991
mov dword [ebp - 4], edx
jmp 0x986999
mov ecx, 1
mov dword [ebp - 4], ebx
push ecx
call dword [0xa2f178]
mov ecx, eax
add esp, 4
mov dword [ebp - 4], ecx
test ecx, ecx
jne 0x9869c9
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 0x9869e9
push edx
push dword [ebp + 0xc]
push ecx
call fcn.009d6e90
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.009856c0
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.009856c0
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 0x986ac8
cmp byte [eax], bl
jne 0x986ac8
call fcn.0099c730
mov esi, eax
test esi, esi
jne 0x986aa6
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.009856c0
push esi
mov ebx, eax
call dword [0xa2f17c]
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.009856c0
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.0098f240
push dword [edi + 0xcd4]
call dword [0xa2f17c]
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 0x986b45
push dword [edi + 0xcc8]
call dword [0xa2f17c]
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.009856c0
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.009856c0
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.009856c0
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 0x986c0b
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x986bb4
sub ecx, esi
cmp ecx, 0x7a1200
ja 0x987fc3
push edx
push dword [edi + 0x1d0]
call fcn.00988b90
add esp, 8
test eax, eax
jne 0x986bfc
push dword [edi + 0x1d0]
call fcn.00988bd0
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.00988bd0
mov eax, dword [edi + 0x84]
add esp, 4
mov dword [edi + 0x1d0], ebx
test eax, eax
je 0x986c2e
cmp dword [eax + 0x78], ebx
jne 0x986c47
push dword [edi + 0x6f0]
call fcn.0098d1a0
push dword [edi + 0x6f0]
call fcn.0098d170
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.009856c0
mov ebx, eax
movzx eax, byte [edi + 0x6b6]
push eax
push dword [edi + 0x6f0]
push 0
push edi
call fcn.0098d440
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.0x9868ec.10076
push 0xa12550
push esi
call fcn.0099c5c0
add esp, 8
test eax, eax
je 0x986ce3
push 2
push 2
push edi
call fcn.0099c9d0
push dword [edi + 0x6f0]
call fcn.0098d1a0
push 2
push edi
call fcn.0099ca10
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.0099c5c0
add esp, 8
test eax, eax
je 0x986d1e
push 2
push 2
push edi
call fcn.0099c9d0
push dword [edi + 0x6f0]
call fcn.0098d1e0
push 2
push edi
call fcn.0099ca10
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.0099c5c0
add esp, 8
test eax, eax
je 0x986d44
push 0
push edi
call fcn.0098d6a0
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.0099c5c0
add esp, 8
test eax, eax
je 0x986d68
push edi
call fcn.0098d630
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f0], ebx
jne 0x986d85
push 1
push 0
push 0
push edi
call fcn.0098d440
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 0x986d90
sub ecx, edx
cmp ecx, 0x7a1200
ja 0x987fc3
push esi
call dword [0xa2f184]
mov esi, eax
add esp, 4
test esi, esi
je 0x986e19
cmp dword [edi + 0x6f0], ebx
je 0x986e19
push 2
push 2
push edi
call fcn.0099c9d0
push 0xb
push str.Set_Cookie:
push esi
call fcn.0099c5f0
add esp, 0x18
lea ecx, [esi + 0xb]
test eax, eax
jne 0x986de0
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.0098c310
push 2
push edi
call fcn.0099ca10
push esi
call dword [0xa2f17c]
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 [0xa2f17c]
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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 0x986fbe
push dword [edi + 0xcc4]
call dword [0xa2f17c]
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.009856c0
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.009889e0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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 0x986ff2
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5a0]
push eax
call fcn.009856c0
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.009856c0
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.009856c0
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.009856c0
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.0x9868ec.10076
push 2
call fcn.009e1bcc
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.0x9868ec.10076
cmp byte [esi], bl
je case.0x9868ec.10076
lea eax, [edi + 0x590]
push esi
push eax
call fcn.009856c0
mov ebx, eax
add esp, 8
test ebx, ebx
jne case.0x9868ec.10076
push esi
push edi
call fcn.00992dc0
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.009856c0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 8
push edi
call fcn.00992e50
add esp, 8
test al, al
je case.0x986345.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.009856c0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push edi
call fcn.00992e50
add esp, 8
test al, al
je case.0x986345.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x554]
push eax
call fcn.009856c0
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.009856c0
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.009856c0
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 0x9873e8
push 2
push 1
push edi
call fcn.0099c9d0
add esp, 0xc
mov ecx, esi
cmp dword [edi + 0x78], 2
jne 0x987387
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 0x98739c
mov dword [edi + 0x6f0], ebx
jmp 0x98739e
mov ecx, esi
mov eax, dword [edx + 0x7c]
mov dword [ebp + 0xc], esi
cmp eax, dword [edi + 0x6f4]
jne 0x9873b7
mov dword [edi + 0x6f4], ebx
mov esi, ecx
mov dword [ebp + 0xc], ecx
mov eax, dword [edx + 0x80]
cmp eax, dword [edi + 0x8e0]
jne 0x9873cb
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.0099ca10
mov edx, dword [ebp - 4]
add esp, 8
mov dword [esi], ebx
xor eax, eax
mov ecx, esi
test edx, edx
je 0x987403
cmp dword [edx], 0x7e117a1e
jne 0x987403
lea eax, [edi + 0x84]
mov dword [esi], edx
mov dword [ebp - 4], eax
jmp 0x98740e
mov dword [ebp - 4], ecx
test eax, eax
je case.0x9868ec.10076
push 2
push 1
push edi
call fcn.0099c9d0
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 0x987441
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 0x98745f
push dword [edi + 0x6f0]
call fcn.0098d170
mov ecx, dword [esi]
add esp, 4
mov eax, dword [ecx + 0x78]
mov dword [edi + 0x6f0], eax
cmp dword [ecx + 0x7c], ebx
je 0x98747f
lea esi, [edi + 0x6f4]
push esi
call fcn.0099b9d0
mov ecx, dword [ebp + 0xc]
add esp, 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x7c]
mov dword [esi], eax
jmp 0x987482
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx]
cmp dword [ecx + 0x80], ebx
je 0x9874a4
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.0099ca10
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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 0x987c4e
je 0x987c28
add ecx, 0xffffd80a
cmp ecx, 0x5d
ja case.0x988017.40296
movzx eax, byte [ecx + 0x988724]
jmp dword [eax*4 + 0x988684]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x570]
push eax
call fcn.009856c0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x20
push edi
call fcn.00992e50
add esp, 8
test al, al
je case.0x986345.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x574]
push eax
call fcn.009856c0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x20
push edi
call fcn.00992e50
add esp, 8
test al, al
je case.0x986345.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x578]
push eax
call fcn.009856c0
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.009856c0
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.009856c0
add esp, 8
mov ebx, eax
cmp dword [esi], 0
je case.0x9868ec.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.0098f710
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne case.0x9868ec.10076
push dword [edi + 0xcd4]
mov byte [edi + 0x3c9], 3
mov byte [edi + 0x6ce], al
call fcn.0098f240
push dword [edi + 0xcd4]
call dword [0xa2f17c]
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.00992e50
add esp, 8
test al, al
je case.0x986345.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x564]
push eax
call fcn.009856c0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 4
push edi
call fcn.00992e50
add esp, 8
test al, al
je case.0x986345.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x568]
push eax
call fcn.009856c0
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.009856c0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push edi
call fcn.00992e50
add esp, 8
test al, al
je case.0x986345.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x558]
push eax
call fcn.009856c0
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.009856c0
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.009856c0
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.009856c0
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.00988930
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x988116
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.00988930
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x988116
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.009856c0
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.009856c0
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.009856c0
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.009856c0
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.0x986345.239
cmp dword [eax], 0xc0dedbad
je case.0x986345.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.009856c0
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 0x987b19
call fcn.0099ba20
mov dword [esi], eax
test eax, eax
je 0x986bf0
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [ebp + 0xc], eax
test eax, eax
je 0x987b81
push eax
lea eax, [edi + 0x600]
push eax
call fcn.009856c0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x988116
push dword [ebp + 0xc]
push dword [edi + 0x1d4]
call fcn.00988b90
add esp, 8
test eax, eax
jne 0x987b72
push dword [edi + 0x1d4]
call fcn.00988bd0
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.00988bd0
mov dword [edi + 0x1d4], ebx
add esp, 4
mov eax, dword [edi + 0x84]
test eax, eax
je 0x987ba8
cmp dword [eax + 0x7c], ebx
jne case.0x9868ec.10076
push esi
call fcn.0099b9d0
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f8], ebx
jne 0x987bd5
call fcn.0099ab00
mov dword [edi + 0x6f8], eax
test eax, eax
je 0x986bf0
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
lea eax, [edi + 0x5fc]
push esi
push eax
call fcn.009856c0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x988116
test esi, esi
je case.0x9868ec.10076
push esi
push dword [edi + 0x6f8]
call fcn.0099ab30
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.0x9868ec.10076
mov dword [edi + 0x18c], fcn.009e6be8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x4f30
jg 0x987e0d
je 0x987df9
add ecx, 0xffffb1d4
cmp ecx, 0xcf
ja case.0x988017.40296
movzx eax, byte [ecx + 0x9887c4]
jmp dword [eax*4 + 0x988784]
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 0x987d0e
mov byte [edi + 0x6b3], bl
mov eax, ebx
mov dword [edi + 0x198], fcn.009e6900
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.00992e50
add esp, 8
test al, al
je case.0x986345.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 0x987f75
je 0x987f4e
cmp ecx, 0x75a3
jg 0x987ecb
je 0x987e9a
add ecx, 0xffffb0c5
cmp ecx, 0x1d
ja case.0x988017.40296
movzx eax, byte [ecx + 0x9888a8]
jmp dword [eax*4 + 0x988894]
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 0x987fc3
jg 0x987eb6
cmp ecx, 0xffffffff
jb 0x987fc3
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 0x987f1d
sub ecx, 1
je 0x987eee
sub ecx, 3
jne case.0x988017.40296
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
mov ecx, dword [eax + 4]
jmp 0x9859a2
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x987fc3
jg 0x987f08
test ecx, ecx
jb 0x987fc3
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 0x987fc3
jg 0x987f39
cmp ecx, 0xffffffff
jb 0x987fc3
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 0x987fc3
jg 0x987f60
test ecx, ecx
jb 0x987fc3
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 0x988001
je 0x987fe4
sub ecx, 0x75c2
je 0x987fb1
sub ecx, 0x7c
jne case.0x988017.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 0x987fcf
jl 0x987fc3
test ecx, ecx
jae 0x987fcf
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.00985620
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.0x988017.40296
movzx eax, byte [ecx + 0x9888e8]
jmp dword [eax*4 + 0x9888c8]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x630]
push eax
call fcn.00985620
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.00985620
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.00985620
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x40
push edi
call fcn.00992e50
add esp, 8
test al, al
je case.0x986345.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x644]
push eax
call fcn.00985620
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x40
push edi
call fcn.00992e50
add esp, 8
test al, al
je case.0x986345.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x648]
push eax
call fcn.00985620
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.00985620
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.00985620
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