Function at 0x995e00
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 0x9969ed
je 0x9969d7
lea eax, [ecx - 3]
cmp eax, 0xcc
ja case.0x9986e7.40296
movzx eax, byte [eax + 0x998938]
jmp dword [eax*4 + 0x9987f0]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x998693
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 0x998693
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 0x995f2a
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.0x996fbc.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 0x995f7b
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 0x998693
cmp eax, 0x20c49b
jg 0x998693
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 0x998693
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 0x998693
cmp eax, 3
jge 0x998693
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 0x998693
cmp eax, 4
jge 0x998693
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 0x998693
jg 0x996089
cmp esi, 0xffffffff
jb 0x998693
cmp dword [edi + 0x184], ecx
jg 0x9960bf
jl 0x99609b
cmp dword [edi + 0x180], esi
jae 0x9960bf
mov eax, dword [edi + 0x178]
lea edx, [edi + 0x628]
cmp eax, dword [edx]
jne 0x9960bf
push 0
push edx
call fcn.00995d90
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 0x998693
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 0x998693
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 0x995f7b
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.0x996fbc.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 0x9961ee
sub eax, 1
je 0x9961ee
sub eax, 1
je 0x9961ee
test ecx, ecx
js 0x998693
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 0x996215
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 0x99622d
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x99624f
cmp ecx, 0x1f
jl 0x996232
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 0x998693
cmp eax, 0xffff
jg 0x998693
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 0x9962b5
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 0x9962cd
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x9962ef
cmp ecx, 0x1f
jl 0x9962d2
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 0x998693
cmp eax, 7
jg 0x998693
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 0x996346
sub eax, 1
jne 0x996482
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 0x998693
cmp eax, 4
jge 0x998693
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 0x998693
cmp eax, 3
jge 0x998693
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 0x998693
cmp eax, 3
jge 0x998693
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 0x996482
cmp eax, 2
jg 0x996482
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 0x998693
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 0x998693
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 0x998693
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 0x998693
cmp eax, 0xffff
jg 0x998693
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 0x998693
cmp eax, 0x20c49b
jg 0x998693
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 0x998693
cmp eax, 0x20c49b
jg 0x998693
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 0x998693
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.00995d90
push edi
call fcn.009a34a0
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 0x998693
cmp eax, 0xffff
jg 0x998693
push eax
call fcn.009aac60
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 0x998693
cmp eax, 0xffff
jg 0x998693
push eax
call fcn.009aac60
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.0x996fbc.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.0x996fbc.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.009a3520
add esp, 8
test al, al
je case.0x996a15.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 0x998693
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xa00000
jle 0x9966fa
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 0x996713
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 0x998693
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 0x998693
cmp eax, 4
jge 0x998693
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 0x998693
cmp eax, 2
jg 0x998693
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 0x998693
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 0x998693
cmp eax, 0x1ff
jg 0x998693
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.0x9968a4
jmp dword [eax*4 + 0x998a08]
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 0x996f91
je 0x996f7d
lea eax, [ecx - 0xd4]
cmp eax, 0x6e
ja case.0x9986e7.40296
movzx eax, byte [eax + 0x998ae0]
jmp dword [eax*4 + 0x998a34]
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x998693
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 0x998693
cmp eax, 3
je 0x998693
cmp eax, 8
jae 0x998693
cmp edx, 0x7ffff
ja 0x998693
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 0x998693
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 0x998693
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.0x996fbc.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.0x996fbc.10076
pop edi
mov byte [ecx + 0x1c2], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.009a2c70
test al, al
jne 0x996c1c
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.0x996fbc.10076
pop edi
mov byte [ecx + 0x183], al
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.009a2c70
test al, al
je case.0x996a15.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.009a2fe0
add esp, 4
test al, al
je case.0x996a15.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 0x996c9b
mov eax, 0x200000
jmp 0x996ca5
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 0x998693
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 0x998693
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 0x998693
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 0x998693
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 0x998693
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 0x996f20
cmp dword [edi], ebx
jne case.0x996fbc.10076
call fcn.009ac0e0
mov dword [edi], eax
test eax, eax
je 0x9972c0
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
push edi
call fcn.009ac090
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 0x996f4f
call fcn.009ab1c0
mov dword [edi + 0x6f8], eax
test eax, eax
je 0x9972c0
mov ecx, dword [ebp + 0x10]
push dword [ecx]
push eax
call fcn.009ab1a0
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 0x997ccd
je 0x997cb9
add ecx, 0xffffd8ee
cmp ecx, 0xde
ja case.0x9986e7.40296
movzx eax, byte [ecx + 0x998c74]
jmp dword [eax*4 + 0x998b50]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x56c]
push eax
call fcn.00995d90
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.00995d90
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 0x9970fa
mov esi, dword [edi + 0x180]
mov eax, esi
mov edx, dword [edi + 0x184]
and eax, edx
cmp eax, 0xffffffff
je 0x9970fa
test edx, edx
ja 0x9970d3
jb 0x997039
cmp esi, 0xffffffff
ja 0x9970d3
lea esi, [edi + 0x628]
push 0
push esi
call fcn.00995d90
mov ecx, dword [edi + 0x180]
add esp, 8
mov edx, dword [edi + 0x184]
mov eax, ecx
or eax, edx
je 0x997061
mov dword [ebp - 4], edx
jmp 0x997069
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 0x997099
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 0x9970b9
push edx
push dword [ebp + 0xc]
push ecx
call fcn.009e7560
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.00995d90
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.00995d90
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 0x997198
cmp byte [eax], bl
jne 0x997198
call fcn.009acdf0
mov esi, eax
test esi, esi
jne 0x997176
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.00995d90
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.00995d90
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.0099f910
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 0x997215
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.00995d90
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.00995d90
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.00995d90
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 0x9972db
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x997284
sub ecx, esi
cmp ecx, 0x7a1200
ja 0x998693
push edx
push dword [edi + 0x1d0]
call fcn.00999260
add esp, 8
test eax, eax
jne 0x9972cc
push dword [edi + 0x1d0]
call fcn.009992a0
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.009992a0
mov eax, dword [edi + 0x84]
add esp, 4
mov dword [edi + 0x1d0], ebx
test eax, eax
je 0x9972fe
cmp dword [eax + 0x78], ebx
jne 0x997317
push dword [edi + 0x6f0]
call fcn.0099d870
push dword [edi + 0x6f0]
call fcn.0099d840
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.00995d90
mov ebx, eax
movzx eax, byte [edi + 0x6b6]
push eax
push dword [edi + 0x6f0]
push 0
push edi
call fcn.0099db10
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.0x996fbc.10076
push 0xa224b0
push esi
call fcn.009acc80
add esp, 8
test eax, eax
je 0x9973b3
push 2
push 2
push edi
call fcn.009ad090
push dword [edi + 0x6f0]
call fcn.0099d870
push 2
push edi
call fcn.009ad0d0
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.009acc80
add esp, 8
test eax, eax
je 0x9973ee
push 2
push 2
push edi
call fcn.009ad090
push dword [edi + 0x6f0]
call fcn.0099d8b0
push 2
push edi
call fcn.009ad0d0
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.009acc80
add esp, 8
test eax, eax
je 0x997414
push 0
push edi
call fcn.0099dd70
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.009acc80
add esp, 8
test eax, eax
je 0x997438
push edi
call fcn.0099dd00
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f0], ebx
jne 0x997455
push 1
push 0
push 0
push edi
call fcn.0099db10
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 0x997460
sub ecx, edx
cmp ecx, 0x7a1200
ja 0x998693
push esi
call dword [0xa3f184]
mov esi, eax
add esp, 4
test esi, esi
je 0x9974e9
cmp dword [edi + 0x6f0], ebx
je 0x9974e9
push 2
push 2
push edi
call fcn.009ad090
push 0xb
push str.Set_Cookie:
push esi
call fcn.009accb0
add esp, 0x18
lea ecx, [esi + 0xb]
test eax, eax
jne 0x9974b0
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.0099c9e0
push 2
push edi
call fcn.009ad0d0
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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 0x99768e
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.00995d90
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.009990b0
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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 0x9976c2
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x5a0]
push eax
call fcn.00995d90
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.00995d90
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.00995d90
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.00995d90
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.0x996fbc.10076
push 2
call fcn.009f229c
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.0x996fbc.10076
cmp byte [esi], bl
je case.0x996fbc.10076
lea eax, [edi + 0x590]
push esi
push eax
call fcn.00995d90
mov ebx, eax
add esp, 8
test ebx, ebx
jne case.0x996fbc.10076
push esi
push edi
call fcn.009a3490
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.00995d90
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 8
push edi
call fcn.009a3520
add esp, 8
test al, al
je case.0x996a15.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.00995d90
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push edi
call fcn.009a3520
add esp, 8
test al, al
je case.0x996a15.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x554]
push eax
call fcn.00995d90
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.00995d90
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.00995d90
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 0x997ab8
push 2
push 1
push edi
call fcn.009ad090
add esp, 0xc
mov ecx, esi
cmp dword [edi + 0x78], 2
jne 0x997a57
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 0x997a6c
mov dword [edi + 0x6f0], ebx
jmp 0x997a6e
mov ecx, esi
mov eax, dword [edx + 0x7c]
mov dword [ebp + 0xc], esi
cmp eax, dword [edi + 0x6f4]
jne 0x997a87
mov dword [edi + 0x6f4], ebx
mov esi, ecx
mov dword [ebp + 0xc], ecx
mov eax, dword [edx + 0x80]
cmp eax, dword [edi + 0x8e0]
jne 0x997a9b
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.009ad0d0
mov edx, dword [ebp - 4]
add esp, 8
mov dword [esi], ebx
xor eax, eax
mov ecx, esi
test edx, edx
je 0x997ad3
cmp dword [edx], 0x7e117a1e
jne 0x997ad3
lea eax, [edi + 0x84]
mov dword [esi], edx
mov dword [ebp - 4], eax
jmp 0x997ade
mov dword [ebp - 4], ecx
test eax, eax
je case.0x996fbc.10076
push 2
push 1
push edi
call fcn.009ad090
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 0x997b11
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 0x997b2f
push dword [edi + 0x6f0]
call fcn.0099d840
mov ecx, dword [esi]
add esp, 4
mov eax, dword [ecx + 0x78]
mov dword [edi + 0x6f0], eax
cmp dword [ecx + 0x7c], ebx
je 0x997b4f
lea esi, [edi + 0x6f4]
push esi
call fcn.009ac090
mov ecx, dword [ebp + 0xc]
add esp, 4
mov eax, dword [ecx]
mov eax, dword [eax + 0x7c]
mov dword [esi], eax
jmp 0x997b52
mov ecx, dword [ebp + 0xc]
mov ecx, dword [ecx]
cmp dword [ecx + 0x80], ebx
je 0x997b74
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.009ad0d0
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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 0x99831e
je 0x9982f8
add ecx, 0xffffd80a
cmp ecx, 0x5d
ja case.0x9986e7.40296
movzx eax, byte [ecx + 0x998df4]
jmp dword [eax*4 + 0x998d54]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x570]
push eax
call fcn.00995d90
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x20
push edi
call fcn.009a3520
add esp, 8
test al, al
je case.0x996a15.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x574]
push eax
call fcn.00995d90
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x20
push edi
call fcn.009a3520
add esp, 8
test al, al
je case.0x996a15.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x578]
push eax
call fcn.00995d90
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.00995d90
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.00995d90
add esp, 8
mov ebx, eax
cmp dword [esi], 0
je case.0x996fbc.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.0099fde0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne case.0x996fbc.10076
push dword [edi + 0xcd4]
mov byte [edi + 0x3c9], 3
mov byte [edi + 0x6ce], al
call fcn.0099f910
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.009a3520
add esp, 8
test al, al
je case.0x996a15.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x564]
push eax
call fcn.00995d90
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 4
push edi
call fcn.009a3520
add esp, 8
test al, al
je case.0x996a15.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x568]
push eax
call fcn.00995d90
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.00995d90
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
push edi
call fcn.009a3520
add esp, 8
test al, al
je case.0x996a15.244
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x558]
push eax
call fcn.00995d90
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.00995d90
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.00995d90
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.00995d90
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.00999000
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x9987e6
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.00999000
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x9987e6
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.00995d90
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.00995d90
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.00995d90
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.00995d90
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.0x996a15.239
cmp dword [eax], 0xc0dedbad
je case.0x996a15.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.00995d90
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 0x9981e9
call fcn.009ac0e0
mov dword [esi], eax
test eax, eax
je 0x9972c0
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [ebp + 0xc], eax
test eax, eax
je 0x998251
push eax
lea eax, [edi + 0x600]
push eax
call fcn.00995d90
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x9987e6
push dword [ebp + 0xc]
push dword [edi + 0x1d4]
call fcn.00999260
add esp, 8
test eax, eax
jne 0x998242
push dword [edi + 0x1d4]
call fcn.009992a0
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.009992a0
mov dword [edi + 0x1d4], ebx
add esp, 4
mov eax, dword [edi + 0x84]
test eax, eax
je 0x998278
cmp dword [eax + 0x7c], ebx
jne case.0x996fbc.10076
push esi
call fcn.009ac090
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f8], ebx
jne 0x9982a5
call fcn.009ab1c0
mov dword [edi + 0x6f8], eax
test eax, eax
je 0x9972c0
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
lea eax, [edi + 0x5fc]
push esi
push eax
call fcn.00995d90
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x9987e6
test esi, esi
je case.0x996fbc.10076
push esi
push dword [edi + 0x6f8]
call fcn.009ab1f0
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.0x996fbc.10076
mov dword [edi + 0x18c], fcn.009f72b8
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ecx, 0x4f30
jg 0x9984dd
je 0x9984c9
add ecx, 0xffffb1d4
cmp ecx, 0xcf
ja case.0x9986e7.40296
movzx eax, byte [ecx + 0x998e94]
jmp dword [eax*4 + 0x998e54]
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 0x9983de
mov byte [edi + 0x6b3], bl
mov eax, ebx
mov dword [edi + 0x198], fcn.009f6fd0
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.009a3520
add esp, 8
test al, al
je case.0x996a15.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 0x998645
je 0x99861e
cmp ecx, 0x75a3
jg 0x99859b
je 0x99856a
add ecx, 0xffffb0c5
cmp ecx, 0x1d
ja case.0x9986e7.40296
movzx eax, byte [ecx + 0x998f78]
jmp dword [eax*4 + 0x998f64]
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 0x998693
jg 0x998586
cmp ecx, 0xffffffff
jb 0x998693
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 0x9985ed
sub ecx, 1
je 0x9985be
sub ecx, 3
jne case.0x9986e7.40296
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
mov ecx, dword [eax + 4]
jmp 0x996072
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x998693
jg 0x9985d8
test ecx, ecx
jb 0x998693
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 0x998693
jg 0x998609
cmp ecx, 0xffffffff
jb 0x998693
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 0x998693
jg 0x998630
test ecx, ecx
jb 0x998693
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 0x9986d1
je 0x9986b4
sub ecx, 0x75c2
je 0x998681
sub ecx, 0x7c
jne case.0x9986e7.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 0x99869f
jl 0x998693
test ecx, ecx
jae 0x99869f
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.00995cf0
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.0x9986e7.40296
movzx eax, byte [ecx + 0x998fb8]
jmp dword [eax*4 + 0x998f98]
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x630]
push eax
call fcn.00995cf0
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.00995cf0
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.00995cf0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x40
push edi
call fcn.009a3520
add esp, 8
test al, al
je case.0x996a15.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x644]
push eax
call fcn.00995cf0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x40
push edi
call fcn.009a3520
add esp, 8
test al, al
je case.0x996a15.239
mov eax, dword [ebp + 0x10]
push dword [eax]
lea eax, [edi + 0x648]
push eax
call fcn.00995cf0
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.00995cf0
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.00995cf0
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