Function at 0x451c50
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
push ebx
push esi
push edi
mov edi, ecx
xor ebx, ebx
mov dword [esp + 0x20], edi
cmp edx, 0xd2
jg 0x452888
je 0x45286c
lea eax, [edx - 3]
cmp eax, 0xcc
ja case.0x454487.40296
movzx eax, byte [eax + 0x454680]
jmp dword [eax*4 + 0x454534]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x45443a
mov dword [edi + 0x918], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0xaf0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb44], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb45], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb42], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb3d], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [edi + 0xbb4]
mov edx, dword [eax]
test edx, edx
setne al
mov byte [edi + 0xb37], al
mov eax, ecx
and eax, 0xffffffef
or ecx, 0x10
test edx, edx
cmove ecx, eax
mov eax, ebx
mov dword [edi + 0xbb4], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
test ecx, ecx
setne al
mov byte [edi + 0xb40], al
test ecx, ecx
je 0x451d80
mov dword [edi + 0x838], 6
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x838], 6
jne case.0x451c8b.91
mov dword [edi + 0x838], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb38], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
test ecx, ecx
setne al
mov byte [edi + 0xb41], al
test ecx, ecx
je 0x451de5
mov eax, 5
mov byte [edi + 0xb40], bl
mov dword [edi + 0x838], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 1
mov dword [edi + 0x838], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb2d], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0x20c49b
jg 0x45443a
imul eax, eax, 0x3e8
mov dword [edi + 0x648], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0x650], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 3
jge 0x45443a
mov dword [edi + 0x950], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb2f], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 4
jge 0x45443a
mov dword [edi + 0x82c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cdq
mov dword [edi + 0x830], eax
mov eax, ebx
mov dword [edi + 0x834], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cdq
mov esi, eax
mov eax, edx
mov dword [esp + 0x14], eax
cmp eax, 0xffffffff
jl 0x45443a
jg 0x451ef7
cmp esi, 0xffffffff
jb 0x45443a
cmp dword [edi + 0x5dc], eax
jg 0x451f31
jl 0x451f09
cmp dword [edi + 0x5d8], esi
jae 0x451f31
mov ecx, dword [edi + 0xaa0]
cmp dword [edi + 0x5cc], ecx
jne 0x451f31
push ecx
call dword [0x731670]
mov eax, dword [esp + 0x18]
add esp, 4
mov dword [edi + 0xaa0], ebx
mov dword [edi + 0x5cc], ebx
mov dword [edi + 0x5dc], eax
mov eax, ebx
mov dword [edi + 0x5d8], esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb3f], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb3b], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb3a], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb3c], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x45443a
mov dword [edi + 0x5c4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
and eax, 7
mov dword [edi + 0x5c8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
je 0x451de5
mov eax, 2
mov byte [edi + 0xb40], bl
mov dword [edi + 0x838], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb29], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
je case.0x451c8b.91
mov dword [edi + 0x838], 1
mov eax, ebx
mov word [edi + 0xb40], bx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 3
jl 0x45205d
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x83c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov edx, dword [eax]
test edx, edx
jne 0x452084
mov dword [edi + 0x5b4], 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 + 0xdf6], al
test dl, 0x10
je 0x45209c
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdb
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0x4520be
cmp ecx, 0x1f
jl 0x4520a1
mov eax, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x5b4], edx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb2e], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0xffff
jg 0x45443a
mov dword [edi + 0x59c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov edx, dword [eax]
test edx, edx
jne 0x452123
mov dword [edi + 0x5b8], 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 + 0xe06], al
test dl, 0x10
je 0x45213b
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdb
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0x45215d
cmp ecx, 0x1f
jl 0x452140
mov eax, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x5b8], edx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 7
jg 0x45443a
mov dword [edi + 0x914], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
sub eax, 0
je 0x4521b4
sub eax, 1
jne 0x4522d9
mov byte [edi + 0xb4c], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0xb4c], bl
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb31], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb30], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 4
jge 0x45443a
mov dword [edi + 0x938], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb34], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb33], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb35], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 3
jge 0x45443a
mov dword [edi + 0x940], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb36], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 3
jge 0x45443a
mov dword [edi + 0x93c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x4522d9
cmp eax, 2
jg 0x4522d9
mov dword [edi + 0x944], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, 0x2b
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x45443a
cdq
mov dword [edi + 0x658], eax
mov eax, ebx
mov dword [edi + 0x65c], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0x660], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0x664], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0xffff
jg 0x45443a
mov dword [edi + 0x5b0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0x20c49b
jg 0x45443a
imul eax, eax, 0x3e8
mov dword [edi + 0x638], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0x638], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0x20c49b
jg 0x45443a
imul eax, eax, 0x3e8
mov dword [edi + 0x63c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0x63c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0x45443a
cdq
mov dword [edi + 0x678], eax
mov eax, ebx
mov dword [edi + 0x67c], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [edi + 0xa10]
call dword [0x731670]
mov eax, dword [0x73167c]
add esp, 4
mov dword [edi + 0xa10], ebx
mov eax, dword [eax + 0x4c]
push edi
call eax
add esp, 4
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb2a], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0xffff
jg 0x45443a
mov word [edi + 0x5e0], ax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0xffff
jg 0x45443a
and eax, 0x7fffffff
mov dword [edi + 0x5e4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x870], al
mov ecx, dword [edi + 8]
test ecx, ecx
je case.0x451c8b.91
mov byte [ecx + 0x4dc], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
test byte [eax], 3
setne al
mov byte [edi + 0x871], al
mov ecx, dword [edi + 8]
test ecx, ecx
je case.0x451c8b.91
mov byte [ecx + 0x4dd], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
test byte [eax + 8], 2
je case.0x4528b0.244
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x8a0], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0xd34], ebx
jne 0x45443a
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0x80000
jle 0x45255a
mov eax, 0x80000
mov dword [edi + 0x91c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 1
jge 0x452573
mov eax, 0x4000
mov dword [edi + 0x91c], 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 + 0x91c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb46], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cdq
mov dword [edi + 0x930], eax
mov eax, ebx
mov dword [edi + 0x934], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 4
jge 0x45443a
mov dword [edi + 0x954], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 2
jg 0x45443a
mov dword [edi + 0x92c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb47], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb48], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb49], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x873], al
mov byte [edi + 0x8db], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
sete al
mov byte [edi + 0xb4a], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
sete al
mov byte [edi + 0xb4b], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0x1ff
jg 0x45443a
mov dword [edi + 0x958], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
cmp eax, 0x1ff
jg 0x45443a
mov dword [edi + 0x95c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xabc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xac0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xac4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
dec eax
cmp eax, 0xa
ja case.default.0x452739
jmp dword [eax*4 + 0x454750]
mov eax, 1
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 2
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 3
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 4
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 5
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 6
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 7
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 8
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 9
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0xa
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0xb
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
mov dword [edi + 0xacc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x1078], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x107c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb4e], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0xae4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x2711
jg 0x452d36
je 0x452d22
lea eax, [edx - 0xd4]
cmp eax, 0x4e
ja case.0x454487.40296
movzx eax, byte [eax + 0x454808]
jmp dword [eax*4 + 0x45477c]
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb39], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb27], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x20
mov ecx, 0x840
mov eax, 0x8a8
cmove eax, ecx
lea ecx, [eax + edi]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx edx, ax
and eax, 0xffff0000
cmp edx, 8
jae 0x45443a
cmp eax, 0x7ffff
ja 0x45443a
mov dword [ecx + 4], eax
mov eax, ebx
mov dword [ecx], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov al, byte [eax]
and al, 1
mov byte [edi + 0xb28], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0xaf4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 1
jg 0x45443a
test eax, eax
setne al
mov byte [edi + 0xb5d], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ebx, dword [eax]
mov dword [edi + 0x5bc], ebx
and ebx, 0xfffffffa
neg ebx
sbb ebx, ebx
and ebx, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0x640], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb58], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x8d8], al
mov ecx, dword [edi + 8]
test ecx, ecx
je case.0x451c8b.91
mov byte [ecx + 0x510], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
test byte [eax], 3
setne al
mov byte [edi + 0x8d9], al
mov ecx, dword [edi + 8]
test ecx, ecx
je case.0x451c8b.91
mov byte [ecx + 0x511], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
mov eax, dword [eax + 0x2c]
call eax
test al, al
jne 0x452a39
mov ebx, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x872], al
mov ecx, dword [edi + 8]
test ecx, ecx
je case.0x451c8b.91
mov byte [ecx + 0x4de], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
mov eax, dword [eax + 0x54]
call eax
test al, al
je case.0x4528b0.244
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x8a1], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0x200000
jle 0x452a99
mov eax, 0x200000
jmp 0x452aa3
mov ecx, 0x4000
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x920], eax
push dword [edi + 0xd38]
call dword [0x731670]
add esp, 4
mov dword [edi + 0xd38], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov al, cl
and al, 1
mov byte [edi + 0x8a2], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [edi + 0x8a3], al
mov eax, ecx
shr eax, 2
and al, 1
mov byte [edi + 0x8a4], al
mov eax, ecx
shr eax, 3
and al, 1
shr ecx, 4
mov byte [edi + 0x8a5], al
and cl, 1
mov byte [edi + 0x8a6], cl
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov al, cl
and al, 1
mov byte [edi + 0x90a], al
mov eax, ecx
shr eax, 1
and al, 1
mov byte [edi + 0x90b], al
mov eax, ecx
shr eax, 2
and al, 1
mov byte [edi + 0x90c], al
mov eax, ecx
shr eax, 4
and al, 1
shr ecx, 3
mov byte [edi + 0x90e], al
and cl, 1
mov byte [edi + 0x90d], cl
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb5e], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb4d], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb4f], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0xae8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0xaec], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb51], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb52], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb53], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb54], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb55], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0x644], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb56], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0xb5a], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0xb0c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
js 0x45443a
mov dword [edi + 0x64c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 0xb78]
test ecx, ecx
jne 0x452d07
push 1
push 0x18
call dword [0x731678]
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x453ef2
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0xc], ebx
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
mov dword [ecx + 0x14], 8
mov dword [edi + 0xb78], ecx
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
je 0x45443a
xor ebx, ebx
mov dword [ecx + 0x14], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5a0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x27f4
jg 0x453b71
je 0x453b5d
add edx, 0xffffd8ee
cmp edx, 0xde
ja case.0x454487.40296
movzx eax, byte [edx + 0x454980]
jmp dword [eax*4 + 0x454858]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9e4]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9f8]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9f4]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9b4]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov edx, dword [eax]
mov dword [esp + 0x14], edx
test edx, edx
je 0x452e70
mov esi, dword [edi + 0x5d8]
mov eax, esi
mov ecx, dword [edi + 0x5dc]
and eax, ecx
cmp eax, 0xffffffff
je 0x452e70
test ecx, ecx
ja 0x452e43
jb 0x452dfd
cmp esi, 0xffffffff
ja 0x452e43
push dword [edi + 0xaa0]
call dword [0x731670]
mov dword [edi + 0xaa0], ebx
add esp, 4
mov ecx, dword [edi + 0x5d8]
mov eax, ecx
mov edx, dword [edi + 0x5dc]
or eax, edx
je 0x452e2a
mov dword [esp + 0x24], edx
jmp 0x452e33
mov ecx, 1
mov dword [esp + 0x24], ebx
push ecx
call dword [0x73166c]
mov esi, eax
add esp, 4
test esi, esi
jne 0x452e4a
mov ebx, 0x1b
jmp 0x452e7d
mov ecx, dword [edi + 0x5d8]
mov eax, ecx
or eax, dword [edi + 0x5dc]
je 0x452e68
push ecx
push dword [esp + 0x18]
push esi
call fcn.00614e90
add esp, 0xc
mov dword [edi + 0xaa0], esi
jmp 0x452e7d
lea ecx, [edi + 0xaa0]
call fcn.00451a90
mov ebx, eax
mov eax, dword [edi + 0xaa0]
mov dword [edi + 0x5cc], eax
mov eax, ebx
mov dword [edi + 0x838], 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5cc], eax
push dword [edi + 0xaa0]
call dword [0x731670]
mov dword [edi + 0xaa0], ebx
add esp, 4
mov dword [edi + 0x838], 2
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov edx, dword [eax]
test edx, edx
je 0x452f17
cmp byte [edx], bl
jne 0x452f17
call fcn.00429030
mov esi, eax
test esi, esi
jne 0x452ef5
mov ebx, 0x1b
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [edi + 0x988]
mov edx, esi
call fcn.00451a90
push esi
mov ebx, eax
call dword [0x731670]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [edi + 0x988]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x688], eax
mov eax, ebx
mov dword [edi + 0x838], 3
mov byte [edi + 0xb40], bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0xb71], bl
je 0x452f72
push dword [edi + 0xb64]
call dword [0x731670]
add esp, 4
mov dword [edi + 0xb64], ebx
mov byte [edi + 0xb71], bl
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9c4]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
mov eax, dword [edi + 0x9c4]
mov dword [edi + 0xb64], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9fc]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x680], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x928], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x974]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov edx, dword [eax]
test edx, edx
je case.0x451c8b.91
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x453005
sub ecx, esi
cmp ecx, 0x7a1200
ja 0x45443a
mov ecx, dword [edi + 0xb68]
call fcn.00454d30
test eax, eax
jne 0x45306d
mov ebx, dword [edi + 0xb68]
test ebx, ebx
je 0x453057
push dword [ebx]
mov esi, dword [ebx + 4]
call dword [0x731670]
add esp, 4
mov dword [ebx], 0
push ebx
call dword [0x731670]
add esp, 4
mov ebx, esi
test esi, esi
jne 0x453033
mov dword [edi + 0xb68], 0
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0xb68], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x978]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
xor edx, edx
movzx eax, byte [edi + 0xb29]
mov ecx, edi
push eax
push dword [edi + 0xb74]
call fcn.0042a5d0
add esp, 8
mov dword [edi + 0xb74], eax
test eax, eax
mov ecx, 0x1b
cmove ebx, ecx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov esi, dword [eax]
test esi, esi
je case.0x451c8b.91
mov edx, 0x713edc
mov ecx, esi
call fcn.004599b0
test eax, eax
je 0x45313a
mov eax, dword [edi + 0x80]
test eax, eax
je 0x453101
test byte [eax], 4
je 0x453101
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x453101
push dword [eax + 0x10]
push 2
push 2
push edi
call ecx
add esp, 0x10
mov eax, dword [edi + 0xb74]
test eax, eax
je 0x453281
xor esi, esi
mov ebx, eax
mov ecx, dword [ebx + esi*4]
call fcn.0042ad40
mov dword [ebx + esi*4], 0
inc esi
cmp esi, 0x100
jb 0x453113
mov dword [ebx + 0x408], 0
jmp 0x45327f
mov edx, str.SESS
mov ecx, esi
call fcn.004599b0
test eax, eax
je 0x4532b7
mov eax, dword [edi + 0x80]
test eax, eax
je 0x453171
test byte [eax], 4
je 0x453171
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x453171
push dword [eax + 0x10]
push 2
push 2
push edi
call ecx
add esp, 0x10
mov eax, dword [edi + 0xb74]
mov dword [esp + 0x10], eax
test eax, eax
je 0x453281
mov edi, dword [esp + 0x10]
xor eax, eax
mov dword [esp + 0x14], eax
nop dword [eax]
mov edx, dword [edi + eax*4]
lea ecx, [edi + eax*4]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x10], edx
test edx, edx
je 0x45326b
mov esi, edx
mov ebx, edx
nop word [eax + eax]
mov eax, dword [esi + 0x18]
or eax, dword [esi + 0x1c]
mov ecx, dword [esi]
mov dword [esp + 0x18], ecx
jne 0x453251
cmp ebx, esi
mov eax, ecx
cmovne eax, ebx
mov ebx, eax
cmp edx, esi
jne 0x4531d5
mov dword [esp + 0x10], ecx
jmp 0x4531d7
mov dword [edx], ecx
push dword [esi + 0x20]
call dword [0x731670]
add esp, 4
push dword [esi + 0x14]
call dword [0x731670]
add esp, 4
push dword [esi + 0xc]
call dword [0x731670]
add esp, 4
push dword [esi + 0x10]
call dword [0x731670]
add esp, 4
push dword [esi + 4]
call dword [0x731670]
add esp, 4
push dword [esi + 8]
call dword [0x731670]
add esp, 4
push dword [esi + 0x2c]
call dword [0x731670]
add esp, 4
push dword [esi + 0x28]
call dword [0x731670]
add esp, 4
push esi
call dword [0x731670]
mov ecx, dword [esp + 0x1c]
add esp, 4
dec dword [edi + 0x408]
mov edx, dword [esp + 0x10]
jmp 0x453257
mov edx, esi
mov dword [esp + 0x10], edx
mov esi, ecx
test ecx, ecx
jne 0x4531b0
mov eax, dword [esp + 0x1c]
mov dword [eax], ebx
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, 0x100
jb 0x453190
mov edi, dword [esp + 0x20]
xor ebx, ebx
mov eax, dword [edi + 0x80]
test eax, eax
je case.0x451c8b.91
test byte [eax], 4
je case.0x451c8b.91
mov ecx, dword [eax + 0xc]
test ecx, ecx
je case.0x451c8b.91
push dword [eax + 0x10]
push 2
push edi
call ecx
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, str.FLUSH
mov ecx, esi
call fcn.004599b0
test eax, eax
je 0x4532d9
xor dl, dl
mov ecx, edi
call fcn.0042b2e0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, str.RELOAD
mov ecx, esi
call fcn.004599b0
test eax, eax
je 0x4532f9
mov ecx, edi
call fcn.00429520
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0xb74], ebx
jne 0x453317
push 1
push 0
xor edx, edx
mov ecx, edi
call fcn.0042a5d0
add esp, 8
mov dword [edi + 0xb74], eax
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x453320
sub ecx, edx
cmp ecx, 0x7a1200
ja 0x45443a
push esi
call dword [0x731674]
mov esi, eax
add esp, 4
test esi, esi
je 0x4533fe
mov eax, dword [edi + 0xb74]
test eax, eax
je 0x4533fe
mov ecx, dword [edi + 0x80]
mov dword [esp + 0x10], eax
test ecx, ecx
je 0x453390
test byte [ecx], 4
mov dword [esp + 0x10], eax
je 0x453390
mov edx, dword [ecx + 8]
mov dword [esp + 0x10], eax
test edx, edx
je 0x453390
push dword [ecx + 0x10]
push 2
push 2
push edi
call edx
mov eax, dword [edi + 0xb74]
add esp, 0x10
mov dword [esp + 0x10], eax
push 0xb
mov edx, esi
mov ecx, str.Set_Cookie:
call fcn.00459a40
add esp, 4
lea ecx, [esi + 0xb]
test eax, eax
jne 0x4533aa
mov ecx, esi
mov edx, dword [esp + 0x10]
test eax, eax
push 1
push 0
push 0
push ecx
setne al
mov ecx, edi
movzx eax, al
push 0
push eax
call fcn.00429700
mov eax, dword [edi + 0x80]
add esp, 0x18
test eax, eax
je 0x4533eb
test byte [eax], 4
je 0x4533eb
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x4533eb
push dword [eax + 0x10]
push 2
push edi
call ecx
add esp, 0xc
push esi
call dword [0x731670]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
mov ebx, 0x1b
call dword [0x731670]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x97c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9b8]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5a8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x598], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x994]
mov edx, dword [edx]
call fcn.00451a90
cmp dword [edi + 0x994], 0
mov ebx, eax
setne al
mov byte [edi + 0xb32], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x98c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x990]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9b0]
mov edx, dword [edx]
call fcn.00451a90
cmp dword [edi + 0x9b0], 0
mov ebx, eax
setne al
mov byte [edi + 0xb43], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5a4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0xb70], bl
je 0x45352f
push dword [edi + 0xb60]
call dword [0x731670]
add esp, 4
mov dword [edi + 0xb60], ebx
mov byte [edi + 0xb70], bl
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9c8]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
mov eax, dword [edi + 0x9c8]
mov dword [edi + 0xb60], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
lea eax, [edi + 0xa18]
push eax
lea edx, [edi + 0xa14]
mov ecx, dword [ecx]
call fcn.00451b90
add esp, 4
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa14]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa18]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa1c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa68]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x80c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x810], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x808], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x824], eax
mov dword [edi + 0xb6c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x630], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
lea eax, [edi + 0xa24]
push eax
lea edx, [edi + 0xa20]
mov ecx, dword [ecx]
call fcn.00451b90
add esp, 4
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa20]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa24]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa28]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9c0]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x594], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x590], eax
test eax, eax
jne case.0x451c8b.91
push 2
call fcn.00629180
mov dword [edi + 0x590], eax
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x620], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x634], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x964]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x96c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x998]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9a8]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9a0]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov esi, dword [eax]
test esi, esi
je case.0x451c8b.91
cmp byte [esi], bl
je case.0x451c8b.91
lea ecx, [edi + 0xa10]
mov edx, esi
call fcn.00451a90
mov ebx, eax
test ebx, ebx
jne case.0x451c8b.91
mov eax, dword [0x73167c]
push esi
push edi
mov eax, dword [eax + 0x48]
call eax
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x984]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
test byte [eax + 8], 8
je case.0x4528b0.244
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x888], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9d4]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
test byte [eax + 8], 1
je case.0x4528b0.244
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9cc]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa00]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa08]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x820], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov esi, dword [eax]
mov eax, dword [edi + 0x80]
test eax, eax
je 0x45394a
test byte [eax], 2
mov ecx, eax
je 0x4538ee
mov edx, dword [eax + 8]
test edx, edx
je 0x4538ee
push dword [eax + 0x10]
push 2
push 1
push edi
call edx
mov ecx, dword [edi + 0x80]
add esp, 0x10
cmp dword [edi + 0x74], 2
jne 0x4538fa
mov dword [edi + 0x70], ebx
mov dword [edi + 0x74], ebx
mov eax, dword [ecx + 0x68]
cmp eax, dword [edi + 0xb74]
jne 0x45390b
mov dword [edi + 0xb74], ebx
mov eax, dword [ecx + 0x6c]
cmp eax, dword [edi + 0xd50]
jne 0x45391c
mov dword [edi + 0xd50], ebx
mov ecx, dword [ecx + 4]
mov eax, dword [edi + 0x80]
dec ecx
mov dword [eax + 4], ecx
mov eax, dword [edi + 0x80]
test eax, eax
je 0x45394a
test byte [eax], 2
je 0x45394a
mov ecx, dword [eax + 0xc]
test ecx, ecx
je 0x45394a
push dword [eax + 0x10]
push 1
push edi
call ecx
add esp, 0xc
mov dword [edi + 0x80], esi
test esi, esi
je case.0x451c8b.91
test byte [esi], 2
mov eax, esi
je 0x453979
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x453979
push dword [esi + 0x10]
push 2
push 1
push edi
call ecx
mov eax, dword [edi + 0x80]
add esp, 0x10
mov ecx, dword [eax + 4]
mov eax, dword [edi + 0x80]
inc ecx
mov dword [eax + 4], ecx
mov ecx, dword [edi + 0x80]
test byte [ecx], 8
je 0x45399e
lea eax, [ecx + 0x50]
mov dword [edi + 0x70], eax
mov dword [edi + 0x74], 2
mov edx, ecx
cmp dword [ecx + 0x68], ebx
je 0x4539f6
mov eax, dword [edi + 0xb74]
mov dword [esp + 0x14], eax
test eax, eax
je 0x4539ed
push dword [eax + 0x400]
call dword [0x731670]
mov ebx, dword [esp + 0x18]
add esp, 4
xor esi, esi
mov ecx, dword [ebx + esi*4]
call fcn.0042ad40
inc esi
cmp esi, 0x100
jb 0x4539c8
push ebx
call dword [0x731670]
mov edx, dword [edi + 0x80]
add esp, 4
mov ecx, edx
xor ebx, ebx
mov eax, dword [ecx + 0x68]
mov dword [edi + 0xb74], eax
cmp dword [ecx + 0x6c], 0
je 0x453a10
mov eax, dword [ecx + 0x70]
mov ecx, edx
mov dword [edi + 0x910], eax
mov eax, dword [edx + 0x6c]
mov dword [edi + 0xd50], eax
test ecx, ecx
je case.0x451c8b.91
test byte [ecx], 2
je case.0x451c8b.91
mov eax, dword [ecx + 0xc]
test eax, eax
je case.0x451c8b.91
push dword [ecx + 0x10]
push 1
push edi
call eax
add esp, 0xc
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x924], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x60c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x614], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x61c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa50]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa54]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xac8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa2c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa30]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa34]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5ac], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x1144], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xae0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x684], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x4e2b
jg 0x4540bd
je 0x454085
add edx, 0xffffd80a
cmp edx, 0x44
ja case.0x454487.40296
movzx eax, byte [edx + 0x454ae0]
jmp dword [eax*4 + 0x454a60]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9e8]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
mov eax, dword [eax + 8]
shr eax, 5
test al, 1
je case.0x453b99.10240
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9ec]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
mov eax, dword [eax + 8]
shr eax, 5
test al, 1
je case.0x453b99.10240
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9f0]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa70]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x690]
push 0
mov edx, dword [edx]
call fcn.004457e0
mov ebx, eax
add esp, 4
test ebx, ebx
jne case.0x451c8b.91
mov dword [edi + 0x838], 4
mov byte [edi + 0xb40], al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9bc]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa48]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa4c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xb18], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x968]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x970]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x99c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9ac]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9a4]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
test byte [eax + 8], 4
je case.0x4528b0.244
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9dc]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
test byte [eax + 8], 4
je case.0x4528b0.244
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9e0]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9d8]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
test byte [eax + 8], 1
je case.0x4528b0.244
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x9d0]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa04]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa0c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa98]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xb08], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x980]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa80]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0xb59], bl
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa6c]
mov edx, dword [edx]
call fcn.00451a90
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0xb59], 1
jmp 0x453e64
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x828], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xa74]
mov edx, dword [edx]
call fcn.00451a90
cmp dword [edi + 0xa74], 0
mov ebx, eax
setne al
mov byte [edi + 0xb5b], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xb1c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0xb78], ebx
jne 0x453f1d
push 1
push 0x18
call dword [0x731678]
add esp, 8
test eax, eax
jne 0x453f04
mov dword [edi + 0xb78], ebx
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [eax + 0x10], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0x14], 8
mov dword [edi + 0xb78], eax
mov eax, dword [ebp + 8]
lea ecx, [edi + 0xa78]
mov esi, dword [eax]
mov edx, esi
call fcn.00451a90
mov ebx, eax
mov dword [esp + 0x1c], ebx
test ebx, ebx
jne case.0x451c8b.91
test esi, esi
je case.0x451c8b.91
mov edi, dword [edi + 0xb78]
mov dword [esp + 0x10], edi
push dword [edi]
call dword [0x731670]
add esp, 4
push esi
call dword [0x731674]
add esp, 4
mov dword [edi], eax
test eax, eax
je case.0x451c8b.91
mov ecx, esi
xor edi, edi
call fcn.0042c1e0
mov ecx, 0x714c40
mov dword [esp + 0x14], eax
call fcn.0042c1e0
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x20], eax
test ecx, ecx
je 0x453fa5
test eax, eax
je 0x453fa5
push eax
push ecx
call fcn.0063c0b0
mov ecx, dword [esp + 0x1c]
add esp, 8
mov edi, eax
push ecx
call fcn.00619ae0
add esp, 4
push dword [esp + 0x20]
call fcn.00619ae0
add esp, 4
test edi, edi
jne 0x453fd6
push 0x714c40
push esi
call fcn.0063c0d0
mov edi, eax
add esp, 8
test edi, edi
je case.0x451c8b.91
push 0xfff
call dword [0x73166c]
mov esi, eax
add esp, 4
test esi, esi
jne 0x454003
mov esi, dword [esp + 0x10]
push dword [esi]
call dword [0x731670]
add esp, 4
mov dword [esi], 0
push 0
jmp 0x45406a
push edi
mov edx, 0xfff
mov ecx, esi
call fcn.0042c170
add esp, 4
test eax, eax
je 0x454069
mov ebx, dword [esp + 0x10]
nop dword [eax + eax]
mov al, byte [esi]
mov edx, esi
test al, al
je 0x454046
mov cl, al
nop word [eax + eax]
cmp cl, 0x20
je 0x45403c
mov al, cl
cmp cl, 9
jne 0x454046
mov al, byte [edx + 1]
inc edx
mov cl, al
test al, al
jne 0x454030
cmp al, 0x23
je 0x454051
mov ecx, ebx
call fcn.004250a0
push edi
mov edx, 0xfff
mov ecx, esi
call fcn.0042c170
add esp, 4
test eax, eax
jne 0x454020
mov ebx, dword [esp + 0x1c]
push esi
call dword [0x731670]
add esp, 4
push edi
call fcn.006294d0
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5e8], eax
test eax, eax
jne 0x4540ad
mov byte [edi + 0xb25], bl
mov eax, ebx
mov dword [edi + 0x5e8], 0x629d40
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0xb25], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x4f30
jg 0x4542b4
je 0x4542a0
add edx, 0xffffb1d4
cmp edx, 0xcf
ja case.0x454487.40296
movzx eax, byte [edx + 0x454b74]
jmp dword [eax*4 + 0x454b28]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
mov dword [edi + 0x5f8], eax
setne al
mov byte [edi + 0xd04], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
mov dword [edi + 0x5fc], eax
setne al
mov byte [edi + 0xd04], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x600], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5ec], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5f4], eax
test eax, eax
jne 0x45417d
mov byte [edi + 0xb24], bl
mov eax, ebx
mov dword [edi + 0x5f4], 0x62bc10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0xb24], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5d0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x624], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x628], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x62c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x604], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x73167c]
test byte [eax + 8], 8
je case.0x4528b0.244
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x884], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x608], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x610], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x618], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0x5f0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xad4], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xad8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xadc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xb04], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x763e
jg 0x454478
je 0x45445b
cmp edx, 0x75a3
jg 0x454321
je 0x4542f0
cmp edx, 0x4f3b
jne case.0x454487.40296
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [edi + 0xb20], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0x45443a
jg 0x45430c
cmp ecx, 0xffffffff
jb 0x45443a
mov dword [edi + 0x65c], eax
mov eax, ebx
mov dword [edi + 0x658], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add edx, 0xffff8a5c
cmp edx, 0x1e
ja case.0x454487.40296
movzx eax, byte [edx + 0x454c5c]
jmp dword [eax*4 + 0x454c44]
mov eax, dword [ebp + 8]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x20], eax
cmp eax, 0xffffffff
jl 0x45443a
jg 0x45435e
cmp esi, 0xffffffff
jb 0x45443a
cmp dword [edi + 0x5dc], eax
jg 0x454398
jl 0x454370
cmp dword [edi + 0x5d8], esi
jae 0x454398
mov ecx, dword [edi + 0xaa0]
cmp dword [edi + 0x5cc], ecx
jne 0x454398
push ecx
call dword [0x731670]
mov eax, dword [esp + 0x24]
add esp, 4
mov dword [edi + 0xaa0], ebx
mov dword [edi + 0x5cc], ebx
mov dword [edi + 0x5dc], eax
mov eax, ebx
mov dword [edi + 0x5d8], esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x45443a
jg 0x4543c3
test ecx, ecx
jb 0x45443a
mov dword [edi + 0x66c], eax
mov eax, ebx
mov dword [edi + 0x668], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0x45443a
jg 0x4543ea
test ecx, ecx
jb 0x45443a
mov dword [edi + 0x674], eax
mov eax, ebx
mov dword [edi + 0x670], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0x45443a
jg 0x454413
cmp ecx, 0xffffffff
jb 0x45443a
mov dword [edi + 0x67c], eax
mov eax, ebx
mov dword [edi + 0x678], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jg 0x454446
jl 0x45443a
test ecx, ecx
jae 0x454446
mov eax, 0x2b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x930], ecx
mov dword [edi + 0x934], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [edi + 0x834], eax
mov eax, ebx
mov dword [edi + 0x830], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add edx, 0xffff629d
cmp edx, 6
ja case.0x454487.40296
jmp dword [edx*4 + 0x454c7c]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xaa4]
mov edx, dword [edx]
call fcn.00451b00
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xaa8]
mov edx, dword [edx]
call fcn.00451b00
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xaac]
mov edx, dword [edx]
call fcn.00451b00
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xab0]
mov edx, dword [edx]
call fcn.00451b00
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xab4]
mov edx, dword [edx]
call fcn.00451b00
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0xab8]
mov edx, dword [edx]
call fcn.00451b00
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, 0x30
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret