Function at 0x538e70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x110
mov eax, dword [0x61094c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x1c]
push ebx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0xa4], ecx
push esi
mov esi, dword [ebp + 8]
mov dword [ebp - 0x84], esi
push edi
mov edi, dword [ebp + 0x18]
test ebx, ebx
jne 0x538ef7
lea eax, [ebp + 0x20]
cmp dword [ebp + 0x20], ebx
jne 0x538edd
push 1
push ebx
push ebx
push ebx
push ebx
push ebx
push eax
call fcn.00538e70
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
sub eax, esi
cdq
xor eax, edx
pop edi
sub eax, edx
pop esi
neg eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x53ccb4
mov dword [ebp - 0xb8], SysReAllocString
nop dword [eax]
inc dword [edi]
mov eax, dword [ebp + 0x20]
cmp eax, dword [edi + 8]
jae 0x53cc9e
cmp dword [edi + 0x98], 2
jne 0x538f50
lea eax, [ebp - 0x110]
mov dword [ebp - 0x10c], esi
mov dword [ebp - 0x110], ecx
mov dword [ebp - 0xa4], eax
mov dword [edi + 0x98], 0
nop dword [eax]
mov cl, byte [ebx]
movzx edx, cl
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x80], edx
cmp edx, 0xa1
ja case.0x538f7f.15
movzx eax, byte [edx + 0x53ce08]
jmp dword [eax*4 + 0x53cccc]
inc dword [edi + 0x28]
mov eax, dword [edi + 0x28]
cmp eax, dword [edi + 0x2c]
ja 0x53bd32
movzx eax, byte [ebx]
movzx ecx, byte [eax + 0x5ade60]
movzx eax, byte [ebx + 1]
add ebx, eax
add ebx, ecx
jmp 0x538f50
mov eax, dword [edi + 0xac]
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x80], esi
mov dword [ebp - 0xa0], eax
nop
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
lea eax, [ebx + 3]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push eax
push esi
call fcn.00538e70
add esp, 0x1c
cmp eax, 1
je 0x539095
cmp eax, 0xfffffc20
jne 0x539017
movzx edx, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl edx, 8
or edx, ecx
add edx, ebx
cmp dword [edi + 0x7c], edx
jae 0x53ccbb
cmp byte [ebx], 0x77
je 0x53901f
cmp byte [edx], 0x77
jmp 0x539019
test eax, eax
jne 0x53ccbb
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0xa0]
add ebx, ecx
mov dword [edi + 0xac], eax
cmp byte [ebx], 0x77
je 0x538fc0
mov edx, dword [ebp - 0x9c]
mov al, byte [ebx]
cmp al, 0x82
je 0x539053
cmp al, 0x77
jne case.0x53c61e.14
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x539053
cmp byte [ebx], 0x78
mov eax, dword [edi + 0x8c]
mov esi, dword [edi + 0x80]
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x84], esi
je 0x53908d
cmp esi, dword [ebp - 0x80]
jne 0x53bb24
add ebx, 3
jmp 0x538f50
mov edx, dword [edi + 0x7c]
mov dword [ebp - 0x9c], edx
jmp 0x539045
mov dword [ebp - 0xa0], 0
jmp 0x539b6e
mov dword [ebp - 0xa0], 0
jmp 0x539b90
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
add ebx, 3
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0xa8], ecx
cmp byte [ebx], 0x76
jne 0x5391e0
mov eax, dword [0x61ea2c]
mov dword [ebp - 0xa0], eax
test eax, eax
je 0x5391c9
movzx eax, byte [ebx + 1]
mov ecx, dword [edi + 0x74]
mov dword [ebp - 0x104], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x100], eax
mov eax, dword [edi + 0x78]
sub eax, ecx
mov dword [ebp - 0xfc], ecx
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x9c]
sub eax, ecx
mov dword [ebp - 0x108], 2
mov dword [ebp - 0xf4], eax
mov eax, esi
sub eax, ecx
movzx ecx, byte [ebx + 2]
mov dword [ebp - 0xf0], eax
movzx eax, byte [ebx + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebx + 5]
mov dword [ebp - 0xe0], ecx
movzx ecx, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x8c]
cdq
sub eax, edx
mov dword [ebp - 0xdc], ecx
sar eax, 1
mov ecx, 0xffffffff
mov dword [ebp - 0xec], eax
movzx eax, word [edi + 0x90]
test eax, eax
cmove eax, ecx
mov dword [ebp - 0xe8], eax
mov eax, dword [edi + 0xa8]
mov dword [ebp - 0xe4], eax
mov eax, dword [edi + 0xb0]
mov dword [ebp - 0xd8], eax
lea eax, [ebp - 0x108]
push eax
call dword [ebp - 0xa0]
add esp, 4
test eax, eax
jg case.0x53c61e.14
js 0x53ccbb
mov ecx, dword [ebp - 0xa8]
movzx eax, byte [0x5aded6]
add ebx, eax
sub ecx, eax
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0xa8], ecx
movzx eax, byte [ebx]
mov dword [ebp - 0xa0], eax
add eax, 0xffffff73
mov dword [ebp - 0x94], 0
cmp eax, 0x10
ja case.0x539208.146
movzx eax, byte [eax + 0x53cec4]
jmp dword [eax*4 + 0x53ceac]
mov edx, dword [edi + 0xa4]
test edx, edx
je case.0x539208.145
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x539314
cmp ecx, dword [edx + 4]
je 0x539314
xor edx, edx
jmp 0x539442
cmp dword [edi + 0xa4], 0
je case.0x539208.145
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 1]
shl ecx, 8
or ecx, eax
shl edx, 8
movzx eax, byte [ebx + 2]
or edx, eax
mov dword [ebp - 0x88], ecx
imul edx, dword [edi + 0x24]
add edx, dword [edi + 0x30]
test ecx, ecx
je 0x53943c
mov eax, dword [edi + 0xa4]
mov esi, ecx
mov eax, dword [eax + 4]
mov dword [ebp - 0x98], eax
movzx ecx, byte [edx]
xor ebx, ebx
movzx eax, byte [edx + 1]
dec esi
shl ecx, 8
or ecx, eax
cmp ecx, dword [ebp - 0x98]
sete bl
mov dword [ebp - 0x94], ebx
cmp ecx, dword [ebp - 0x98]
je 0x5392c0
add edx, dword [edi + 0x24]
test esi, esi
jg 0x539293
mov esi, dword [ebp - 0x84]
test ebx, ebx
mov ebx, dword [ebp - 0x90]
mov edx, dword [ebp - 0x94]
je 0x539442
mov eax, dword [ebp - 0xa0]
movzx ecx, byte [eax + 0x5ade60]
jmp 0x539448
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [ebp - 0x8c]
jge 0x53923f
mov eax, dword [edi + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x53923f
mov eax, dword [ebp - 0xa0]
mov edx, 1
movzx ecx, byte [eax + 0x5ade60]
jmp 0x539448
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 1]
shl ecx, 8
shl edx, 8
or ecx, eax
movzx eax, byte [ebx + 2]
or edx, eax
imul edx, dword [edi + 0x24]
add edx, dword [edi + 0x30]
test ecx, ecx
je 0x53943c
movzx eax, byte [edx]
dec ecx
mov dword [ebp - 0x90], ecx
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [ebp - 0x8c]
jge 0x53937a
mov eax, dword [edi + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x539314
add edx, dword [edi + 0x24]
mov ecx, dword [ebp - 0x90]
test ecx, ecx
jg 0x539354
xor edx, edx
jmp 0x539442
mov eax, dword [ebp + 0x20]
inc eax
mov dword [edi + 0x98], 1
push eax
push 0
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
cmp eax, 1
jne 0x53942d
mov eax, dword [edi + 0x8c]
mov edx, 1
mov ecx, dword [ebp - 0x8c]
cmp eax, ecx
cmovg ecx, eax
cmp byte [ebx], 0x92
mov dword [ebp - 0x8c], ecx
lea ecx, [ebx + 1]
cmovne ecx, ebx
movzx ebx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl ebx, 8
or ebx, eax
add ebx, ecx
cmp byte [ebx], 0x77
jne 0x539408
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x5393f4
mov eax, dword [ebp - 0xa0]
mov ecx, 3
movzx eax, byte [eax + 0x5ade60]
sub ecx, eax
mov eax, dword [ebp - 0xa0]
add ebx, ecx
movzx ecx, byte [eax + 0x5ade60]
jmp 0x539448
test eax, eax
je 0x53943c
cmp eax, 0xfffffc20
jne 0x53ccbb
mov edx, dword [ebp - 0x94]
mov ecx, dword [ebp - 0xa8]
add ebx, ecx
test edx, edx
jne 0x539458
cmp byte [ebx - 3], 0x77
jne 0x538f50
cmp dword [ebp - 0x80], 0x8c
jne 0x53bc5a
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x94]
jmp 0x539448
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
mov eax, dword [edi + 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [edi + 0x90], eax
lea ecx, [edx + edx]
mov dword [ebp - 0x90], ecx
cmp ecx, dword [edi + 0x14]
jl 0x5394eb
or eax, 0x10000
add ebx, 3
mov dword [edi + 0x90], eax
jmp 0x538f50
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
sub eax, edx
mov edx, dword [ebp - 0x90]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, esi
mov eax, dword [edi + 0xc]
sub ecx, dword [edi + 0x74]
mov dword [eax + edx*4 + 4], ecx
mov ecx, dword [ebp - 0x8c]
cmp edx, ecx
jl 0x53955d
mov eax, dword [edi + 0xc]
lea ecx, [eax + ecx*4]
lea eax, [eax + edx*4]
xor edx, edx
mov dword [ebp - 0x80], eax
sub dword [ebp - 0x80], ecx
add dword [ebp - 0x80], 3
shr dword [ebp - 0x80], 2
cmp ecx, eax
mov eax, dword [ebp - 0x80]
cmova eax, edx
test eax, eax
je 0x53954e
nop word [eax + eax]
inc edx
mov dword [ecx], 0xffffffff
lea ecx, [ecx + 4]
cmp edx, eax
jb 0x539540
mov ecx, dword [ebp - 0x90]
lea eax, [ecx + 2]
mov dword [ebp - 0x8c], eax
add ebx, 3
jmp 0x538f50
cmp dword [edi + 0x98], 1
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xa0], eax
jne 0x539590
mov dword [ebp - 0x90], 1
mov dword [edi + 0x98], 0
jmp 0x5395a0
mov dword [ebp - 0x90], 0
nop word [eax + eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push 0
push edi
push dword [ebp - 0x8c]
lea eax, [ebx + 3]
push dword [ebp - 0x9c]
push eax
push esi
call fcn.00538e70
mov edx, eax
add esp, 0x1c
cmp edx, 1
je 0x539628
cmp edx, 0xfffffc19
je 0x539628
mov eax, dword [ebp - 0xa0]
mov dword [edi + 0xac], eax
cmp edx, 0xfffffc20
jne 0x539606
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ebx
cmp dword [edi + 0x7c], ecx
jae 0x53c8a8
cmp byte [ebx], 0x77
je 0x53960e
cmp byte [ecx], 0x77
jmp 0x539608
test edx, edx
jne 0x53c8a8
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x5395a0
jmp 0x539631
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x9c], eax
cmp byte [ebx], 0x78
je case.0x53c61e.14
cmp dword [ebp - 0x90], 0
jne 0x53bf42
nop word [eax + eax]
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x539650
mov eax, dword [edi + 0x8c]
add ebx, 3
mov dword [ebp - 0x8c], eax
jmp 0x538f50
cmp dword [edi + 0x98], 1
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xa0], eax
jne 0x5396a3
mov dword [ebp - 0x90], 1
mov dword [edi + 0x98], 0
jmp 0x5396b0
mov dword [ebp - 0x90], 0
nop dword [eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push 0
push edi
push dword [ebp - 0x8c]
lea eax, [ebx + 3]
push dword [ebp - 0x9c]
push eax
push esi
call fcn.00538e70
mov ecx, eax
add esp, 0x1c
mov eax, dword [ebp - 0xa0]
mov dword [edi + 0xac], eax
cmp ecx, 0xfffffc20
jg 0x539709
jne 0x53972a
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ebx
cmp dword [edi + 0x7c], ecx
jae 0x539745
cmp byte [ebx], 0x77
je 0x539714
cmp byte [ecx], 0x77
jne 0x539745
jmp 0x539714
mov eax, ecx
sub eax, 0
jne 0x53bd8a
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x5396b0
jmp 0x539759
cmp ecx, 0xfffffc19
je case.0x53c61e.14
lea eax, [ecx + 0x3e4]
cmp eax, 3
ja 0x53c9e3
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x539745
cmp dword [ebp - 0x90], 0
jne 0x53bf42
add ebx, 3
jmp 0x538f50
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
sub esi, ecx
mov dword [ebp - 0x84], esi
cmp esi, dword [edi + 0x74]
jb case.0x53c61e.14
cmp esi, dword [edi + 0x84]
jae 0x53979a
mov dword [edi + 0x84], esi
add ebx, 3
jmp 0x538f50
mov eax, dword [0x61ea2c]
mov dword [ebp - 0xa0], eax
test eax, eax
je 0x539882
movzx eax, byte [ebx + 1]
mov ecx, dword [edi + 0x74]
mov dword [ebp - 0x104], eax
mov eax, dword [edi + 0xc]
mov dword [ebp - 0x100], eax
mov eax, dword [edi + 0x78]
sub eax, ecx
mov dword [ebp - 0xfc], ecx
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x9c]
sub eax, ecx
mov dword [ebp - 0x108], 2
mov dword [ebp - 0xf4], eax
mov eax, esi
sub eax, ecx
movzx ecx, byte [ebx + 2]
mov dword [ebp - 0xf0], eax
movzx eax, byte [ebx + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [ebx + 5]
mov dword [ebp - 0xe0], ecx
movzx ecx, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x8c]
cdq
sub eax, edx
mov dword [ebp - 0xdc], ecx
sar eax, 1
mov ecx, 0xffffffff
mov dword [ebp - 0xec], eax
movzx eax, word [edi + 0x90]
test eax, eax
cmove eax, ecx
mov dword [ebp - 0xe8], eax
mov eax, dword [edi + 0xa8]
mov dword [ebp - 0xe4], eax
mov eax, dword [edi + 0xb0]
mov dword [ebp - 0xd8], eax
lea eax, [ebp - 0x108]
push eax
call dword [ebp - 0xa0]
add esp, 4
test eax, eax
jg case.0x53c61e.14
js 0x53ccbb
add ebx, 6
jmp 0x538f50
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
add edx, dword [edi + 0x70]
mov dword [ebp - 0xa0], edx
cmp edx, dword [edi + 0x70]
jne 0x5398a9
xor ecx, ecx
jmp 0x5398b6
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov edx, dword [edi + 0xa4]
mov eax, edx
test eax, eax
je 0x5398d6
cmp ecx, dword [eax + 4]
jne 0x5398d0
cmp esi, dword [eax + 0x14]
je 0x53bda2
mov eax, dword [eax]
test eax, eax
jne 0x5398c2
mov eax, dword [edi + 0x90]
add ebx, 3
mov dword [ebp - 0xd0], ecx
mov ecx, dword [edi + 0x10]
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xd4]
mov dword [ebp - 0xc0], esi
mov dword [ebp - 0xd4], edx
mov dword [edi + 0xa4], eax
mov dword [ebp - 0xc8], ecx
cmp ecx, 0x1e
jg 0x53991c
lea eax, [ebp - 0x7c]
mov dword [ebp - 0xcc], eax
jmp 0x539941
lea eax, [ecx*4]
push eax
call dword [0x60c7c4]
add esp, 4
mov dword [ebp - 0xcc], eax
test eax, eax
je 0x53be20
mov ecx, dword [ebp - 0xc8]
shl ecx, 2
push ecx
push dword [edi + 0xc]
push eax
call fcn.00555c00
mov edx, dword [ebp - 0xa0]
add esp, 0xc
mov al, byte [edx]
mov byte [ebp - 0xa9], al
nop
cmp al, 0x88
jb 0x53996e
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [edx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, edx
push eax
push esi
call fcn.00538e70
mov ecx, dword [ebp - 0xc8]
shl ecx, 2
push ecx
push dword [ebp - 0xcc]
mov dword [ebp - 0x90], eax
push dword [edi + 0xc]
call fcn.00555c00
mov eax, dword [ebp - 0xc4]
add esp, 0x28
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0xd4]
mov dword [edi + 0xa4], eax
mov eax, dword [ebp - 0x90]
cmp eax, 1
je 0x539a39
cmp eax, 0xfffffc19
je 0x539a39
cmp eax, 0xfffffc1c
jl 0x5399f6
cmp eax, 0xfffffc20
jle 0x53bdc4
test eax, eax
jne 0x53bdee
mov edx, dword [ebp - 0xa0]
lea eax, [ebp - 0xd4]
mov dword [edi + 0xa4], eax
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebp - 0xa0], edx
cmp byte [edx], 0x77
jne 0x53bdb8
mov al, byte [ebp - 0xa9]
jmp 0x539960
mov eax, dword [ebp - 0xcc]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je 0x539a50
push eax
call dword [0x60c7c8]
add esp, 4
mov esi, dword [edi + 0x80]
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x9c], eax
jmp 0x538f50
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je case.0x538f7f.119
jmp 0x538f50
mov eax, dword [ebp + 0x20]
inc ebx
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x539ab4
add ebx, 3
jmp 0x538f50
inc ebx
mov edx, ebx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x539ad3
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
lea eax, [edx + 3]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push eax
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
je 0x538f50
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
inc ebx
nop word [eax + eax]
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x539b30
add ebx, 3
jmp 0x538f50
movzx edx, byte [ebx + 1]
inc ebx
mov dword [ebp - 0x80], edx
mov dword [ebp - 0xa0], 1
cmp edx, 0x86
je 0x539b6e
cmp edx, 0x8b
jne 0x539b90
movzx edx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0x94], edx
lea eax, [edx + edx]
cmp eax, dword [edi + 0x14]
jl 0x539cde
mov edx, dword [ebp - 0x80]
xor eax, eax
mov dword [ebp - 0x90], eax
mov eax, ebx
sub eax, dword [edi + 0x70]
mov dword [ebp - 0x94], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xa8], eax
nop
cmp edx, 0x88
jb 0x539bc2
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
push eax
push esi
call fcn.00538e70
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x539c3c
mov eax, dword [edi + 0x8c]
mov ebx, dword [edi + 0x70]
add ebx, dword [ebp - 0x94]
mov dword [ebp - 0x8c], eax
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x9c], eax
mov eax, dword [edi + 0x80]
mov dword [ebp - 0x90], 1
cmp esi, eax
je 0x539ca0
mov edx, dword [ebp - 0x80]
mov esi, eax
mov dword [ebp - 0x84], esi
jmp 0x539bb0
cmp edx, 0xfffffc20
jne 0x539c66
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ebx
cmp dword [edi + 0x7c], ecx
jae 0x53c8a8
cmp byte [ebx], 0x77
je 0x539c6e
cmp byte [ecx], 0x77
jmp 0x539c68
test edx, edx
jne 0x53c8a8
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
jne 0x539cbc
mov eax, dword [ebp - 0xa8]
mov edx, dword [ebp - 0x80]
mov dword [edi + 0x90], eax
jmp 0x539bb0
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x539ca0
add ebx, 3
jmp 0x538f50
mov eax, dword [ebp - 0x90]
test eax, eax
jne 0x53908d
cmp dword [ebp - 0xa0], eax
je case.0x53c61e.14
add ebx, 3
jmp 0x538f50
shl eax, 2
mov ecx, ebx
sub ecx, dword [edi + 0x70]
mov dword [ebp - 0x88], ecx
mov ecx, dword [edi + 0xc]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0xa8], 0
mov edx, dword [eax + ecx]
mov eax, dword [eax + ecx + 4]
mov dword [ebp - 0xb4], eax
mov eax, dword [edi + 0x10]
sub eax, dword [ebp - 0x94]
mov dword [ebp - 0xbc], edx
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0xb0], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x90], eax
mov ecx, dword [edi + 0x10]
mov edx, esi
sub ecx, dword [ebp - 0x94]
mov eax, dword [edi + 0xc]
sub edx, dword [edi + 0x74]
cmp dword [ebp - 0x80], 0x88
mov dword [eax + ecx*4], edx
jb 0x539d57
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
push eax
push esi
call fcn.00538e70
mov edx, eax
add esp, 0x1c
cmp edx, 0xfffffc1a
jne 0x539ddf
mov eax, dword [edi + 0x8c]
mov edx, 1
mov ebx, dword [edi + 0x70]
add ebx, dword [ebp - 0x88]
mov dword [ebp - 0x8c], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x90], eax
mov eax, dword [edi + 0x7c]
mov dword [ebp - 0x9c], eax
mov eax, dword [edi + 0x80]
mov dword [ebp - 0xa8], edx
cmp esi, eax
je 0x539ea0
mov esi, eax
mov dword [ebp - 0x84], esi
jmp 0x539d30
cmp edx, 0xfffffc20
jne 0x539e09
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ebx
cmp dword [edi + 0x7c], ecx
jae 0x53c8a8
cmp byte [ebx], 0x77
je 0x539e11
cmp byte [ecx], 0x77
jmp 0x539e0b
test edx, edx
jne 0x53c8a8
mov eax, dword [ebp - 0x90]
mov dword [edi + 0x90], eax
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x539d30
mov edx, dword [ebp - 0xa8]
test edx, edx
jne 0x539e79
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 0x98]
mov edx, dword [ebp - 0xbc]
mov dword [ecx + eax], edx
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0xb4]
mov dword [ecx + eax + 4], edx
mov ecx, dword [edi + 0x10]
sub ecx, dword [ebp - 0x94]
mov eax, dword [edi + 0xc]
mov edx, dword [ebp - 0xb0]
mov dword [eax + ecx*4], edx
mov edx, dword [ebp - 0xa8]
cmp dword [ebp - 0xa0], 0
jne 0x53908d
test edx, edx
je case.0x53c61e.14
add ebx, 3
jmp 0x538f50
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x539ea0
jmp 0x539e79
movzx ecx, byte [ebx + 1]
mov edx, ebx
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov dword [ebp - 0x80], edx
mov al, byte [edx]
cmp al, 0x88
jae 0x539ee0
cmp al, 0x81
je 0x539ee0
mov dword [ebp - 0xa0], 0
jmp 0x539efd
mov ecx, dword [ebp - 0xa4]
mov ecx, dword [ecx + 4]
mov dword [ebp - 0xa0], ecx
mov ecx, dword [ebp - 0xa4]
mov ecx, dword [ecx]
mov dword [ebp - 0xa4], ecx
cmp al, 0x7d
jb 0x539f09
cmp al, 0x80
jbe 0x53bf27
cmp al, 0x82
je 0x53bf27
cmp al, 0x85
je 0x539f25
cmp al, 0x8a
je 0x539f25
cmp al, 0x86
je 0x539f25
cmp al, 0x8b
jne 0x53a00a
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [edi + 0xa4]
mov dword [ebp - 0xb4], ecx
lea edx, [ecx + ecx]
mov dword [ebp - 0x90], edx
test eax, eax
je 0x539f54
cmp dword [eax + 4], ecx
je 0x53be36
mov eax, dword [edi + 0x90]
and eax, 0xffff0000
or eax, ecx
mov ecx, dword [ebp - 0x8c]
mov dword [edi + 0x90], eax
cmp edx, dword [edi + 0x14]
jl 0x539f85
or eax, 0x10000
mov dword [edi + 0x90], eax
mov edx, dword [ebp - 0x80]
jmp 0x53a010
cmp edx, ecx
jle 0x539fd4
mov eax, dword [edi + 0xc]
lea ecx, [eax + ecx*4]
lea eax, [eax + edx*4]
xor edx, edx
mov dword [ebp - 0x94], eax
sub dword [ebp - 0x94], ecx
add dword [ebp - 0x94], 3
shr dword [ebp - 0x94], 2
cmp ecx, eax
mov eax, dword [ebp - 0x94]
cmova eax, edx
test eax, eax
je 0x539fce
nop dword [eax]
inc edx
mov dword [ecx], 0xffffffff
lea ecx, [ecx + 4]
cmp edx, eax
jb 0x539fc0
mov edx, dword [ebp - 0x90]
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
sub eax, dword [ebp - 0xb4]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, esi
mov eax, dword [edi + 0xc]
sub ecx, dword [edi + 0x74]
mov dword [eax + edx*4 + 4], ecx
mov ecx, dword [ebp - 0x8c]
cmp ecx, edx
jg 0x539f7d
lea ecx, [edx + 2]
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x8c], ecx
jmp 0x53a010
mov ecx, dword [ebp - 0x8c]
mov al, byte [ebx]
cmp al, 0x7b
je 0x53befc
cmp al, 0x78
je 0x53a02a
cmp esi, dword [ebp - 0xa0]
jne 0x53bb7b
cmp byte [edx], 0x81
je 0x53beb5
add ebx, 3
jmp 0x538f50
cmp dword [edi + 0x44], 0
je case.0x538f7f.1
cmp esi, dword [edi + 0x74]
je case.0x53c61e.14
cmp esi, dword [edi + 0x74]
jne case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp dword [edi + 0x44], 0
je 0x53a068
cmp esi, dword [edi + 0x74]
je case.0x53c61e.14
mov ecx, dword [edi + 0x74]
cmp esi, ecx
je 0x53a0d4
cmp esi, dword [edi + 0x78]
je case.0x53c61e.14
mov edx, dword [edi + 0x18]
test edx, edx
je 0x53a0a6
cmp esi, ecx
jbe case.0x53c61e.14
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0053e040
add esp, 0x14
test eax, eax
je case.0x53c61e.14
inc ebx
jmp 0x538f50
mov edx, dword [edi + 0x1c]
lea eax, [ecx + edx]
cmp esi, eax
jb case.0x53c61e.14
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [edi + 0x34]
jne case.0x53c61e.14
cmp edx, 1
je 0x53a0d4
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x35]
jne case.0x53c61e.14
inc ebx
jmp 0x538f50
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp esi, eax
jne case.0x53c61e.14
inc ebx
jmp 0x538f50
mov dword [ebp - 0x9c], esi
inc ebx
jmp 0x538f50
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x53a1ab
mov edx, dword [edi + 0x18]
lea ecx, [edi + 0x1c]
test edx, edx
je 0x53a185
push 0
push ecx
push eax
push edx
push esi
call fcn.0053dfc0
add esp, 0x14
test eax, eax
jne 0x53a0d4
lea ecx, [edi + 0x1c]
mov edx, dword [edi + 0x88]
test edx, edx
je case.0x53c61e.14
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb case.0x53c61e.14
cmp dword [edi + 0x18], 0
jne case.0x53c61e.14
cmp dword [ecx], 2
jne case.0x53c61e.14
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x53c61e.14
mov dword [edi + 0x64], 1
cmp edx, 1
jle case.0x53c61e.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov edx, dword [ecx]
sub eax, edx
cmp esi, eax
ja 0x53a127
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x53a127
cmp edx, 1
je 0x53a0d4
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
jne 0x53a127
inc ebx
jmp 0x538f50
cmp dword [edi + 0x48], 0
jne case.0x53c61e.14
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53a0d4
cmp esi, dword [edi + 0x84]
jbe 0x53a0d4
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
inc ebx
jmp 0x538f50
cmp dword [edi + 0x48], 0
jne case.0x53c61e.14
cmp dword [edi + 0x58], 0
je case.0x538f7f.23
cmp esi, dword [edi + 0x78]
jb case.0x53c61e.14
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53a0d4
cmp esi, dword [edi + 0x84]
jbe 0x53a0d4
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
inc ebx
jmp 0x538f50
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x53a28b
mov edx, dword [edi + 0x18]
lea ecx, [edi + 0x1c]
test edx, edx
je 0x53a256
push 0
push ecx
push eax
push edx
push esi
call fcn.0053dfc0
add esp, 0x14
test eax, eax
je 0x53bf58
lea ecx, [edi + 0x1c]
jmp 0x53a27e
mov edx, dword [ecx]
sub eax, edx
cmp esi, eax
ja 0x53bf58
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x53bf58
cmp edx, 1
je 0x53a27e
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
jne 0x53bf58
mov eax, dword [edi + 0x78]
sub eax, dword [ecx]
cmp esi, eax
jne 0x53bf58
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53a0d4
cmp esi, dword [edi + 0x84]
jbe 0x53a0d4
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x74]
jne 0x53a2c4
xor edx, edx
jmp 0x53a2e6
cmp esi, dword [edi + 0x84]
ja 0x53a2d5
lea eax, [esi - 1]
mov dword [edi + 0x84], eax
mov ecx, dword [edi + 0x40]
movzx eax, byte [esi - 1]
movzx edx, byte [eax + ecx]
shr edx, 4
and edx, 1
cmp esi, dword [edi + 0x78]
jb 0x53a311
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53a30d
cmp esi, dword [edi + 0x84]
jbe 0x53a30d
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
xor ecx, ecx
jmp 0x53a321
mov ecx, dword [edi + 0x40]
movzx eax, byte [esi]
movzx ecx, byte [eax + ecx]
shr ecx, 4
and ecx, 1
mov al, byte [ebx]
xor edx, ecx
inc ebx
cmp al, 5
jne 0x53a32d
xor edx, 1
test edx, edx
je 0x538f50
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov edx, dword [edi + 0x18]
test edx, edx
je 0x53a371
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x53a399
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0053dfc0
add esp, 0x14
test eax, eax
jne case.0x53c61e.14
jmp 0x53a399
mov eax, dword [edi + 0x78]
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x53a399
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x53a399
cmp ecx, 1
je case.0x53c61e.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x53c61e.14
mov ecx, dword [edi + 0x88]
test ecx, ecx
je case.0x538f7f.13
mov eax, dword [edi + 0x78]
dec eax
cmp esi, eax
jne case.0x538f7f.13
cmp dword [edi + 0x18], 0
jne case.0x538f7f.13
cmp dword [edi + 0x1c], 2
jne case.0x538f7f.13
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x538f7f.13
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x53a16f
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
inc esi
inc ebx
mov dword [ebp - 0x84], esi
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x84], esi
test byte [ecx + eax], 4
jne case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x84], esi
test byte [ecx + eax], 4
je case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x84], esi
test byte [ecx + eax], 1
jne case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x84], esi
test byte [ecx + eax], 1
je case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x84], esi
test byte [ecx + eax], 0x10
jne case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
inc esi
mov eax, dword [edi + 0x40]
mov dword [ebp - 0x84], esi
test byte [ecx + eax], 0x10
je case.0x53c61e.14
inc ebx
jmp 0x538f50
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 0xd
ja 0x53a548
je 0x53a4fe
cmp eax, 0xa
je 0x53a0d4
jbe case.0x53c61e.14
cmp eax, 0xc
ja case.0x53c61e.14
jmp 0x53a553
cmp esi, ecx
jb 0x53a532
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53a0d4
cmp esi, dword [edi + 0x84]
jbe 0x53a0d4
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
inc ebx
jmp 0x538f50
cmp byte [esi], 0xa
jne 0x53a0d4
inc esi
inc ebx
mov dword [ebp - 0x84], esi
jmp 0x538f50
cmp eax, 0x85
jne case.0x53c61e.14
cmp dword [edi + 0x68], 0
jne case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 0xa0
ja 0x53a0d4
je case.0x53c61e.14
cmp eax, 9
je case.0x53c61e.14
cmp eax, 0x20
je case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 0xa0
ja case.0x53c61e.14
je 0x53a0d4
cmp eax, 9
je 0x53a0d4
cmp eax, 0x20
jne case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 0x85
ja 0x53a0d4
je case.0x53c61e.14
cmp eax, 0xa
jb 0x53a0d4
cmp eax, 0xd
jbe case.0x53c61e.14
inc ebx
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 0x85
ja case.0x53c61e.14
je 0x53a0d4
add eax, 0xfffffff6
cmp eax, 3
ja case.0x53c61e.14
inc ebx
jmp 0x538f50
movzx ecx, byte [ebx + 3]
xor eax, eax
cmp edx, 0x74
movzx edx, byte [ebx + 1]
sete al
shl ecx, 8
mov dword [ebp - 0x88], eax
movzx eax, byte [ebx + 4]
or ecx, eax
shl edx, 8
movzx eax, byte [ebx + 2]
add ebx, 5
or edx, eax
mov dword [ebp - 0x94], ecx
imul edx, dword [edi + 0x24]
mov eax, dword [edi + 0x50]
add edx, dword [edi + 0x30]
neg eax
sbb eax, eax
xor ecx, ecx
neg eax
mov dword [ebp - 0xa0], ecx
dec eax
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x94]
test eax, eax
je 0x53a6dd
movzx ecx, byte [edx + 1]
dec eax
mov dword [ebp - 0x94], eax
movzx eax, byte [edx]
shl eax, 8
or ecx, eax
add ecx, ecx
mov dword [ebp - 0xa0], ecx
cmp ecx, dword [ebp - 0x8c]
jge 0x53a6d0
mov eax, dword [edi + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x53a70b
add edx, dword [edi + 0x24]
mov eax, dword [ebp - 0x94]
test eax, eax
jg 0x53a6a4
mov edx, dword [ebp - 0x80]
mov al, byte [ebx]
mov byte [ebp - 0xa9], al
movzx eax, al
mov dword [ebp - 0xb0], eax
add eax, 0xffffff9e
cmp eax, 7
ja case.default.0x53a704
movzx eax, byte [eax + 0x53cee0]
jmp dword [eax*4 + 0x53ced8]
mov eax, dword [edi + 0xc]
mov edx, dword [eax + ecx*4 + 4]
sub edx, dword [eax + ecx*4]
mov dword [ebp - 0x80], edx
jmp 0x53a6e0
movzx ecx, byte [ebx + 1]
xor eax, eax
cmp edx, 0x72
sete al
shl ecx, 8
mov dword [ebp - 0x88], eax
movzx eax, byte [ebx + 2]
add ebx, 3
or ecx, eax
add ecx, ecx
mov dword [ebp - 0xa0], ecx
cmp ecx, dword [ebp - 0x8c]
jge 0x53a75d
mov eax, dword [edi + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x53a75d
mov edx, dword [eax + ecx*4 + 4]
sub edx, dword [eax + ecx*4]
mov dword [ebp - 0x80], edx
jmp 0x53a6e0
mov edx, dword [edi + 0x50]
neg edx
sbb edx, edx
neg edx
dec edx
mov dword [ebp - 0x80], edx
jmp 0x53a6e0
mov eax, dword [ebp - 0xb0]
lea edx, [eax - 0x62]
and edx, 1
mov dword [ebp - 0x90], edx
movsx edx, byte [eax + 0x5addce]
movsx eax, byte [eax + 0x5addda]
test eax, eax
cmove eax, dword [ebp - 0xb8]
mov dword [ebp - 0x94], eax
mov eax, 1
jmp 0x53a7f3
movzx edx, byte [ebx + 1]
xor eax, eax
cmp byte [ebp - 0xa9], 0x69
sete al
shl edx, 8
mov dword [ebp - 0x90], eax
movzx eax, byte [ebx + 2]
or edx, eax
movzx eax, byte [ebx + 3]
shl eax, 8
mov dword [ebp - 0x94], eax
movzx eax, byte [ebx + 4]
or dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
cmove eax, dword [ebp - 0xb8]
mov dword [ebp - 0x94], eax
mov eax, 5
add ebx, eax
mov dword [ebp - 0xa8], edx
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0xb0], ebx
test eax, eax
je 0x538f50
jns 0x53a81c
test edx, edx
je 0x538f50
mov ebx, 1
cmp edx, ebx
jl 0x53a85b
push dword [ebp - 0x88]
push edi
push eax
push esi
push ecx
call fcn.0053d0e0
add esp, 0x14
test eax, eax
js 0x53bff7
mov edx, dword [ebp - 0xa8]
add esi, eax
mov ecx, dword [ebp - 0xa0]
inc ebx
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x84], esi
cmp ebx, edx
jle 0x53a825
mov ecx, dword [ebp - 0x94]
cmp edx, ecx
jne 0x53c018
mov ebx, dword [ebp - 0xb0]
jmp 0x538f50
push dword [ebp - 0x88]
push edi
push edx
push esi
push ecx
call fcn.0053d0e0
add esp, 0x14
test eax, eax
js 0x53c1b7
add esi, eax
mov dword [ebp - 0x84], esi
jmp 0x538f50
mov cl, byte [ebx + 0x21]
lea eax, [ebx + 1]
add ebx, 0x21
movzx edx, cl
mov dword [ebp - 0x88], eax
lea eax, [edx - 0x62]
cmp eax, 0xb
ja case.default.0x53a8c0
movzx eax, byte [eax + 0x53cef0]
jmp dword [eax*4 + 0x53cee8]
lea ecx, [edx - 0x62]
inc ebx
cmp ecx, 8
sbb eax, eax
inc eax
mov dword [ebp - 0xa8], eax
mov eax, ecx
and eax, 1
cmp ecx, 8
sbb edx, edx
and edx, eax
movsx eax, byte [ecx + 0x5ade3c]
mov dword [ebp - 0x94], edx
test eax, eax
movsx edx, byte [ecx + 0x5ade30]
mov ecx, SysReAllocString
cmove eax, ecx
mov dword [ebp - 0xa0], eax
jmp 0x53a961
movzx edx, byte [ebx + 1]
xor eax, eax
cmp cl, 0x69
sete al
mov dword [ebp - 0x94], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [ebx + 3]
sete al
shl edx, 8
mov dword [ebp - 0xa8], eax
movzx eax, byte [ebx + 2]
or edx, eax
shl ecx, 8
movzx eax, byte [ebx + 4]
or ecx, eax
mov eax, SysReAllocString
cmove ecx, eax
add ebx, 5
mov dword [ebp - 0xa0], ecx
jmp 0x53a961
mov dword [ebp - 0xa0], 1
mov edx, 1
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x53a9b8
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x88]
mov dword [ebp - 0x84], esi
test byte [edx + ecx], al
je case.0x53c61e.14
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x53a973
mov eax, dword [ebp - 0xa0]
cmp edx, eax
je 0x538f50
cmp dword [ebp - 0x94], 0
jne 0x53c1db
mov ecx, esi
mov dword [ebp - 0x94], ecx
cmp edx, eax
jge 0x53aa42
nop
cmp esi, dword [edi + 0x78]
jae 0x53aa1a
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
shr edx, 3
and ecx, 7
shl eax, cl
mov ecx, dword [ebp - 0x88]
test byte [edx + ecx], al
je 0x53aa3c
mov edx, dword [ebp - 0x80]
inc esi
inc edx
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x80], edx
cmp edx, dword [ebp - 0xa0]
jl 0x53a9e0
jmp 0x53aa3c
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53aa3c
cmp esi, dword [edi + 0x84]
jbe 0x53aa3c
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
mov ecx, dword [ebp - 0x94]
cmp dword [ebp - 0xa8], 0
jne 0x538f50
cmp esi, ecx
jb case.0x53c61e.14
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
dec esi
cmp esi, dword [ebp - 0x94]
jae 0x53aa57
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x78]
sub eax, esi
cmp eax, 1
jl 0x53bfb7
mov al, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp byte [ebx + 1], al
jne case.0x53c61e.14
add ebx, 2
jmp 0x538f50
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
mov edx, dword [edi + 0x38]
movzx eax, byte [ebx + 1]
movzx ecx, byte [esi]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.0x53c61e.14
inc esi
add ebx, 2
mov dword [ebp - 0x84], esi
jmp 0x538f50
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, 3
mov dword [ebp - 0x88], ecx
mov edx, ecx
jmp 0x53abe3
mov dword [ebp - 0xa8], 1
movzx eax, byte [ebx + 1]
xor edx, edx
shl eax, 8
mov dword [ebp - 0x88], eax
movzx eax, byte [ebx + 2]
or dword [ebp - 0x88], eax
mov dword [ebp - 0x98], edx
cmp cl, 0x28
je 0x53ab47
mov dword [ebp - 0x94], edx
cmp cl, 0x35
jne 0x53ab51
mov dword [ebp - 0x94], 1
add ebx, 3
jmp 0x53abe9
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x88], SysReAllocString
inc ebx
jmp 0x53abe3
mov dword [ebp - 0xa8], 1
mov edx, 1
mov dword [ebp - 0x88], SysReAllocString
inc ebx
jmp 0x53abe3
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x88], 1
inc ebx
jmp 0x53abe3
cmp edx, 0x2e
mov ecx, edx
sbb eax, eax
inc ebx
and eax, 0xfffffff3
add eax, 0x2e
sub ecx, eax
mov eax, ecx
and eax, 1
mov dword [ebp - 0x94], eax
movsx eax, byte [ecx + 0x5ade3c]
movsx edx, byte [ecx + 0x5ade30]
test eax, eax
mov ecx, SysReAllocString
cmove eax, ecx
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x98], edx
movzx ecx, byte [ebx]
inc ebx
cmp dword [ebp - 0x80], 0x2e
mov dword [ebp - 0xa0], ecx
jb 0x53ad0b
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
mov dword [ebp - 0x90], eax
cmp edx, 1
jl 0x53ac46
mov ecx, 1
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
cmp dword [ebp - 0xa0], eax
je 0x53ac34
cmp dword [ebp - 0x90], eax
jne case.0x53c61e.14
inc esi
inc ecx
mov dword [ebp - 0x84], esi
cmp ecx, edx
jle 0x53ac14
mov ecx, dword [ebp - 0xa0]
cmp edx, dword [ebp - 0x88]
je 0x538f50
cmp dword [ebp - 0x94], 0
jne 0x53c284
mov eax, esi
mov dword [ebp - 0x80], eax
cmp edx, dword [ebp - 0x88]
jge 0x53acbb
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x53ac96
movzx eax, byte [esi]
cmp ecx, eax
je 0x53ac84
cmp dword [ebp - 0x90], eax
jne 0x53acb8
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53ac70
jmp 0x53acb8
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53acb8
cmp esi, dword [edi + 0x84]
jbe 0x53acb8
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0xa8], 0
jne 0x538f50
cmp esi, eax
je 0x53bc5a
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
dec esi
add esp, 0x1c
mov dword [ebp - 0x84], esi
test eax, eax
jne 0x53ccbb
cmp esi, dword [ebp - 0x80]
jne 0x53acd0
jmp 0x53bc5a
mov ecx, 1
cmp edx, ecx
jl 0x53ad38
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp dword [ebp - 0xa0], eax
jne case.0x53c61e.14
inc ecx
cmp ecx, edx
jle 0x53ad14
mov ecx, dword [ebp - 0x88]
cmp edx, ecx
je 0x538f50
cmp dword [ebp - 0x94], 0
jne 0x53c321
mov eax, esi
mov dword [ebp - 0x80], eax
cmp edx, ecx
jge 0x53ada6
mov ecx, dword [edi + 0x78]
nop
cmp esi, ecx
jae 0x53ad81
movzx eax, byte [esi]
cmp dword [ebp - 0xa0], eax
jne 0x53ada3
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53ad60
jmp 0x53ada3
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53ada3
cmp esi, dword [edi + 0x84]
jbe 0x53ada3
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0xa8], 0
jne 0x538f50
cmp esi, eax
je 0x53bc5a
nop dword [eax + eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
dec esi
add esp, 0x1c
mov dword [ebp - 0x84], esi
test eax, eax
jne 0x53ccbb
cmp esi, dword [ebp - 0x80]
jne 0x53adc0
jmp 0x53bc5a
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx edx, byte [esi]
inc esi
movzx ecx, byte [ebx + 1]
mov dword [ebp - 0x84], esi
cmp ecx, edx
je case.0x53c61e.14
cmp dword [ebp - 0x80], 0x20
jne 0x53ae2f
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
cmp eax, edx
je case.0x53c61e.14
add ebx, 2
jmp 0x538f50
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, 3
mov dword [ebp - 0x88], ecx
mov edx, ecx
jmp 0x53af46
movzx eax, byte [ebx + 1]
xor edx, edx
shl eax, 8
mov dword [ebp - 0x88], eax
movzx eax, byte [ebx + 2]
or dword [ebp - 0x88], eax
mov dword [ebp - 0x98], edx
cmp cl, 0x42
je 0x53ae83
mov dword [ebp - 0x94], edx
cmp cl, 0x4f
jne 0x53ae8d
mov dword [ebp - 0x94], 1
add ebx, 3
jmp 0x53af4c
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x88], SysReAllocString
inc ebx
jmp 0x53af46
mov dword [ebp - 0xa8], 1
mov edx, 1
mov dword [ebp - 0x88], SysReAllocString
inc ebx
jmp 0x53af46
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x88], 1
inc ebx
jmp 0x53af46
movzx ecx, byte [ebx + 1]
xor edx, edx
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x88], ecx
add ebx, 3
jmp 0x53af46
cmp edx, 0x48
mov ecx, edx
sbb eax, eax
inc ebx
and eax, 0xfffffff3
add eax, 0x48
sub ecx, eax
mov eax, ecx
and eax, 1
mov dword [ebp - 0x94], eax
movsx eax, byte [ecx + 0x5ade3c]
movsx edx, byte [ecx + 0x5ade30]
test eax, eax
mov ecx, SysReAllocString
cmove eax, ecx
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x98], edx
movzx ecx, byte [ebx]
inc ebx
cmp dword [ebp - 0x80], 0x48
mov dword [ebp - 0xa0], ecx
jb 0x53b06b
mov eax, dword [edi + 0x3c]
movzx eax, byte [eax + ecx]
mov ecx, 1
mov dword [ebp - 0x90], eax
cmp edx, ecx
jl 0x53afa6
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
cmp dword [ebp - 0xa0], eax
je case.0x53c61e.14
cmp dword [ebp - 0x90], eax
je case.0x53c61e.14
inc esi
inc ecx
mov dword [ebp - 0x84], esi
cmp ecx, edx
jle 0x53af76
mov eax, dword [ebp - 0x88]
cmp edx, eax
je 0x538f50
cmp dword [ebp - 0x94], 0
jne 0x53c3b9
mov ecx, esi
mov dword [ebp - 0x80], ecx
cmp edx, eax
jge 0x53b01b
mov ecx, dword [ebp - 0xa0]
cmp esi, dword [edi + 0x78]
jae 0x53aff6
movzx eax, byte [esi]
cmp ecx, eax
je 0x53b018
cmp dword [ebp - 0x90], eax
je 0x53b018
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53afd0
jmp 0x53b018
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53b018
cmp esi, dword [edi + 0x84]
jbe 0x53b018
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
mov ecx, dword [ebp - 0x80]
cmp dword [ebp - 0xa8], 0
jne 0x538f50
cmp esi, ecx
je 0x53bc5a
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
dec esi
mov dword [ebp - 0x84], esi
cmp esi, dword [ebp - 0x80]
jne 0x53b030
jmp 0x53bc5a
mov ecx, 1
cmp edx, ecx
jl 0x53b098
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp dword [ebp - 0xa0], eax
je case.0x53c61e.14
inc ecx
cmp ecx, edx
jle 0x53b074
mov ecx, dword [ebp - 0x88]
cmp edx, ecx
je 0x538f50
cmp dword [ebp - 0x94], 0
jne 0x53c458
mov eax, esi
mov dword [ebp - 0x80], eax
cmp edx, ecx
jge 0x53b106
mov ecx, dword [edi + 0x78]
nop
cmp esi, ecx
jae 0x53b0e1
movzx eax, byte [esi]
cmp dword [ebp - 0xa0], eax
je 0x53b103
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53b0c0
jmp 0x53b103
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53b103
cmp esi, dword [edi + 0x84]
jbe 0x53b103
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0xa8], 0
jne 0x538f50
cmp esi, eax
je 0x53bc5a
nop dword [eax + eax]
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
dec esi
mov dword [ebp - 0x84], esi
cmp esi, dword [ebp - 0x80]
jne 0x53b120
jmp 0x53bc5a
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x94], 1
mov dword [ebp - 0x88], ecx
mov edx, ecx
add ebx, 3
jmp 0x53b256
movzx eax, byte [ebx + 1]
xor edx, edx
shl eax, 8
mov dword [ebp - 0x88], eax
movzx eax, byte [ebx + 2]
or dword [ebp - 0x88], eax
xor eax, eax
cmp cl, 0x5c
sete al
add ebx, 3
mov dword [ebp - 0x94], eax
jmp 0x53b256
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x88], SysReAllocString
inc ebx
jmp 0x53b256
mov dword [ebp - 0xa8], 1
mov edx, 1
mov dword [ebp - 0x88], SysReAllocString
inc ebx
jmp 0x53b256
xor edx, edx
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x88], 1
inc ebx
jmp 0x53b256
movzx ecx, byte [ebx + 1]
xor edx, edx
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xa8], 1
mov dword [ebp - 0x88], ecx
add ebx, 3
jmp 0x53b256
lea eax, [edx - 0x55]
inc ebx
movsx edx, byte [eax + 0x5ade30]
mov ecx, eax
movsx eax, byte [eax + 0x5ade3c]
and ecx, 1
mov dword [ebp - 0x94], ecx
test eax, eax
mov ecx, SysReAllocString
cmove eax, ecx
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x80], edx
movzx eax, byte [ebx]
inc ebx
mov dword [ebp - 0x98], eax
test edx, edx
jle 0x53b69e
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x53c5b5.15
jmp dword [eax*4 + 0x53cefc]
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x53b698
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x53bfb7
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x53b2c1
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0053dfc0
add esp, 0x14
test eax, eax
jne case.0x53c61e.14
mov edx, dword [ebp - 0x80]
jmp 0x53b2e6
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x53b2e6
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x53b2e6
cmp ecx, 1
je case.0x53c61e.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x53c61e.14
mov ecx, dword [edi + 0x88]
test ecx, ecx
je 0x53b31b
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb 0x53b31b
cmp dword [edi + 0x18], 0
jne 0x53b31b
cmp dword [edi + 0x1c], 2
jne 0x53b31b
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x53b31b
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x53a16f
mov ecx, dword [ebp - 0x90]
inc esi
inc ecx
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x90], ecx
cmp ecx, edx
jle 0x53b291
jmp 0x53b698
mov eax, dword [edi + 0x78]
sub eax, edx
cmp esi, eax
ja 0x53bfb7
add esi, edx
mov dword [ebp - 0x84], esi
jmp 0x53b698
mov ecx, 1
cmp edx, ecx
jl 0x53b698
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
sub eax, 0xa
mov dword [ebp - 0x84], esi
cmp eax, 0x7b
ja case.0x53c61e.14
movzx eax, byte [eax + 0x53cf4c]
jmp dword [eax*4 + 0x53cf3c]
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x53b3b4
cmp byte [esi], 0xa
jne 0x53b3b4
inc esi
mov dword [ebp - 0x84], esi
jmp 0x53b3b4
cmp dword [edi + 0x68], 0
jne case.0x53c61e.14
mov eax, dword [edi + 0x78]
inc ecx
cmp ecx, edx
jle 0x53b366
jmp 0x53b698
mov ecx, 1
cmp edx, ecx
jl 0x53b698
nop dword [eax + eax]
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 9
je case.0x53c61e.14
cmp eax, 0x20
je case.0x53c61e.14
cmp eax, 0xa0
je case.0x53c61e.14
inc ecx
cmp ecx, edx
jle 0x53b3d0
jmp 0x53b698
mov ecx, 1
cmp edx, ecx
jl 0x53b698
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 9
je 0x53b43f
cmp eax, 0x20
je 0x53b43f
cmp eax, 0xa0
jne case.0x53c61e.14
inc ecx
cmp ecx, edx
jle 0x53b417
jmp 0x53b698
mov ecx, 1
cmp edx, ecx
jl 0x53b698
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 0xa
jb 0x53b482
cmp eax, 0xd
jbe case.0x53c61e.14
cmp eax, 0x85
je case.0x53c61e.14
inc ecx
cmp ecx, edx
jle 0x53b456
jmp 0x53b698
mov ecx, 1
cmp edx, ecx
jl 0x53b698
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
mov dword [ebp - 0x84], esi
cmp eax, 0xa
jb case.0x53c61e.14
cmp eax, 0xd
jbe 0x53b4cc
cmp eax, 0x85
jne case.0x53c61e.14
inc ecx
cmp ecx, edx
jle 0x53b4a0
jmp 0x53b698
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x53b698
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne case.0x53c61e.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x53b4f0
jmp 0x53b698
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x53b698
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
je case.0x53c61e.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x53b540
jmp 0x53b698
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x53b698
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jne case.0x53c61e.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x53b590
jmp 0x53b698
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x53b698
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je case.0x53c61e.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x53b5e0
jmp 0x53b698
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x53b698
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne case.0x53c61e.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x53b625
jmp 0x53b698
mov dword [ebp - 0x90], 1
cmp edx, 1
jl 0x53b698
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je case.0x53c61e.14
mov eax, dword [ebp - 0x90]
inc esi
inc eax
mov dword [ebp - 0x84], esi
mov dword [ebp - 0x90], eax
cmp eax, edx
jle 0x53b667
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x88]
cmp edx, ecx
je 0x538f50
cmp dword [ebp - 0x94], 0
jne 0x53c501
add eax, 0xfffffffa
mov dword [ebp - 0xa0], esi
cmp eax, 0xf
ja case.0x53c5b5.15
jmp dword [eax*4 + 0x53cfc8]
cmp edx, ecx
jge 0x53b7cc
nop word [eax + eax]
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x53b7aa
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x53b710
push 0
lea edx, [edi + 0x1c]
push edx
push eax
push ecx
push esi
call fcn.0053dfc0
add esp, 0x14
test eax, eax
jne 0x53b7cc
mov edx, dword [ebp - 0x80]
jmp 0x53b735
mov ecx, dword [edi + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x53b735
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x53b735
cmp ecx, 1
je 0x53b7cc
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je 0x53b7cc
mov ecx, dword [edi + 0x88]
test ecx, ecx
je 0x53b76a
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb 0x53b76a
cmp dword [edi + 0x18], 0
jne 0x53b76a
cmp dword [edi + 0x1c], 2
jne 0x53b76a
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x53b76a
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x53a16f
mov ecx, dword [ebp - 0x88]
inc edx
inc esi
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x84], esi
cmp edx, ecx
jl 0x53b6e0
jmp 0x53b7cc
sub ecx, edx
mov dword [ebp - 0x88], ecx
mov ecx, dword [edi + 0x78]
mov eax, ecx
mov edx, dword [ebp - 0x88]
sub eax, esi
cmp edx, eax
jbe 0x53b847
mov esi, ecx
mov dword [ebp - 0x84], esi
mov eax, dword [edi + 0x88]
test eax, eax
je 0x53b7cc
cmp esi, dword [edi + 0x84]
jbe 0x53b7cc
mov dword [edi + 0x64], 1
cmp eax, 1
jg 0x53a16f
cmp dword [ebp - 0xa8], 0
jne 0x538f50
cmp esi, dword [ebp - 0xa0]
je 0x53bc5a
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov ecx, dword [ebp - 0xa0]
dec esi
cmp dword [ebp - 0x98], 0x11
mov dword [ebp - 0x84], esi
jne 0x53b83e
cmp esi, ecx
jbe 0x53b840
cmp byte [esi], 0xa
jne 0x53b83e
cmp byte [esi - 1], 0xd
lea eax, [esi - 1]
cmove esi, eax
mov dword [ebp - 0x84], esi
cmp esi, ecx
jne 0x53b7e5
jmp 0x53bc5a
add esi, edx
mov dword [ebp - 0x84], esi
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
mov eax, dword [edi + 0x78]
nop
mov ecx, esi
cmp esi, eax
jae 0x53b7aa
movzx eax, byte [esi]
cmp eax, 0xd
jne 0x53b88c
mov eax, dword [edi + 0x78]
inc esi
mov dword [ebp - 0x84], esi
cmp esi, eax
jae 0x53b7cc
cmp byte [esi], 0xa
cmovne esi, ecx
jmp 0x53b8b3
cmp eax, 0xa
je 0x53b8b0
cmp dword [edi + 0x68], 0
jne 0x53b7cc
cmp eax, 0xb
je 0x53b8b0
cmp eax, 0xc
je 0x53b8b0
cmp eax, 0x85
jne 0x53b7cc
mov eax, dword [edi + 0x78]
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53b860
mov dword [ebp - 0x84], esi
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
mov ecx, dword [edi + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x53b7aa
mov al, byte [esi]
cmp al, 9
je 0x53b7cc
cmp al, 0x20
je 0x53b7cc
cmp al, 0xa0
je 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53b8e0
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x53b7aa
mov al, byte [esi]
cmp al, 9
je 0x53b93c
cmp al, 0x20
je 0x53b93c
cmp al, 0xa0
jne 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53b922
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
mov ecx, dword [edi + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x53b7aa
mov al, byte [esi]
cmp al, 0xa
jb 0x53b97e
cmp al, 0xd
jbe 0x53b7cc
cmp al, 0x85
je 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53b960
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
mov ecx, dword [edi + 0x78]
nop
cmp esi, ecx
jae 0x53b7aa
mov al, byte [esi]
cmp al, 0xa
jb 0x53b7cc
cmp al, 0xd
jbe 0x53b9be
cmp al, 0x85
jne 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53b9a0
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
nop dword [eax + eax]
cmp esi, dword [edi + 0x78]
jae 0x53b7aa
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53b9e0
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
cmp esi, dword [edi + 0x78]
jae 0x53b7aa
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
je 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53ba16
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x53b7aa
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jne 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53ba50
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
cmp esi, dword [edi + 0x78]
jae 0x53b7aa
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
je 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53ba86
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
nop dword [eax]
cmp esi, dword [edi + 0x78]
jae 0x53b7aa
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53bac0
jmp 0x53b7cc
cmp edx, ecx
jge 0x53b7cc
cmp esi, dword [edi + 0x78]
jae 0x53b7aa
movzx ecx, byte [esi]
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je 0x53b7cc
inc esi
inc edx
mov dword [ebp - 0x84], esi
cmp edx, dword [ebp - 0x88]
jl 0x53baf6
jmp 0x53b7cc
mov eax, dword [ebp + 0x20]
inc eax
cmp byte [ebx], 0x7a
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push edx
jne 0x53bb5c
lea eax, [ebx + 3]
push eax
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov ebx, dword [ebp - 0x90]
jmp 0x53bc5a
push dword [ebp - 0x90]
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
add ebx, 3
jmp 0x53bc5a
mov eax, dword [ebp + 0x20]
inc eax
cmp byte [ebx], 0x7a
push eax
push dword [ebp - 0xa4]
push edi
push ecx
push dword [ebp - 0x9c]
jne 0x53bbc2
lea eax, [ebx + 3]
push eax
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov ebx, dword [ebp - 0x80]
mov al, byte [ebx]
cmp al, 0x81
je 0x53be5b
cmp al, 0x88
jae 0x53946f
jmp 0x53bc5a
push edx
push esi
call fcn.00538e70
add esp, 0x1c
cmp eax, 0xfffffc1b
jne 0x53bbe4
mov ecx, dword [ebp - 0x80]
cmp dword [edi + 0xb4], ecx
jne 0x53ccbb
jmp 0x53bbef
test eax, eax
jne 0x53ccbb
mov ecx, dword [ebp - 0x80]
cmp byte [ecx], 0x81
je 0x53bea1
add ebx, 3
jmp 0x53bc5a
movzx edx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0x94], edx
lea eax, [edx + edx]
mov dword [ebp - 0xbc], eax
cmp eax, dword [edi + 0x14]
jl 0x53c74d
mov edx, dword [ebp - 0x80]
cmp edx, 0x88
jae 0x53bc70
cmp edx, 0x81
je 0x53bc70
cmp dword [edi + 0x6c], 0
jne 0x53bc7a
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + ebx], 0x77
je 0x53bc7a
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x5ade60]
add ebx, eax
mov eax, dword [edi]
cmp eax, dword [edi + 4]
jae 0x53ccb4
mov ecx, dword [ebp - 0xa4]
jmp 0x538f10
mov dword [edi + 0x98], 2
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xb0], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
push eax
push esi
call fcn.00538e70
add esp, 0x1c
mov dword [ebp - 0xbc], eax
cmp eax, 0xfffffc20
jne 0x53bcf5
movzx edx, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl edx, 8
or edx, ecx
add edx, ebx
cmp dword [edi + 0x7c], edx
jae 0x53ccbb
cmp byte [ebx], 0x77
je 0x53bcfd
cmp byte [edx], 0x77
jne 0x53ccbb
jmp 0x53bcfd
test eax, eax
jne 0x53c8bb
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0xb0]
add ebx, ecx
mov dword [edi + 0xac], eax
cmp byte [ebx], 0x77
jne case.0x53c61e.14
mov eax, dword [ebp - 0xb4]
mov dword [edi + 0x90], eax
jmp 0x53bc22
mov eax, dword [ebp + 0x20]
movzx ecx, byte [ebx + 1]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
lea eax, [ebx + 2]
mov dword [edi + 0x7c], eax
mov eax, 0xfffffc1f
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
sub eax, 1
je case.0x53c61e.14
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffe6
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xd4]
mov dword [edi + 0xa4], eax
mov eax, dword [ebp - 0xcc]
lea ecx, [ebp - 0x7c]
cmp eax, ecx
je case.0x53c61e.14
push eax
call dword [0x60c7c8]
add esp, 4
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0xcc]
lea edx, [ebp - 0x7c]
cmp ecx, edx
je 0x53ccbb
push ecx
call dword [0x60c7c8]
mov eax, dword [ebp - 0x90]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffffa
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x9c]
mov dword [edi + 0x80], esi
mov dword [edi + 0x7c], eax
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov dword [edi + 0xb4], ebx
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
jmp 0x53bec2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push ecx
push dword [ebp - 0x9c]
lea eax, [ebx + 3]
push eax
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov eax, dword [ebp - 0x80]
mov dword [edi + 0xb4], eax
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x9c]
mov dword [edi + 0x7c], eax
mov eax, 0xfffffc1a
mov dword [edi + 0x80], esi
mov dword [edi + 0x8c], ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x8c]
mov dword [edi + 0x8c], eax
mov eax, dword [ebp - 0x9c]
mov dword [edi + 0x80], esi
mov dword [edi + 0x7c], eax
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 0x88]
test ecx, ecx
je case.0x53c61e.14
lea eax, [esi + 1]
cmp eax, dword [edi + 0x78]
jb case.0x53c61e.14
cmp dword [edi + 0x18], 0
jne case.0x53c61e.14
cmp dword [edi + 0x1c], 2
jne case.0x53c61e.14
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne case.0x53c61e.14
mov dword [edi + 0x64], 1
cmp ecx, 1
jle case.0x53c61e.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x53c61e.14
cmp esi, dword [edi + 0x84]
jbe case.0x53c61e.14
mov dword [edi + 0x64], 1
cmp eax, 1
jle case.0x53c61e.14
pop edi
pop esi
mov eax, 0xfffffff4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
cmp eax, 0xfffffffe
jne 0x53bfff
mov esi, dword [edi + 0x78]
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x53c61e.14
cmp esi, dword [edi + 0x78]
jb case.0x53c61e.14
jmp 0x53bfc5
cmp dword [ebp - 0x90], 0
je 0x53c0f2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push dword [ebp - 0x98]
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov ebx, dword [ebp - 0xa0]
nop word [eax + eax]
mov eax, dword [ebp - 0x94]
cmp dword [ebp - 0xa8], eax
jge case.0x53c61e.14
push dword [ebp - 0x88]
push edi
push dword [ebp - 0x80]
push esi
push ebx
call fcn.0053d0e0
add esp, 0x14
test eax, eax
js 0x53c0ce
inc dword [ebp - 0xa8]
add esi, eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push dword [ebp - 0x98]
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
je 0x53c060
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
cmp eax, 0xfffffffe
jne 0x53c0d6
mov esi, dword [edi + 0x78]
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x53c61e.14
cmp esi, dword [edi + 0x78]
jb case.0x53c61e.14
jmp 0x53bfc5
mov ebx, esi
mov dword [ebp - 0xb0], ebx
cmp edx, ecx
jge 0x53c170
mov ebx, dword [ebp - 0xa0]
push dword [ebp - 0x88]
push edi
push eax
push esi
push ebx
call fcn.0053d0e0
add esp, 0x14
test eax, eax
js 0x53c136
add esi, eax
mov eax, dword [ebp - 0xa8]
inc eax
cmp eax, dword [ebp - 0x94]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x80]
jl 0x53c104
jmp 0x53c160
cmp eax, 0xfffffffe
jne 0x53c160
mov ecx, dword [edi + 0x88]
test ecx, ecx
je 0x53c160
mov eax, dword [edi + 0x78]
cmp eax, dword [edi + 0x84]
jbe 0x53c160
mov dword [edi + 0x64], 1
cmp ecx, 1
jg 0x53a16f
mov ebx, dword [ebp - 0xb0]
cmp esi, ebx
jb case.0x53c61e.14
nop
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push dword [ebp - 0x98]
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
sub esi, dword [ebp - 0x80]
cmp esi, ebx
jae 0x53c170
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
cmp eax, 0xfffffffe
jne 0x53c1bf
mov esi, dword [edi + 0x78]
mov eax, dword [edi + 0x88]
test eax, eax
je case.0x53c61e.14
cmp esi, dword [edi + 0x78]
jb case.0x53c61e.14
jmp 0x53bfc5
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
nop word [eax + eax]
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0x80], eax
jge case.0x53c61e.14
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx edx, byte [esi]
mov eax, 1
mov ecx, edx
inc esi
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x88]
test byte [edx + ecx], al
je case.0x53c61e.14
mov eax, dword [ebp + 0x20]
inc dword [ebp - 0x80]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
je 0x53c210
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
nop
mov eax, dword [ebp - 0x98]
cmp eax, dword [ebp - 0x88]
jge case.0x53c61e.14
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
cmp dword [ebp - 0xa0], ecx
je 0x53c2e2
cmp dword [ebp - 0x90], ecx
jne case.0x53c61e.14
inc eax
inc esi
mov dword [ebp - 0x98], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
je 0x53c2b0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
nop dword [eax + eax]
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x88]
jge case.0x53c61e.14
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0xa0], eax
jne case.0x53c61e.14
mov eax, dword [ebp + 0x20]
inc ecx
inc eax
mov dword [ebp - 0x98], ecx
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
je 0x53c350
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov eax, dword [ebp - 0x98]
cmp eax, dword [ebp - 0x88]
jge case.0x53c61e.14
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx ecx, byte [esi]
cmp dword [ebp - 0xa0], ecx
je case.0x53c61e.14
cmp dword [ebp - 0x90], ecx
je case.0x53c61e.14
inc eax
inc esi
mov dword [ebp - 0x98], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
je 0x53c3e3
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x88]
jge case.0x53c61e.14
cmp esi, dword [edi + 0x78]
jae 0x53bfb7
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0xa0], eax
je case.0x53c61e.14
mov eax, dword [ebp + 0x20]
inc ecx
inc eax
mov dword [ebp - 0x98], ecx
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
je 0x53c482
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffff2
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
nop dword [eax + eax]
mov ecx, dword [ebp - 0x80]
cmp ecx, dword [ebp - 0x88]
jge case.0x53c61e.14
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x53bfb7
mov eax, dword [ebp - 0x98]
cmp eax, 0xc
jne 0x53c5a5
cmp dword [edi + 0x18], 0
je 0x53c57b
push 0
lea eax, [edi + 0x1c]
push eax
push edx
push dword [edi + 0x18]
push esi
call fcn.0053dfc0
add esp, 0x14
test eax, eax
jne case.0x53c61e.14
mov ecx, dword [ebp - 0x80]
jmp 0x53c59f
sub edx, dword [edi + 0x1c]
cmp esi, edx
ja 0x53c5a5
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x53c59f
cmp dword [edi + 0x1c], 1
je case.0x53c61e.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x53c61e.14
mov eax, dword [ebp - 0x98]
movzx edx, byte [esi]
add eax, 0xfffffffa
inc esi
cmp eax, 0xf
ja case.0x53c5b5.15
jmp dword [eax*4 + 0x53d008]
cmp dword [edi + 0x88], 0
je case.0x53c5b5.13
cmp esi, dword [edi + 0x78]
jb case.0x53c5b5.13
cmp dword [edi + 0x18], 0
jne case.0x53c5b5.13
cmp dword [edi + 0x1c], 2
jne case.0x53c5b5.13
movzx eax, byte [edi + 0x34]
cmp edx, eax
jne case.0x53c5b5.13
cmp dword [edi + 0x88], 1
mov dword [edi + 0x64], 1
jg 0x53a16f
jmp case.0x53c5b5.13
add edx, 0xfffffff6
cmp edx, 0x7b
ja case.0x53c61e.14
movzx eax, byte [edx + 0x53d058]
jmp dword [eax*4 + 0x53d048]
cmp esi, dword [edi + 0x78]
jae case.0x53c5b5.13
cmp byte [esi], 0xa
jne case.0x53c5b5.13
inc esi
jmp case.0x53c5b5.13
cmp dword [edi + 0x68], 0
jne case.0x53c61e.14
jmp case.0x53c5b5.13
cmp edx, 9
je case.0x53c61e.14
cmp edx, 0x20
je case.0x53c61e.14
cmp edx, 0xa0
jmp 0x53c708
cmp edx, 9
je case.0x53c5b5.13
cmp edx, 0x20
je case.0x53c5b5.13
cmp edx, 0xa0
jne case.0x53c61e.14
jmp case.0x53c5b5.13
cmp edx, 0xa
jb case.0x53c5b5.13
cmp edx, 0xd
jbe case.0x53c61e.14
cmp edx, 0x85
jmp 0x53c708
cmp edx, 0xa
jb case.0x53c61e.14
cmp edx, 0xd
jbe case.0x53c5b5.13
cmp edx, 0x85
jne case.0x53c61e.14
jmp case.0x53c5b5.13
mov eax, dword [edi + 0x40]
test byte [edx + eax], 4
jne case.0x53c61e.14
jmp case.0x53c5b5.13
mov eax, dword [edi + 0x40]
test byte [edx + eax], 4
jmp 0x53c708
mov eax, dword [edi + 0x40]
test byte [edx + eax], 1
jne case.0x53c61e.14
jmp case.0x53c5b5.13
mov eax, dword [edi + 0x40]
test byte [edx + eax], 1
jmp 0x53c708
mov eax, dword [edi + 0x40]
test byte [edx + eax], 0x10
jne case.0x53c61e.14
jmp case.0x53c5b5.13
mov eax, dword [edi + 0x40]
test byte [edx + eax], 0x10
je case.0x53c61e.14
mov eax, dword [ebp + 0x20]
inc ecx
inc eax
mov dword [ebp - 0x80], ecx
push eax
push dword [ebp - 0xa4]
push edi
push dword [ebp - 0x8c]
push dword [ebp - 0x9c]
push ebx
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
je 0x53c530
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov ecx, dword [edi + 0xc]
mov esi, dword [ecx + eax*4]
mov eax, dword [ecx + eax*4 + 4]
mov dword [ebp - 0xa0], eax
mov eax, dword [edi + 0x10]
sub eax, edx
mov dword [ebp - 0x90], esi
mov esi, dword [ebp - 0x84]
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
mov dword [ebp - 0xa8], eax
mov eax, dword [edi + 0x90]
mov dword [ebp - 0xb0], eax
mov eax, dword [edi + 0xac]
mov dword [ebp - 0xb4], eax
mov eax, esi
sub eax, dword [edi + 0x74]
mov dword [ecx], eax
nop dword [eax + eax]
cmp dword [ebp - 0x80], 0x88
jb 0x53c7b3
mov dword [edi + 0x98], 2
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
push eax
push esi
call fcn.00538e70
mov edx, eax
add esp, 0x1c
mov dword [ebp - 0xb8], edx
cmp edx, 0xfffffc1b
je 0x53c85b
cmp edx, 0xfffffc20
jne 0x53c823
movzx edx, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
shl edx, 8
or edx, ecx
add edx, ebx
cmp dword [edi + 0x7c], edx
jae 0x53c8a2
cmp byte [ebx], 0x77
je 0x53c81f
cmp byte [edx], 0x77
jne 0x53c8a2
xor edx, edx
jmp 0x53c82b
test edx, edx
jne 0x53c8a8
mov eax, dword [ebp - 0xb0]
mov dword [edi + 0x90], eax
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0xb4]
add ebx, ecx
mov dword [edi + 0xac], eax
cmp byte [ebx], 0x77
je 0x53c7a0
mov eax, dword [edi + 0xc]
mov ecx, dword [ebp - 0xbc]
mov ebx, dword [ebp - 0x90]
mov esi, dword [ebp - 0xa0]
mov dword [eax + ecx*4], ebx
mov eax, dword [edi + 0xc]
mov dword [eax + ecx*4 + 4], esi
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0xc]
sub ecx, dword [ebp - 0x94]
mov esi, dword [ebp - 0xa8]
pop edi
mov dword [eax + ecx*4], esi
mov eax, edx
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0xb8]
pop edi
pop esi
mov eax, edx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
cmp eax, 0xfffffc1b
jne 0x53ccbb
mov cl, byte [ebx]
cmp cl, 0x81
je 0x53c8fb
cmp cl, 0x77
jne 0x53c8e6
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x53c8d2
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0xbc]
sub ebx, ecx
xor ecx, ecx
cmp dword [edi + 0xb4], ebx
pop edi
pop esi
cmove eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
lea eax, [ebx + 2]
mov dword [edi + 0xac], 0
mov dword [edi + 0xb0], eax
movzx ecx, byte [ebx + 1]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.00538e70
mov ecx, eax
add esp, 0x1c
mov dword [ebp - 0xb4], ecx
cmp ecx, 1
je 0x53c979
cmp ecx, 0xfffffc19
jne 0x53c99e
cmp dword [edi + 0xac], 0
jne 0x53c99e
lea eax, [ebx + 2]
mov dword [edi + 0xac], eax
mov eax, ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
cmp ecx, 0xfffffc1f
jne 0x53c9e3
mov ecx, dword [edi + 0x7c]
mov eax, dword [ebp - 0xb0]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x53c9d0
test dl, dl
je 0x53c9cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x53c9d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x53c9b0
xor eax, eax
jmp 0x53c9d5
sbb eax, eax
or eax, 1
test eax, eax
je 0x53cb45
mov ecx, dword [ebp - 0xb4]
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
push eax
push esi
call fcn.00538e70
add esp, 0x1c
mov ecx, 0xfffffc1c
test eax, eax
cmovne ecx, eax
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
push eax
push esi
call fcn.00538e70
add esp, 0x1c
mov ecx, 0xfffffc1d
test eax, eax
cmovne ecx, eax
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
lea eax, [ebx + 2]
mov dword [edi + 0xac], 0
mov dword [edi + 0xb0], eax
mov eax, dword [ebp + 0x20]
movzx ecx, byte [ebx + 1]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.00538e70
mov ecx, eax
add esp, 0x1c
cmp ecx, 1
je 0x53cae2
cmp ecx, 0xfffffc19
jne 0x53caf4
cmp dword [edi + 0xac], 0
jne 0x53caf4
lea eax, [ebx + 2]
mov dword [edi + 0xac], eax
pop edi
test ecx, ecx
mov eax, 0xfffffc1d
pop esi
cmovne eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
push eax
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov dword [edi + 0x7c], esi
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x20]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
push eax
push esi
call fcn.00538e70
add esp, 0x1c
test eax, eax
jne 0x53ccbb
mov dword [edi + 0x7c], ebx
mov eax, 0xfffffc20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
lea eax, [ebx + 2]
mov dword [edi + 0xac], 0
mov dword [edi + 0xb0], eax
mov eax, dword [ebp + 0x20]
movzx ecx, byte [ebx + 1]
inc eax
push eax
push dword [ebp - 0xa4]
movzx eax, byte [ebx]
push edi
push dword [ebp - 0x8c]
movzx eax, byte [eax + 0x5ade60]
push dword [ebp - 0x9c]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.00538e70
add esp, 0x1c
cmp eax, 1
je 0x53cc00
cmp eax, 0xfffffc19
jne 0x53cb8c
cmp dword [edi + 0xac], 0
jne 0x53cb8c
lea ecx, [ebx + 2]
mov dword [edi + 0xac], ecx
jmp 0x53cb8c
mov ecx, dword [ebp - 0x9c]
cmp esi, ecx
jne 0x53cc53
cmp edx, 0x9f
je 0x53cc53
cmp dword [edi + 0xa4], 0
jne 0x53cc53
cmp dword [edi + 0x5c], 0
jne case.0x53c61e.14
cmp dword [edi + 0x60], 0
je 0x53cc53
mov eax, dword [edi + 0x94]
add eax, dword [edi + 0x74]
cmp ecx, eax
je case.0x53c61e.14
mov eax, dword [ebp - 0x8c]
test edx, edx
mov dword [edi + 0x8c], eax
mov eax, 0xfffffc19
mov dword [edi + 0x80], esi
mov dword [edi + 0x7c], ecx
mov ecx, 1
pop edi
pop esi
cmove eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffffb
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffeb
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00553cca
mov esp, ebp
pop ebp
ret
inc dword [edi]
mov eax, 0xfffffff8
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00553cca
mov esp, ebp
pop ebp
ret