Function at 0xa539d0
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 0xa545f5
je 0xa545df
lea eax, [edx - 3]
cmp eax, 0xcc
ja case.0xa560cd.40296
movzx eax, byte [eax + 0xa56304]
jmp dword [eax*4 + 0xa561b8]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0xa5607d
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 0xa5607d
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 0xa53af9
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.0xa54bb5.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 0xa53b57
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 0xa5607d
cmp eax, 0x20c49b
jg 0xa5607d
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 0xa5607d
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 0xa5607d
cmp eax, 3
jge 0xa5607d
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 0xa5607d
cmp eax, 4
jge 0xa5607d
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 0xa5607d
jg 0xa53c66
cmp esi, 0xffffffff
jb 0xa5607d
cmp dword [edi + 0x184], ecx
jg 0xa53c9d
jl 0xa53c78
cmp dword [edi + 0x180], esi
jae 0xa53c9d
mov eax, dword [edi + 0x178]
cmp eax, dword [edi + 0x620]
jne 0xa53c9d
xor edx, edx
lea ecx, [edi + 0x620]
call fcn.00a53790
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 0xa5607d
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 0xa5607d
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 0xa53d6d
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.0xa54bb5.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 0xa53de6
sub eax, 1
je 0xa53de6
sub eax, 1
je 0xa53de6
test ecx, ecx
js 0xa5607d
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 0xa53e0d
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 0xa53e25
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 0xa53e4d
cmp ecx, 0x1f
jl 0xa53e30
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 0xa5607d
cmp eax, 0xffff
jg 0xa5607d
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 0xa53eb3
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 0xa53ecb
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdf
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
and eax, edx
jne 0xa53eed
cmp ecx, 0x1f
jl 0xa53ed0
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 0xa5607d
cmp eax, 7
jg 0xa5607d
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 0xa53f44
sub eax, 1
jne 0xa54080
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 0xa5607d
cmp eax, 4
jge 0xa5607d
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 0xa5607d
cmp eax, 3
jge 0xa5607d
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 0xa5607d
cmp eax, 3
jge 0xa5607d
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 0xa54080
cmp eax, 2
jg 0xa54080
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 0xa5607d
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 0xa5607d
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 0xa5607d
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 0xa5607d
cmp eax, 0xffff
jg 0xa5607d
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 0xa5607d
cmp eax, 0x20c49b
jg 0xa5607d
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 0xa5607d
cmp eax, 0x20c49b
jg 0xa5607d
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 0xa5607d
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.00a53790
mov ecx, edi
call fcn.00a59600
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 0xa5607d
cmp ecx, 0xffff
jg 0xa5607d
call fcn.00a5dec0
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 0xa5607d
cmp ecx, 0xffff
jg 0xa5607d
call fcn.00a5dec0
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.0xa54bb5.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.0xa54bb5.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.00a5a6e0
test al, al
je case.0xa5461d.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 0xa5607d
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xa00000
jle 0xa542ee
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 0xa54307
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 0xa5607d
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 0xa5607d
cmp eax, 4
jge 0xa5607d
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 0xa5607d
cmp eax, 2
jg 0xa5607d
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 0xa5607d
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 0xa5607d
cmp eax, 0x1ff
jg 0xa5607d
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.0xa544ac
jmp dword [eax*4 + 0xa563d4]
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 0xa54b8a
je 0xa54b76
lea eax, [edx - 0xd4]
cmp eax, 0x6e
ja case.0xa560cd.40296
movzx eax, byte [eax + 0xa564ac]
jmp dword [eax*4 + 0xa56400]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 0xffffffff
jl 0xa5607d
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 0xa5607d
cmp eax, 3
je 0xa5607d
cmp eax, 8
jae 0xa5607d
cmp ecx, 0x7ffff
ja 0xa5607d
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 0xa5607d
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 0xa5607d
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.0xa54bb5.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.0xa54bb5.10076
mov byte [ecx + 0x1ba], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00a59d10
test al, al
jne 0xa54824
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.0xa54bb5.10076
mov byte [ecx + 0x17b], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00a59d10
test al, al
je case.0xa5461d.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.00a59d20
test al, al
je case.0xa5461d.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 0xa5489f
mov eax, 0x200000
jmp 0xa548a9
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 0xa5607d
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 0xa5607d
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 0xa5607d
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 0xa5607d
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 0xa5607d
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 0xa55c6a
cmp dword [edi + 0x6f4], ebx
jne case.0xa54bb5.10076
call fcn.00a67090
mov dword [edi + 0x6f4], eax
test eax, eax
jne case.0xa54bb5.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 0xa54b4c
call fcn.00a622b0
mov ecx, eax
mov dword [edi + 0x6f8], ecx
test ecx, ecx
je 0xa54e17
mov eax, dword [ebp + 8]
mov edx, dword [eax]
call fcn.00a622f0
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 0xa5578b
je 0xa55777
add edx, 0xffffd8ee
cmp edx, 0xde
ja case.0xa560cd.40296
movzx eax, byte [edx + 0xa56640]
jmp dword [eax*4 + 0xa5651c]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x56c]
mov edx, dword [edx]
call fcn.00a53790
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.00a53790
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 0xa54c8a
mov esi, dword [edi + 0x180]
mov eax, esi
mov ecx, dword [edi + 0x184]
and eax, ecx
cmp eax, 0xffffffff
je 0xa54c8a
test ecx, ecx
ja 0xa54c5d
jb 0xa54c1f
cmp esi, 0xffffffff
ja 0xa54c5d
lea ecx, [edi + 0x620]
xor edx, edx
call fcn.00a53790
mov ecx, dword [edi + 0x180]
mov eax, ecx
mov edx, dword [edi + 0x184]
or eax, edx
je 0xa54c44
mov dword [esp + 0x14], edx
jmp 0xa54c4d
mov ecx, 1
mov dword [esp + 0x14], ebx
push ecx
call dword [0xb0a97c]
mov esi, eax
add esp, 4
test esi, esi
jne 0xa54c64
mov ebx, 0x1b
jmp 0xa54c97
mov ecx, dword [edi + 0x180]
mov eax, ecx
or eax, dword [edi + 0x184]
je 0xa54c82
push ecx
push dword [esp + 0x10]
push esi
call fcn.00aa3880
add esp, 0xc
mov dword [edi + 0x620], esi
jmp 0xa54c97
lea ecx, [edi + 0x620]
call fcn.00a53790
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.00a53790
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 0xa54d23
cmp byte [edx], bl
jne 0xa54d23
call fcn.00a69220
mov esi, eax
test esi, esi
jne 0xa54d01
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.00a53790
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.00a53790
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 0xa54d7b
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.00a53790
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.00a53790
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.00a53790
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 0xa54e32
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0xa54de2
sub ecx, esi
cmp ecx, 0x7a1200
ja 0xa5607d
mov ecx, dword [edi + 0x1d0]
call fcn.00a5df90
test eax, eax
jne 0xa54e23
mov ecx, dword [edi + 0x1d0]
call fcn.00a5dfd0
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.00a5dfd0
mov eax, dword [edi + 0x78]
mov dword [edi + 0x1d0], ebx
test eax, eax
je 0xa54e4f
cmp dword [eax + 0x68], ebx
jne 0xa54e65
mov ecx, dword [edi + 0x6f0]
call fcn.00a60ec0
mov ecx, dword [edi + 0x6f0]
call fcn.00a60fa0
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.00a53790
mov ebx, eax
xor edx, edx
movzx eax, byte [edi + 0x6b6]
mov ecx, edi
push eax
push dword [edi + 0x6f0]
call fcn.00a608e0
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.0xa54bb5.10076
mov edx, 0xada6c8
mov ecx, esi
call fcn.00a696d0
test eax, eax
je 0xa54f06
push ecx
mov edx, 2
mov ecx, edi
call fcn.00a69160
mov ecx, dword [edi + 0x6f0]
add esp, 4
call fcn.00a60ec0
mov edx, 2
mov ecx, edi
call fcn.00a691a0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, str.SESS
mov ecx, esi
call fcn.00a696d0
test eax, eax
je 0xa54f46
push ecx
mov edx, 2
mov ecx, edi
call fcn.00a69160
mov ecx, dword [edi + 0x6f0]
add esp, 4
call fcn.00a60f20
mov edx, 2
mov ecx, edi
call fcn.00a691a0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, str.FLUSH
mov ecx, esi
call fcn.00a696d0
test eax, eax
je 0xa54f68
xor dl, dl
mov ecx, edi
call fcn.00a61290
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, str.RELOAD
mov ecx, esi
call fcn.00a696d0
test eax, eax
je 0xa54f88
mov ecx, edi
call fcn.00a5fa00
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f0], ebx
jne 0xa54fa6
push 1
push 0
xor edx, edx
mov ecx, edi
call fcn.00a608e0
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 0xa54fb0
sub ecx, edx
cmp ecx, 0x7a1200
ja 0xa5607d
push esi
call dword [0xb0a988]
mov esi, eax
add esp, 4
test esi, esi
je 0xa55045
cmp dword [edi + 0x6f0], ebx
je 0xa55045
push ecx
mov edx, 2
mov ecx, edi
call fcn.00a69160
add esp, 4
mov edx, str.Set_Cookie:
mov ecx, esi
push 0xb
call fcn.00a69760
add esp, 4
lea ecx, [esi + 0xb]
test eax, eax
jne 0xa55007
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.00a5fc10
mov edx, 2
mov ecx, edi
call fcn.00a691a0
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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 0xa551da
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.00a53790
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.00a53880
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53880
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.0xa54bb5.10076
push 2
call fcn.00ab0a6d
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.0xa54bb5.10076
cmp byte [esi], bl
je case.0xa54bb5.10076
lea ecx, [edi + 0x590]
mov edx, esi
call fcn.00a53790
mov ebx, eax
test ebx, ebx
jne case.0xa54bb5.10076
mov edx, esi
mov ecx, edi
call fcn.00a595f0
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.00a53790
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 8
call fcn.00a5a6e0
test al, al
je case.0xa5461d.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.00a53790
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 1
call fcn.00a5a6e0
test al, al
je case.0xa5461d.244
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x554]
mov edx, dword [edx]
call fcn.00a53790
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.00a53790
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.00a53790
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 0xa555a0
push ecx
mov edx, 1
call fcn.00a69160
add esp, 4
cmp dword [edi + 0x6c], 2
jne 0xa5554f
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 0xa55563
mov dword [edi + 0x6f0], ebx
mov eax, dword [ecx + 0x6c]
cmp eax, dword [edi + 0x6f4]
jne 0xa55574
mov dword [edi + 0x6f4], ebx
mov eax, dword [ecx + 0x70]
cmp eax, dword [edi + 0x8d8]
jne 0xa55585
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.00a691a0
mov dword [edi + 0x78], ebx
xor eax, eax
test esi, esi
je case.0xa54bb5.10076
cmp dword [esi], 0x7e117a1e
jne 0xa555b5
mov dword [edi + 0x78], esi
jmp 0xa555bd
test eax, eax
je case.0xa54bb5.10076
push ecx
mov edx, 1
mov ecx, edi
call fcn.00a69160
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 0xa555f0
lea eax, [ecx + 0x50]
mov dword [edi + 0x68], eax
mov dword [edi + 0x6c], 2
mov edx, ecx
cmp dword [ecx + 0x68], ebx
je 0xa55610
mov ecx, dword [edi + 0x6f0]
call fcn.00a60fa0
mov ecx, dword [edi + 0x78]
mov edx, ecx
mov eax, dword [ecx + 0x68]
mov dword [edi + 0x6f0], eax
cmp dword [ecx + 0x6c], ebx
je 0xa5562e
lea ecx, [edi + 0x6f4]
call fcn.00a670d0
mov ecx, dword [edi + 0x78]
mov edx, ecx
mov eax, dword [ecx + 0x6c]
mov dword [edi + 0x6f4], eax
cmp dword [ecx + 0x70], ebx
je 0xa55645
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.00a691a0
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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 0xa55d0d
je 0xa55ce7
add edx, 0xffffd80a
cmp edx, 0x59
ja case.0xa560cd.40296
movzx eax, byte [edx + 0xa567bc]
jmp dword [eax*4 + 0xa56720]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x570]
mov edx, dword [edx]
call fcn.00a53790
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x20
call fcn.00a5a6e0
test al, al
je case.0xa5461d.239
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x574]
mov edx, dword [edx]
call fcn.00a53790
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x20
call fcn.00a5a6e0
test al, al
je case.0xa5461d.239
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x578]
mov edx, dword [edx]
call fcn.00a53790
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.00a53790
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.00a53790
cmp dword [edi + 0x624], 0
mov ebx, eax
je case.0xa54bb5.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.00a57f60
mov ebx, eax
add esp, 4
test ebx, ebx
jne case.0xa54bb5.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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53790
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 4
call fcn.00a5a6e0
test al, al
je 0xa559a8
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x564]
mov edx, dword [edx]
call fcn.00a53790
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.00a5a6e0
test al, al
je 0xa559a8
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x568]
mov edx, dword [edx]
call fcn.00a53790
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.00a53790
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 1
call fcn.00a5a6e0
test al, al
je case.0xa5461d.244
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x558]
mov edx, dword [edx]
call fcn.00a53790
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.00a53790
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.00a53790
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.00a53790
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.00a53940
mov ebx, eax
test ebx, ebx
jne 0xa561ae
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.00a53940
mov ebx, eax
test ebx, ebx
jne 0xa561ae
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.00a53790
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.00a53790
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.00a53790
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6e4], 1
jmp 0xa55b0b
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
je case.0xa5461d.239
cmp dword [eax], 0xc0dedbad
jne case.0xa54bb5.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.00a53790
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 0xa55be8
call fcn.00a67090
mov dword [edi + 0x6f4], eax
test eax, eax
je 0xa54e17
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
test eax, eax
je 0xa55c49
lea ecx, [edi + 0x600]
mov edx, eax
call fcn.00a53790
mov ebx, eax
test ebx, ebx
jne 0xa561ae
mov edx, dword [esp + 0xc]
mov ecx, dword [edi + 0x1d4]
call fcn.00a5df90
test eax, eax
jne 0xa55c3a
mov ecx, dword [edi + 0x1d4]
call fcn.00a5dfd0
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.00a5dfd0
mov dword [edi + 0x1d4], ebx
mov eax, dword [edi + 0x78]
test eax, eax
je 0xa55c6a
cmp dword [eax + 0x6c], ebx
jne case.0xa54bb5.10076
lea ecx, [edi + 0x6f4]
call fcn.00a670d0
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6f8], ebx
jne 0xa55c99
call fcn.00a622b0
mov dword [edi + 0x6f8], eax
test eax, eax
je 0xa54e17
mov eax, dword [ebp + 8]
lea ecx, [edi + 0x5fc]
mov esi, dword [eax]
mov edx, esi
call fcn.00a53790
mov ebx, eax
test ebx, ebx
jne 0xa561ae
test esi, esi
je case.0xa54bb5.10076
mov ecx, dword [edi + 0x6f8]
mov edx, esi
call fcn.00a622e0
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.0xa54bb5.10076
mov dword [edi + 0x18c], fcn.00ab294a
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edx, 0x4f30
jg 0xa55ecb
je 0xa55eb7
add edx, 0xffffb1d4
cmp edx, 0xcf
ja case.0xa560cd.40296
movzx eax, byte [edx + 0xa56858]
jmp dword [eax*4 + 0xa56818]
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 0xa55dcd
mov byte [edi + 0x6b3], bl
mov eax, ebx
mov dword [edi + 0x198], fcn.00ab2b6e
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.00a5a6e0
test al, al
je case.0xa5461d.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 0xa56033
je 0xa5600c
cmp edx, 0x75a3
jg 0xa55f89
je 0xa55f58
add edx, 0xffffb0c5
cmp edx, 0x1d
ja case.0xa560cd.40296
movzx eax, byte [edx + 0xa5693c]
jmp dword [eax*4 + 0xa56928]
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 0xa5607d
jg 0xa55f74
cmp ecx, 0xffffffff
jb 0xa5607d
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 0xa55fdb
sub edx, 1
je 0xa55fac
sub edx, 3
jne case.0xa560cd.40296
mov eax, dword [ebp + 8]
mov esi, dword [eax]
mov ecx, dword [eax + 4]
jmp 0xa53c4e
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
jl 0xa5607d
jg 0xa55fc6
test ecx, ecx
jb 0xa5607d
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 0xa5607d
jg 0xa55ff7
cmp ecx, 0xffffffff
jb 0xa5607d
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 0xa5607d
jg 0xa5601e
test ecx, ecx
jb 0xa5607d
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 0xa560b7
je 0xa5609e
sub edx, 0x75c2
je 0xa5606b
sub edx, 0x7c
jne case.0xa560cd.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 0xa56089
jl 0xa5607d
test ecx, ecx
jae 0xa56089
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.00a537f0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
add edx, 0xffff629c
cmp edx, 0x12
ja case.0xa560cd.40296
movzx eax, byte [edx + 0xa5697c]
jmp dword [eax*4 + 0xa5695c]
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x62c]
mov edx, dword [edx]
call fcn.00a537f0
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.00a537f0
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.00a537f0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x40
call fcn.00a5a6e0
test al, al
je case.0xa5461d.239
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x640]
mov edx, dword [edx]
call fcn.00a537f0
mov ebx, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x40
call fcn.00a5a6e0
test al, al
je case.0xa5461d.239
mov edx, dword [ebp + 8]
lea ecx, [edi + 0x644]
mov edx, dword [edx]
call fcn.00a537f0
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.00a537f0
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.00a537f0
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