Function at 0xa520f0
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc
push ebx
push esi
xor ebx, ebx
push edi
mov edi, ecx
cmp edx, 0xd2
jg 0xa52d15
je 0xa52cff
lea eax, [edx - 3]
cmp eax, 0xcc
ja case.0xa547ed.40296
movzx eax, byte [eax + 0xa54a24]
jmp dword [eax*4 + 0xa548d8]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0xa5479d
mov dword [edi + 0x4ac], 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 0xa5479d
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]
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 + 8]
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 + 8]
cmp dword [eax], ebx
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 + 8]
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 + 8]
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 + 8]
mov ecx, dword [eax]
test ecx, ecx
setne al
mov byte [edi + 0x6ce], al
test ecx, ecx
je 0xa52219
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.0xa532d5.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 + 8]
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 + 8]
mov ecx, dword [eax]
test ecx, ecx
setne al
mov byte [edi + 0x6cf], al
test ecx, ecx
je 0xa52277
mov al, 4
mov byte [edi + 0x6ce], bl
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 + 8]
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 + 8]
mov eax, dword [eax]
test eax, eax
js 0xa5479d
cmp eax, 0x20c49b
jg 0xa5479d
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 + 8]
mov eax, dword [eax]
test eax, eax
js 0xa5479d
mov dword [edi + 0x208], 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 0xa5479d
cmp eax, 3
jge 0xa5479d
mov byte [edi + 0x4e5], 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 + 0x6bc], 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 0xa5479d
cmp eax, 4
jge 0xa5479d
mov byte [edi + 0x3c8], 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]
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 + 8]
mov eax, dword [eax]
cdq
mov esi, eax
mov ecx, edx
mov dword [esp + 0xc], ecx
cmp ecx, 0xffffffff
jl 0xa5479d
jg 0xa52386
cmp esi, 0xffffffff
jb 0xa5479d
cmp dword [edi + 0x184], ecx
jg 0xa523bd
jl 0xa52398
cmp dword [edi + 0x180], esi
jae 0xa523bd
mov eax, dword [edi + 0x178]
cmp eax, dword [edi + 0x620]
jne 0xa523bd
xor edx, edx
lea ecx, [edi + 0x620]
call fcn.00a51eb0
mov ecx, dword [esp + 0xc]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0xa5479d
mov dword [edi + 0x174], 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 0xa5479d
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 + 8]
cmp dword [eax], ebx
je 0xa5248d
mov al, 1
mov byte [edi + 0x6ce], bl
mov byte [edi + 0x3c9], al
mov eax, ebx
mov byte [edi + 0x6cf], bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor al, al
mov byte [edi + 0x3c9], al
mov eax, ebx
mov byte [edi + 0x6cf], bl
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 + 0x6b6], 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.0xa532d5.10076
mov byte [edi + 0x3c9], bl
mov eax, ebx
mov word [edi + 0x6ce], bx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, ecx
sub eax, 0
je 0xa52506
sub eax, 1
je 0xa52506
sub eax, 1
je 0xa52506
test ecx, ecx
js 0xa5479d
mov eax, 1
pop edi
pop esi
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 + 8]
mov edx, dword [eax]
test edx, edx
jne 0xa5252d
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 + 0x96a], al
test dl, 0x10
je 0xa52545
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
nop word [eax + eax]
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0xa5256d
cmp ecx, 0x1f
jl 0xa52550
mov eax, 4
pop edi
pop esi
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 + 8]
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 + 8]
mov eax, dword [eax]
test eax, eax
js 0xa5479d
cmp eax, 0xffff
jg 0xa5479d
mov word [edi + 0x4a0], ax
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 0xa525d3
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 + 0x97a], al
test dl, 0x10
je 0xa525eb
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0xa5260d
cmp ecx, 0x1f
jl 0xa525f0
mov eax, 4
pop edi
pop esi
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 + 8]
mov eax, dword [eax]
test eax, eax
js 0xa5479d
cmp eax, 7
jg 0xa5479d
mov byte [edi + 0x4a2], 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]
sub eax, 0
je 0xa52664
sub eax, 1
jne 0xa527a0
mov byte [edi + 0x6d9], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6d9], 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 + 0x6da], 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 + 0x6be], 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 + 0x6bd], 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 0xa5479d
cmp eax, 4
jge 0xa5479d
mov byte [edi + 0x4d0], 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 + 0x6c1], 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 + 0x6c0], 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 + 0x6c2], 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 0xa5479d
cmp eax, 3
jge 0xa5479d
mov byte [edi + 0x4d2], 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 + 0x6c3], 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 0xa5479d
cmp eax, 3
jge 0xa5479d
mov byte [edi + 0x4d1], 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 0xa527a0
cmp eax, 2
jg 0xa527a0
mov byte [edi + 0x4e4], al
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 0xa5479d
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 + 8]
mov eax, dword [eax]
test eax, eax
js 0xa5479d
mov dword [edi + 0x218], 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 0xa5479d
mov dword [edi + 0x21c], 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 0xa5479d
cmp eax, 0xffff
jg 0xa5479d
mov word [edi + 0x168], 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 0xa5479d
cmp eax, 0x20c49b
jg 0xa5479d
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 + 8]
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 + 8]
mov eax, dword [eax]
test eax, eax
js 0xa5479d
cmp eax, 0x20c49b
jg 0xa5479d
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 + 8]
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 + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0xa5479d
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 ecx, [edi + 0x590]
xor edx, edx
call fcn.00a51eb0
mov ecx, edi
call fcn.00a57d20
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 + 0x6b7], 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
js 0xa5479d
cmp ecx, 0xffff
jg 0xa5479d
call fcn.00a5c5e0
mov word [edi + 0x188], ax
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
js 0xa5479d
cmp ecx, 0xffff
jg 0xa5479d
call fcn.00a5c5e0
mov word [edi + 0x18a], ax
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 + 0x405], al
mov ecx, dword [edi + 0xc]
test ecx, ecx
je case.0xa532d5.10076
mov byte [ecx + 0x179], 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 + 0x406], al
mov ecx, dword [edi + 0xc]
test ecx, ecx
je case.0xa532d5.10076
mov byte [ecx + 0x17a], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 2
call fcn.00a58e00
test al, al
je case.0xa52d3d.244
mov eax, dword [ebp + 8]
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 + 0x8b4], ebx
jne 0xa5479d
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xa00000
jle 0xa52a0e
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 0xa52a27
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 + 8]
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 + 8]
mov eax, dword [eax]
test eax, eax
js 0xa5479d
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 + 8]
mov eax, dword [eax]
test eax, eax
js 0xa5479d
cmp eax, 4
jge 0xa5479d
mov byte [edi + 0x6b1], 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 0xa5479d
cmp eax, 2
jg 0xa5479d
mov byte [edi + 0x4c0], 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 + 0x6d5], 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 + 0x6d6], 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, 2
jg 0xa5479d
mov byte [edi + 0x6b2], 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 + 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 + 8]
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 + 8]
cmp dword [eax], ebx
sete al
mov byte [edi + 0x6d8], 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 0xa5479d
cmp eax, 0x1ff
jg 0xa5479d
mov dword [edi + 0x4e8], 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 + 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]
mov dword [edi + 0x64c], 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 + 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]
dec eax
cmp eax, 0xa
ja case.default.0xa52bcc
jmp dword [eax*4 + 0xa54af4]
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 + 8]
mov eax, dword [eax]
mov dword [edi + 0xc50], 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 + 0xc54], 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 + 0x6c4], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
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 edx, 0x2711
jg 0xa532aa
je 0xa53296
lea eax, [edx - 0xd4]
cmp eax, 0x6e
ja case.0xa547ed.40296
movzx eax, byte [eax + 0xa54bcc]
jmp dword [eax*4 + 0xa54b20]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0xa5479d
mov dword [edi + 0x4a8], 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 + 0x6c7], 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 + 0x6b4], 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]
movzx eax, cx
and ecx, 0xffff0000
mov dword [esp + 0xc], eax
cmp eax, 2
je 0xa5479d
cmp eax, 3
je 0xa5479d
cmp eax, 8
jae 0xa5479d
cmp ecx, 0x7ffff
ja 0xa5479d
mov ebx, dword [esp + 0xc]
cmp edx, 0x20
mov esi, 0x404
mov eax, 0x46c
cmove eax, esi
mov esi, 0x400
mov byte [eax + edi], bl
mov eax, 0x468
cmove eax, esi
xor ebx, ebx
mov dword [eax + edi], ecx
mov eax, ebx
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 + 0x6b5], 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 0xa5479d
mov dword [edi + 0x684], 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 0xa5479d
test eax, eax
setne al
mov byte [edi + 0x6ea], 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 + 0x654], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov al, byte [eax]
mov byte [edi + 0x4a3], al
and al, 0xfa
movzx ebx, al
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]
mov dword [edi + 0x4d4], 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 + 0x6e3], 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 + 0x6e7], 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 + 0x46d], al
mov ecx, dword [edi + 0xc]
test ecx, ecx
je case.0xa532d5.10076
mov byte [ecx + 0x1b9], 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 + 0x6e8], 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 + 0x46e], al
mov ecx, dword [edi + 0xc]
test ecx, ecx
je case.0xa532d5.10076
mov byte [ecx + 0x1ba], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00a58430
test al, al
jne 0xa52f44
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 + 0x407], al
mov ecx, dword [edi + 0xc]
test ecx, ecx
je case.0xa532d5.10076
mov byte [ecx + 0x17b], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00a58430
test al, al
je case.0xa52d3d.244
mov eax, dword [ebp + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6e9], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00a58440
test al, al
je case.0xa52d3d.244
mov eax, dword [ebp + 8]
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 + 8]
mov eax, dword [eax]
cmp eax, 0x200000
jle 0xa52fbf
mov eax, 0x200000
jmp 0xa52fc9
mov ecx, 0x4000
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x4b4], eax
push dword [edi + 0x8b8]
call dword [0xb0a984]
add esp, 4
mov dword [edi + 0x8b8], 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 + 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 + 8]
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 + 8]
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 + 8]
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 + 8]
cmp dword [eax], ebx
setne al
mov byte [edi + 0x6dc], 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 0xa5479d
mov dword [edi + 0x678], 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 0xa5479d
mov dword [edi + 0x67c], 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 + 0x6de], 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 + 0x6df], 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 + 0x6e0], 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 + 0x6e1], 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 + 0x1f8], 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 + 0x6e2], 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 + 0x6e5], 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 0xa5479d
mov dword [edi + 0x690], 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 0xa5479d
mov dword [edi + 0x200], 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 0xa5479d
mov dword [edi + 0x204], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
test byte [eax], 1
je 0xa5438a
cmp dword [edi + 0x6f4], ebx
jne case.0xa532d5.10076
call fcn.00a657b0
mov dword [edi + 0x6f4], eax
test eax, eax
jne case.0xa532d5.10076
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 0x6f8]
test ecx, ecx
jne 0xa5326c
call fcn.00a609d0
mov ecx, eax
mov dword [edi + 0x6f8], ecx
test ecx, ecx
je 0xa53537
mov eax, dword [ebp + 8]
mov edx, dword [eax]
call fcn.00a60a10
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 + 0x6b9], 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 + 0x15c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x27f4
jg 0xa53eab
je 0xa53e97
add edx, 0xffffd8ee
cmp edx, 0xde
ja case.0xa547ed.40296
movzx eax, byte [edx + 0xa54d60]
jmp dword [eax*4 + 0xa54c3c]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x56c]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x53c]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0xc], edx
test edx, edx
je 0xa533aa
mov esi, dword [edi + 0x180]
mov eax, esi
mov ecx, dword [edi + 0x184]
and eax, ecx
cmp eax, 0xffffffff
je 0xa533aa
test ecx, ecx
ja 0xa5337d
jb 0xa5333f
cmp esi, 0xffffffff
ja 0xa5337d
lea ecx, [edi + 0x620]
xor edx, edx
call fcn.00a51eb0
mov ecx, dword [edi + 0x180]
mov eax, ecx
mov edx, dword [edi + 0x184]
or eax, edx
je 0xa53364
mov dword [esp + 0x14], edx
jmp 0xa5336d
mov ecx, 1
mov dword [esp + 0x14], ebx
push ecx
call dword [0xb0a97c]
mov esi, eax
add esp, 4
test esi, esi
jne 0xa53384
mov ebx, 0x1b
jmp 0xa533b7
mov ecx, dword [edi + 0x180]
mov eax, ecx
or eax, dword [edi + 0x184]
je 0xa533a2
push ecx
push dword [esp + 0x10]
push esi
call fcn.00aa1fa0
add esp, 0xc
mov dword [edi + 0x620], esi
jmp 0xa533b7
lea ecx, [edi + 0x620]
call fcn.00a51eb0
mov ebx, eax
mov eax, dword [edi + 0x620]
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 + 8]
lea ecx, [edi + 0x620]
xor edx, edx
mov eax, dword [eax]
mov dword [edi + 0x178], eax
call fcn.00a51eb0
mov byte [edi + 0x3c9], 1
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 0xa53443
cmp byte [edx], bl
jne 0xa53443
call fcn.00a67940
mov esi, eax
test esi, esi
jne 0xa53421
mov ebx, 0x1b
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [edi + 0x510]
mov edx, esi
call fcn.00a51eb0
push esi
mov ebx, eax
call dword [0xb0a984]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [edi + 0x510]
call fcn.00a51eb0
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 + 0x23c], eax
mov eax, ebx
mov byte [edi + 0x3c9], 2
mov byte [edi + 0x6ce], bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [edi + 0xd49], bl
je 0xa5349b
push dword [edi + 0xc9c]
call dword [0xb0a984]
add esp, 4
mov dword [edi + 0xc9c], ebx
mov byte [edi + 0xd49], bl
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x54c]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
mov eax, dword [edi + 0x54c]
mov dword [edi + 0xc9c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x57c]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x4fc]
mov edx, dword [edx]
call fcn.00a51eb0
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 0xa53552
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0xa53502
sub ecx, esi
cmp ecx, 0x7a1200
ja 0xa5479d
mov ecx, dword [edi + 0x1d0]
call fcn.00a5c6b0
test eax, eax
jne 0xa53543
mov ecx, dword [edi + 0x1d0]
call fcn.00a5c6f0
mov dword [edi + 0x1d0], ebx
mov eax, 0x1b
pop edi
pop esi
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
mov ecx, dword [edi + 0x1d0]
call fcn.00a5c6f0
mov eax, dword [edi + 0x78]
mov dword [edi + 0x1d0], ebx
test eax, eax
je 0xa5356f
cmp dword [eax + 0x68], ebx
jne 0xa53585
mov ecx, dword [edi + 0x6f0]
call fcn.00a5f5e0
mov ecx, dword [edi + 0x6f0]
call fcn.00a5f6c0
mov dword [edi + 0x6f0], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x500]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
xor edx, edx
movzx eax, byte [edi + 0x6b6]
mov ecx, edi
push eax
push dword [edi + 0x6f0]
call fcn.00a5f000
add esp, 8
mov dword [edi + 0x6f0], 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.0xa532d5.10076
mov edx, 0xad96c8
mov ecx, esi
call fcn.00a67df0
test eax, eax
je 0xa53626
push ecx
mov edx, 2
mov ecx, edi
call fcn.00a67880
mov ecx, dword [edi + 0x6f0]
add esp, 4
call fcn.00a5f5e0
mov edx, 2
mov ecx, edi
call fcn.00a678c0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, str.SESS
mov ecx, esi
call fcn.00a67df0
test eax, eax
je 0xa53666
push ecx
mov edx, 2
mov ecx, edi
call fcn.00a67880
mov ecx, dword [edi + 0x6f0]
add esp, 4
call fcn.00a5f640
mov edx, 2
mov ecx, edi
call fcn.00a678c0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, str.FLUSH
mov ecx, esi
call fcn.00a67df0
test eax, eax
je 0xa53688
xor dl, dl
mov ecx, edi
call fcn.00a5f9b0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, str.RELOAD
mov ecx, esi
call fcn.00a67df0
test eax, eax
je 0xa536a8
mov ecx, edi
call fcn.00a5e120
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f0], ebx
jne 0xa536c6
push 1
push 0
xor edx, edx
mov ecx, edi
call fcn.00a5f000
add esp, 8
mov dword [edi + 0x6f0], eax
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0xa536d0
sub ecx, edx
cmp ecx, 0x7a1200
ja 0xa5479d
push esi
call dword [0xb0a988]
mov esi, eax
add esp, 4
test esi, esi
je 0xa53765
cmp dword [edi + 0x6f0], ebx
je 0xa53765
push ecx
mov edx, 2
mov ecx, edi
call fcn.00a67880
add esp, 4
mov edx, str.Set_Cookie:
mov ecx, esi
push 0xb
call fcn.00a67e80
add esp, 4
lea ecx, [esi + 0xb]
test eax, eax
jne 0xa53727
mov ecx, esi
mov edx, dword [edi + 0x6f0]
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.00a5e330
mov edx, 2
mov ecx, edi
call fcn.00a678c0
push esi
call dword [0xb0a984]
add esp, 0x1c
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
mov ebx, 0x1b
call dword [0xb0a984]
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 + 0x4bc], 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 + 0x238], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x504]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x540]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0x164], 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 + 0x158], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x51c]
mov edx, dword [edx]
call fcn.00a51eb0
cmp dword [edi + 0x51c], 0
mov ebx, eax
setne al
mov byte [edi + 0x6bf], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x514]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x518]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x538]
mov edx, dword [edx]
call fcn.00a51eb0
cmp dword [edi + 0x538], 0
mov ebx, eax
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 + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 0xd48], bl
je 0xa538fa
push dword [edi + 0xc98]
call dword [0xb0a984]
add esp, 4
mov dword [edi + 0xc98], ebx
mov byte [edi + 0xd48], bl
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x550]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
mov eax, dword [edi + 0x550]
mov dword [edi + 0xc98], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
lea eax, [edi + 0x598]
push eax
lea edx, [edi + 0x594]
mov ecx, dword [ecx]
call fcn.00a51fa0
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 + 0x594]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x598]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x59c]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5ec]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0x3b4], eax
mov dword [edi + 0xca0], 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 + 0x1e8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
lea eax, [edi + 0x5a4]
push eax
lea edx, [edi + 0x5a0]
mov ecx, dword [ecx]
call fcn.00a51fa0
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 + 0x5a0]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5a4]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5a8]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x548]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0x154], 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 + 0x150], eax
test eax, eax
jne case.0xa532d5.10076
push 2
call fcn.00aaf18d
mov dword [edi + 0x150], 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 + 0x1cc], 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 + 0x1ec], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x4ec]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x4f4]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x520]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x530]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x528]
mov edx, dword [edx]
call fcn.00a51eb0
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.0xa532d5.10076
cmp byte [esi], bl
je case.0xa532d5.10076
lea ecx, [edi + 0x590]
mov edx, esi
call fcn.00a51eb0
mov ebx, eax
test ebx, ebx
jne case.0xa532d5.10076
mov edx, esi
mov ecx, edi
call fcn.00a57d10
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x50c]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 8
call fcn.00a58e00
test al, al
je case.0xa52d3d.244
mov eax, dword [ebp + 8]
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 edx, dword [ebp + 8]
lea ecx, [edi + 0x55c]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 1
call fcn.00a58e00
test al, al
je case.0xa52d3d.244
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x554]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x580]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x588]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0x3b0], 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 + 0x78]
test eax, eax
je 0xa53cc0
push ecx
mov edx, 1
call fcn.00a67880
add esp, 4
cmp dword [edi + 0x6c], 2
jne 0xa53c6f
mov dword [edi + 0x68], ebx
mov dword [edi + 0x6c], ebx
mov ecx, dword [edi + 0x78]
mov eax, dword [ecx + 0x68]
cmp eax, dword [edi + 0x6f0]
jne 0xa53c83
mov dword [edi + 0x6f0], ebx
mov eax, dword [ecx + 0x6c]
cmp eax, dword [edi + 0x6f4]
jne 0xa53c94
mov dword [edi + 0x6f4], ebx
mov eax, dword [ecx + 0x70]
cmp eax, dword [edi + 0x8d8]
jne 0xa53ca5
mov dword [edi + 0x8d8], ebx
mov ecx, dword [ecx + 8]
mov edx, 1
mov eax, dword [edi + 0x78]
dec ecx
mov dword [eax + 8], ecx
mov ecx, edi
call fcn.00a678c0
mov dword [edi + 0x78], ebx
xor eax, eax
test esi, esi
je case.0xa532d5.10076
cmp dword [esi], 0x7e117a1e
jne 0xa53cd5
mov dword [edi + 0x78], esi
jmp 0xa53cdd
test eax, eax
je case.0xa532d5.10076
push ecx
mov edx, 1
mov ecx, edi
call fcn.00a67880
mov eax, dword [edi + 0x78]
add esp, 4
mov ecx, dword [eax + 8]
mov eax, dword [edi + 0x78]
inc ecx
mov dword [eax + 8], ecx
mov ecx, dword [edi + 0x78]
test byte [ecx + 4], 8
je 0xa53d10
lea eax, [ecx + 0x50]
mov dword [edi + 0x68], eax
mov dword [edi + 0x6c], 2
mov edx, ecx
cmp dword [ecx + 0x68], ebx
je 0xa53d30
mov ecx, dword [edi + 0x6f0]
call fcn.00a5f6c0
mov ecx, dword [edi + 0x78]
mov edx, ecx
mov eax, dword [ecx + 0x68]
mov dword [edi + 0x6f0], eax
cmp dword [ecx + 0x6c], ebx
je 0xa53d4e
lea ecx, [edi + 0x6f4]
call fcn.00a657f0
mov ecx, dword [edi + 0x78]
mov edx, ecx
mov eax, dword [ecx + 0x6c]
mov dword [edi + 0x6f4], eax
cmp dword [ecx + 0x70], ebx
je 0xa53d65
mov eax, dword [ecx + 0x74]
mov dword [edi + 0x4a4], eax
mov eax, dword [edx + 0x70]
mov dword [edi + 0x8d8], eax
mov edx, 1
mov ecx, edi
call fcn.00a678c0
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 + 0x4b8], 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 + 0x1b0], 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 + 0x1b8], 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 + 0x1c0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5d4]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5d8]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0x6ac], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5ac]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5b0]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5b4]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0x658], 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 + 0x670], 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 + 0x66c], 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 + 0x49c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x4e2b
jg 0xa5442d
je 0xa54407
add edx, 0xffffd80a
cmp edx, 0x59
ja case.0xa547ed.40296
movzx eax, byte [edx + 0xa54edc]
jmp dword [eax*4 + 0xa54e40]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x570]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x20
call fcn.00a58e00
test al, al
je case.0xa52d3d.239
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x574]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x20
call fcn.00a58e00
test al, al
je case.0xa52d3d.239
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x578]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5f4]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x624]
mov edx, dword [edx]
call fcn.00a51eb0
cmp dword [edi + 0x624], 0
mov ebx, eax
je case.0xa532d5.10076
mov dword [edi + 0x16c], 0x80
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x240]
push 0
mov edx, dword [edx]
call fcn.00a56680
mov ebx, eax
add esp, 4
test ebx, ebx
jne case.0xa532d5.10076
mov byte [edi + 0x3c9], 3
mov byte [edi + 0x6ce], al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x544]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5cc]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5d0]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0x69c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x4f0]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x4f8]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x524]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x534]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x52c]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 4
call fcn.00a58e00
test al, al
je 0xa540c8
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x564]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, edx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 4
call fcn.00a58e00
test al, al
je 0xa540c8
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x568]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x560]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 1
call fcn.00a58e00
test al, al
je case.0xa52d3d.244
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x558]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x584]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x58c]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x618]
mov edx, dword [edx]
call fcn.00a51eb0
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 + 0x68c], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
lea edx, [esp + 0xc]
mov ecx, dword [eax]
call fcn.00a52060
mov ebx, eax
test ebx, ebx
jne 0xa548ce
mov eax, dword [esp + 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 + 8]
lea edx, [esp + 0xc]
mov ecx, dword [eax]
call fcn.00a52060
mov ebx, eax
test ebx, ebx
jne 0xa548ce
mov eax, dword [esp + 0xc]
mov dword [edi + 0x650], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x508]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x604]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6e4], bl
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x5f0]
mov edx, dword [edx]
call fcn.00a51eb0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6e4], 1
jmp 0xa5422b
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
je case.0xa52d3d.239
cmp dword [eax], 0xc0dedbad
jne case.0xa532d5.10076
mov eax, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
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 edx, dword [ebp + 8]
lea ecx, [edi + 0x5f8]
mov edx, dword [edx]
call fcn.00a51eb0
cmp dword [edi + 0x5f8], 0
mov ebx, eax
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 + 8]
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 + 8]
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 + 8]
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
jne 0xa54308
call fcn.00a657b0
mov dword [edi + 0x6f4], eax
test eax, eax
je 0xa53537
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
test eax, eax
je 0xa54369
lea ecx, [edi + 0x600]
mov edx, eax
call fcn.00a51eb0
mov ebx, eax
test ebx, ebx
jne 0xa548ce
mov edx, dword [esp + 0xc]
mov ecx, dword [edi + 0x1d4]
call fcn.00a5c6b0
test eax, eax
jne 0xa5435a
mov ecx, dword [edi + 0x1d4]
call fcn.00a5c6f0
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
mov ecx, dword [edi + 0x1d4]
call fcn.00a5c6f0
mov dword [edi + 0x1d4], ebx
mov eax, dword [edi + 0x78]
test eax, eax
je 0xa5438a
cmp dword [eax + 0x6c], ebx
jne case.0xa532d5.10076
lea ecx, [edi + 0x6f4]
call fcn.00a657f0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f8], ebx
jne 0xa543b9
call fcn.00a609d0
mov dword [edi + 0x6f8], eax
test eax, eax
je 0xa53537
mov eax, dword [ebp + 8]
lea ecx, [edi + 0x5fc]
mov esi, dword [eax]
mov edx, esi
call fcn.00a51eb0
mov ebx, eax
test ebx, ebx
jne 0xa548ce
test esi, esi
je case.0xa532d5.10076
mov ecx, dword [edi + 0x6f8]
mov edx, esi
call fcn.00a60a00
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 + 0x1c8], 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 + 0x18c], eax
test eax, eax
jne case.0xa532d5.10076
mov dword [edi + 0x18c], fcn.00ab106a
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x4f30
jg 0xa545eb
je 0xa545d7
add edx, 0xffffb1d4
cmp edx, 0xcf
ja case.0xa547ed.40296
movzx eax, byte [edx + 0xa54f78]
jmp dword [eax*4 + 0xa54f38]
mov eax, dword [ebp + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
mov eax, dword [eax]
mov dword [edi + 0x198], eax
test eax, eax
jne 0xa544ed
mov byte [edi + 0x6b3], bl
mov eax, ebx
mov dword [edi + 0x198], fcn.00ab128e
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 + 8]
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 + 8]
mov eax, dword [eax]
mov dword [edi + 0x1a8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 8
call fcn.00a58e00
test al, al
je case.0xa52d3d.244
mov eax, dword [ebp + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
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 edx, 0x75c1
jg 0xa54753
je 0xa5472c
cmp edx, 0x75a3
jg 0xa546a9
je 0xa54678
add edx, 0xffffb0c5
cmp edx, 0x1d
ja case.0xa547ed.40296
movzx eax, byte [edx + 0xa5505c]
jmp dword [eax*4 + 0xa55048]
mov eax, dword [ebp + 8]
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 + 8]
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 + 8]
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 + 8]
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 + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0xa5479d
jg 0xa54694
cmp ecx, 0xffffffff
jb 0xa5479d
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 edx, 0x75a4
je 0xa546fb
sub edx, 1
je 0xa546cc
sub edx, 3
jne case.0xa547ed.40296
mov eax, dword [ebp + 8]
mov esi, dword [eax]
mov ecx, dword [eax + 4]
jmp 0xa5236e
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0xa5479d
jg 0xa546e6
test ecx, ecx
jb 0xa5479d
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 + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0xa5479d
jg 0xa54717
cmp ecx, 0xffffffff
jb 0xa5479d
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 + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0xa5479d
jg 0xa5473e
test ecx, ecx
jb 0xa5479d
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 edx, 0x9d63
jg 0xa547d7
je 0xa547be
sub edx, 0x75c2
je 0xa5478b
sub edx, 0x7c
jne case.0xa547ed.40296
mov eax, dword [ebp + 8]
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 + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jg 0xa547a9
jl 0xa5479d
test ecx, ecx
jae 0xa547a9
mov eax, 0x2b
pop edi
pop esi
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 edx, dword [ebp + 8]
lea ecx, [edi + 0x628]
mov edx, dword [edx]
call fcn.00a51f10
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add edx, 0xffff629c
cmp edx, 0x12
ja case.0xa547ed.40296
movzx eax, byte [edx + 0xa5509c]
jmp dword [eax*4 + 0xa5507c]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x62c]
mov edx, dword [edx]
call fcn.00a51f10
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x630]
mov edx, dword [edx]
call fcn.00a51f10
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x634]
mov edx, dword [edx]
call fcn.00a51f10
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x40
call fcn.00a58e00
test al, al
je case.0xa52d3d.239
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x640]
mov edx, dword [edx]
call fcn.00a51f10
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x40
call fcn.00a58e00
test al, al
je case.0xa52d3d.239
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x644]
mov edx, dword [edx]
call fcn.00a51f10
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x638]
mov edx, dword [edx]
call fcn.00a51f10
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x63c]
mov edx, dword [edx]
call fcn.00a51f10
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