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

Disassembly:
sub esp, 0x7a4
mov ecx, dword [esp + 0x7a8]
mov eax, dword [0x100b4368]
mov edx, dword [ecx + 0x40]
mov dword [esp + 0x7a0], eax
mov eax, dword [ecx + 4]
mov dword [esp + 0xc], eax
mov eax, dword [ecx + 0x44]
push ebx
mov ebx, dword [ecx + 0x14]
mov dword [esp + 4], eax
mov eax, dword [ecx + 0x4c]
push ebp
mov dword [esp + 0x30], edx
mov edx, dword [ecx + 0x48]
mov dword [esp + 0x2c], eax
mov byte [esp + 0x4f], 0xff
mov eax, dword [ecx + 0x30]
xor ebp, ebp
cmp eax, ebp
push esi
push edi
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], ebp
jl 0x1007385c
lea esp, [esp]
mov edi, dword [esp + 0x18]
movzx ecx, word [edi + ebp*2]
mov edx, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov esi, dword [edx + ecx*4 + 8]
lea ecx, [edx + ecx*4]
add esi, ebx
test ebp, ebp
mov dword [esp + 0x50], esi
mov esi, dword [esp + 0x10]
mov dword [esp + 0x30], ecx
lea edx, [esi + ebp - 1]
jg 0x100715c0
lea edx, [esp + 0x57]
cmp ebp, eax
mov dword [esp + 0x28], edx
jge 0x100715d2
lea eax, [esi + ebp + 1]
mov dword [esp + 0x2c], eax
jmp 0x100715da
lea edx, [esp + 0x57]
mov dword [esp + 0x2c], edx
mov eax, dword [esp + 0x38]
mov edx, dword [eax + ebp*4]
mov eax, dword [0x100bba90]
cmp edx, dword [eax + 0x14]
jne 0x10071648
cmp byte [esi + ebp], 8
jne 0x10071648
test ebp, ebp
jle 0x1007164a
mov edx, dword [esp + 0x28]
cmp byte [edx], 3
jne 0x10071648
mov eax, dword [esp + 0x34]
mov dl, byte [eax + ebp - 1]
test dl, dl
jne 0x10071648
mov byte [esi + ebp], 4
mov edx, dword [ecx + 8]
mov byte [ebx + edx], 1
mov eax, dword [ecx + 8]
mov byte [eax + ebx + 1], 4
mov edx, dword [ecx + 8]
mov byte [edx + ebx + 2], 0
movzx eax, word [edi + ebp*2 - 2]
mov edx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 8]
mov edx, dword [ecx + 8]
mov al, byte [eax + ebx + 3]
mov byte [edx + ebx + 3], al
mov ecx, dword [ecx + 8]
mov byte [ecx + ebx + 4], 0x61
test ebp, ebp
je 0x1007165c
mov edx, dword [esp + 0x34]
mov al, byte [edx + ebp - 1]
test al, al
je 0x1007186a
cmp byte [esi + ebp], 3
jne 0x1007186a
mov eax, dword [esp + 0x2c]
mov dl, byte [eax]
cmp dl, 4
je 0x1007167a
cmp dl, 1
jne 0x1007186a
movzx edi, word [edi + ebp*2]
mov esi, dword [esp + 0x7b8]
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0x14]
lea edi, [edi + edi*4]
mov edi, dword [eax + edi*4 + 8]
add edi, ecx
mov dword [esp + 0x48], edi
mov edi, dword [esp + 0x18]
movzx edi, word [edi + ebp*2 + 2]
lea edi, [edi + edi*4]
mov edi, dword [eax + edi*4 + 8]
add edi, ecx
cmp dl, 1
je 0x100716c2
cmp dl, 4
jne 0x10071866
cmp byte [edi + 4], 0x69
jne 0x10071866
mov edx, dword [esi + 0x48]
movzx edx, word [edx + ebp*2]
mov ecx, dword [esi + 0x2f8]
lea edx, [edx + edx*4]
lea eax, [eax + edx*4]
mov edx, dword [ecx + 0x320]
push edx
lea edx, [esp + 0x64]
push edx
movzx dx, byte [eax]
mov eax, dword [eax + 0x10]
push 0x100a6245
push 0x3e8
push edx
push eax
push ecx
call fcn.1005ef70
add esp, 0x1c
test ax, ax
je 0x10071866
mov ecx, dword [esp + 0x48]
mov al, byte [edi + 3]
mov cl, byte [ecx + 3]
mov dl, al
mov byte [esp + 0x27], cl
shr dl, 6
shr cl, 6
cmp cl, dl
je 0x1007172c
test cl, cl
je 0x1007172c
test dl, dl
jne 0x10071866
mov cl, byte [esp + 0x27]
shr al, 2
shr cl, 2
and al, 3
and cl, 3
cmp cl, al
je 0x1007174b
test cl, cl
je 0x1007174b
test al, al
jne 0x10071866
mov eax, dword [esi + 0x2f8]
and dword [eax + 0x32c], 0xfffffffc
mov eax, dword [esi + 0x2f8]
and dword [eax + 0x32c], 0xffffffe7
mov eax, dword [esi + 0x2f8]
and dword [eax + 0x32c], 0xfffffffb
mov edx, dword [esi + 0x2f8]
add edx, 0x110
push edx
lea eax, [esp + 0x1b4]
push 0xffffffffffffffff
push eax
call fcn.100839e0
mov edx, dword [esi + 0x2f8]
lea ecx, [esp + 0x1bc]
push ecx
push edx
call fcn.100a5245
mov eax, dword [esi + 0x2f8]
mov cl, byte [eax + 0x10]
and cl, 0xe0
add esp, 0x14
cmp cl, 0x20
jne 0x10071866
mov dl, byte [eax + 0x13]
and dl, 0xc0
cmp dl, 0x40
je 0x10071866
mov eax, dword [esi + 0x48]
movzx edi, word [eax + ebp*2]
mov ecx, dword [esi + 0x40]
mov edx, dword [esp + 0x60]
mov dword [ecx + ebp*4], edx
mov eax, dword [esi + 0x44]
mov byte [eax + ebp], 5
mov eax, dword [esi + 0x2f8]
mov cl, byte [eax + 0x10]
and cl, 0xe0
cmp cl, 0x20
setne dl
dec dl
push ebp
push 0
push edi
push 0xffffffffffffffff
and edx, 0xc8
mov byte [eax], dl
mov eax, dword [esi + 0x2f8]
add eax, 0x10
push eax
movzx eax, byte [eax]
and eax, 0xffffffe0
push eax
push esi
call fcn.100658c0
mov edx, dword [esi + 4]
movzx eax, ax
lea ecx, [edi + edi*4]
mov edi, dword [esi + 0xf8]
mov dword [edx + ecx*4 + 8], edi
mov edx, dword [esi + 0xf8]
add edx, eax
mov eax, dword [esp + 0x34]
mov dword [esi + 0xf8], edx
movzx eax, word [eax + ebp*2]
mov edx, dword [esi + 4]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov ecx, dword [esi + 0x14]
add esp, 0x1c
add eax, ecx
mov byte [eax + 8], 0x50
mov byte [eax + 9], 1
mov byte [eax + 3], 0x31
jmp case.default.0x10073271
mov esi, dword [esp + 0x10]
cmp byte [esi + ebp], 5
jne 0x10072347
mov eax, dword [esp + 0x50]
cmp byte [eax + 4], 0x65
jne 0x10072347
mov ecx, eax
mov al, byte [ecx + 7]
cmp al, 0x41
je 0x10071893
cmp al, 0x43
jne 0x10072347
mov edx, dword [esp + 0x30]
mov esi, dword [edx + 0x10]
mov edi, str.sono
mov ecx, 5
xor edx, edx
mov dword [esp + 0x40], esi
repe cmpsb byte [esi], byte es:[edi]
jne 0x10071cf8
cmp al, 0x43
mov dword [esp + 0x3c], edx
jne 0x1007191c
mov ecx, dword [esp + 0x7b8]
mov ecx, dword [ecx + 0x30]
lea eax, [ebp + 1]
cmp eax, ecx
jg 0x100718ea
mov edx, dword [esp + 0x10]
nop
cmp byte [eax + edx], 5
je 0x100718dd
inc eax
cmp eax, ecx
jle 0x100718d0
jmp 0x100718ea
mov edx, dword [esp + 0x18]
mov ax, word [edx + eax*2]
mov word [esp + 0x20], ax
movsx eax, word [esp + 0x20]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*4]
movzx ecx, byte [eax]
mov edx, dword [eax + 0x10]
mov al, byte [edx + ecx - 1]
cmp al, 0x61
je 0x1007190f
cmp al, 0x6f
jne 0x10072347
mov eax, dword [esp + 0x50]
mov byte [eax + 3], 0x31
jmp 0x10072347
lea eax, [ebp - 1]
test eax, eax
jle 0x10071936
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + eax*4]
mov ecx, dword [0x100bba90]
cmp edx, dword [ecx + 0xc]
jne 0x10071936
dec eax
mov edx, dword [esp + 0x2c]
mov cl, byte [edx]
cmp cl, 3
je 0x1007194b
cmp cl, 4
je 0x1007194b
cmp cl, 1
jne 0x10071970
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + ebp*2 + 2]
mov edi, dword [esp + 0x1c]
lea edx, [ecx + ecx*4]
mov ecx, dword [edi + edx*4 + 8]
mov dl, byte [ecx + ebx + 3]
and dl, 0xc
cmp dl, 4
jne 0x10071974
jmp 0x10071a33
mov edi, dword [esp + 0x1c]
test eax, eax
jle 0x100719b2
mov ecx, dword [esp + 0x10]
mov cl, byte [eax + ecx]
cmp cl, 3
je 0x10071989
cmp cl, 4
jne 0x100719b2
mov edx, dword [esp + 0x18]
movzx ecx, word [edx + eax*2]
lea ecx, [ecx + ecx*4]
mov edx, dword [edi + ecx*4 + 8]
mov cl, byte [edx + ebx + 3]
and cl, 0xc
cmp cl, 4
jne 0x100719b2
mov edx, dword [esp + 0x34]
cmp byte [eax + edx], 0
je 0x10071a33
cmp eax, 1
jle 0x10071a78
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx - 1], 3
jne 0x10071a78
mov edx, dword [esp + 0x18]
movzx ecx, word [edx + eax*2 - 2]
lea ecx, [ecx + ecx*4]
mov edx, dword [edi + ecx*4 + 8]
mov cl, byte [edx + ebx + 3]
and cl, 0xc
cmp cl, 4
jne 0x10071a78
mov edx, dword [esp + 0x34]
cmp byte [eax + edx], 0
jne 0x10071a78
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + eax*2]
lea edx, [ecx + ecx*4]
mov esi, dword [edi + edx*4 + 0x10]
mov edi, 0x100a7454
mov ecx, 3
xor edx, edx
mov dword [esp + 0x48], esi
repe cmpsb byte [esi], byte es:[edi]
je 0x10071a2f
mov esi, dword [esp + 0x48]
mov edi, 0x100a777c
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x10071a74
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp], 0
mov dword [esp + 0x3c], 0x7d0
jne 0x10071a78
mov edx, dword [esp + 0x2c]
cmp byte [edx], 1
jne 0x10071a78
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + ebp*2 + 2]
lea edx, [ecx + ecx*4]
mov ecx, dword [edi + edx*4 + 8]
mov dl, byte [ecx + ebx + 3]
and dl, 0xc
cmp dl, 8
jne 0x10071a78
mov dword [esp + 0x3c], 0
jmp 0x10071a78
mov edi, dword [esp + 0x1c]
test ax, ax
mov edx, eax
mov dword [esp + 0x20], edx
jl 0x10071ad2
mov esi, dword [esp + 0x18]
jmp 0x10071a90
mov ecx, dword [esp + 0x10]
movsx eax, dx
mov cl, byte [eax + ecx]
cmp cl, 5
jbe 0x10071aa7
cmp cl, 8
jne 0x10071ac9
cmp cl, 5
jne 0x10071abb
movzx eax, word [esi + eax*2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
cmp byte [ecx + ebx + 8], 0x50
jne 0x10071ac9
dec edx
test dx, dx
jge 0x10071a90
mov dword [esp + 0x20], edx
xor esi, esi
jmp 0x10071ada
test dx, dx
mov dword [esp + 0x20], edx
jge 0x10071ad6
xor esi, esi
jmp 0x10071ada
movsx esi, dx
inc esi
cmp dword [esp + 0x3c], 0x7d0
jne 0x10071ae7
lea esi, [ebp + 5]
xor eax, eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x4c], eax
lea eax, [ebp + 4]
cmp esi, eax
jge 0x10071ca1
mov edx, dword [esp + 0x7b8]
mov eax, dword [edx + 0x30]
mov dword [esp + 0x50], eax
lea ebx, [ebx]
cmp esi, dword [esp + 0x50]
jg 0x10071ca1
cmp esi, ebp
jle 0x10071b34
lea ecx, [ebp + 3]
cmp esi, ecx
jge 0x10071b34
mov dword [esp + 0x40], 0x1e
mov edx, 0xa
jmp 0x10071b3d
mov edx, 0xa
mov dword [esp + 0x40], edx
cmp esi, ebp
jle 0x10071b65
mov eax, dword [esp + 0x10]
cmp byte [esi + eax], 5
jne 0x10071b65
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + esi*2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
cmp byte [ecx + ebx + 8], 0x50
jne 0x10071ca1
mov eax, dword [esp + 0x10]
mov al, byte [esi + eax]
cmp al, 8
mov byte [esp + 0x27], al
jne 0x10071be5
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + esi*2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
lea eax, [ecx + ebx]
mov cl, byte [eax + 5]
mov al, byte [eax + 4]
cmp al, 0x31
jne 0x10071bbe
mov eax, dword [esp + 0x4c]
add eax, edx
cmp cl, 0x73
mov dword [esp + 0x4c], eax
jne 0x10071bab
add eax, 0x5a
mov dword [esp + 0x4c], eax
jmp 0x10071c95
cmp cl, 0x76
jne 0x10071c95
add dword [esp + 0x4c], 0x28
jmp 0x10071c95
cmp al, 0x36
jne 0x10071c95
mov eax, dword [esp + 0x3c]
add eax, edx
cmp cl, 0x73
mov dword [esp + 0x3c], eax
jne 0x10071c95
add eax, 0x5a
mov dword [esp + 0x3c], eax
jmp 0x10071c95
cmp al, 1
je 0x10071c0e
mov edx, dword [esp + 0x7b8]
push esi
push edx
call fcn.1005a340
add esp, 8
test al, al
jne 0x10071c0e
mov al, byte [esp + 0x27]
cmp al, 3
je 0x10071c0e
cmp al, 4
jne 0x10071c91
xor ecx, ecx
test esi, esi
jle 0x10071c2c
mov eax, dword [esp + 0x10]
cmp byte [esi + eax - 1], 2
jne 0x10071c2c
mov eax, dword [esp + 0x40]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x40], eax
mov edx, dword [esp + 0x18]
movzx eax, word [edx + esi*2]
mov edi, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov edx, dword [edi + eax*4 + 8]
mov al, byte [edx + ebx + 3]
and al, 0xc
cmp esi, ebp
jge 0x10071c6b
cmp byte [esp + 0x27], 1
jne 0x10071c6b
mov edx, dword [esp + 0x10]
cmp byte [esi + edx + 1], 3
jne 0x10071c6b
test esi, esi
jle 0x10071c6b
cmp byte [esi + edx - 1], 2
je 0x10071c6b
mov ecx, 0x64
cmp al, 4
jne 0x10071c7b
mov eax, dword [esp + 0x40]
add ecx, eax
add dword [esp + 0x3c], ecx
jmp 0x10071c95
cmp al, 8
jne 0x10071c95
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x4c]
add ecx, edx
add eax, ecx
mov dword [esp + 0x4c], eax
jmp 0x10071c95
mov edi, dword [esp + 0x1c]
inc esi
lea eax, [ebp + 4]
cmp esi, eax
jl 0x10071b10
test ebp, ebp
jle 0x10071cd9
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp - 1], 0x2c
jne 0x10071cd9
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 4
jne 0x10071cd9
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 + 2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
mov dl, byte [ecx + ebx + 3]
and dl, 0xc
cmp dl, 4
jne 0x10071cd9
xor eax, eax
jmp 0x10071cdd
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x3c]
jle 0x10072347
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
mov byte [ecx + ebx + 3], 0x31
jmp 0x10072347
cmp al, 0x43
ja 0x100721b6
mov esi, dword [esp + 0x40]
mov edi, 0x100a63dc
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x100721b6
mov eax, dword [esp + 0x2c]
mov dl, byte [eax]
cmp dl, 5
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov byte [esp + 0x17], dl
jne 0x10071d5d
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
cmp byte [eax + ebx + 8], 0x46
je 0x10071d5d
test ebp, ebp
jle 0x100721b6
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp - 1], 0x2c
jne 0x100721b6
mov ecx, dword [esp + 0x1c]
cmp ebp, 1
jle 0x10071da8
mov edi, dword [esp + 0x34]
mov al, byte [edi + ebp - 1]
cmp al, 0x3b
je 0x100720c6
cmp al, 0x2c
je 0x100720c6
cmp byte [edi + ebp - 2], 0x2c
jne 0x10071d8e
mov eax, dword [esp + 0x28]
cmp byte [eax], 8
jne 0x100720c6
mov eax, dword [esp + 0x28]
cmp byte [eax], 1
mov edi, dword [esp + 0x10]
jne 0x10071dac
cmp byte [edi + ebp - 2], 6
jne 0x100720c6
jmp 0x10071dac
mov edi, dword [esp + 0x10]
test ebp, ebp
jle 0x10071e12
mov edx, dword [esp + 0x28]
mov dl, byte [edx]
cmp dl, 3
jne 0x10071df2
cmp byte [esp + 0x17], 4
jne 0x10071dd8
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov al, byte [eax + ebx + 3]
and al, 0xc
cmp al, 4
jne 0x10071df2
movzx eax, word [esi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov al, byte [eax + ebx + 3]
and al, 0xc
cmp al, 4
je 0x100720c6
cmp dl, 5
jne 0x10071e0e
movzx eax, word [esi + ebp*2 - 2]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 + 8]
cmp byte [eax + ebx + 5], 0x73
jne 0x100720c6
mov dl, byte [esp + 0x17]
cmp ebp, 1
jle 0x10071e6e
mov dl, byte [edi + ebp - 2]
cmp dl, 5
jne 0x10071e2d
mov eax, dword [esp + 0x28]
cmp byte [eax], 3
je 0x100720c6
mov eax, dword [esp + 0x28]
cmp byte [eax], 6
jne 0x10071e6a
movzx eax, word [esi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
cmp byte [eax + ebx + 3], 0x63
jne 0x10071e6a
cmp dl, 3
jne 0x10071e6a
movzx eax, word [esi + ebp*2 - 4]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 + 8]
mov cl, byte [eax + ebx + 3]
and cl, 0xc
cmp cl, 4
je 0x100720c6
mov dl, byte [esp + 0x17]
test ebp, ebp
jne 0x10071e7d
cmp byte [edi + 1], 6
jne 0x10071e8e
jmp 0x100720c6
jle 0x10071e8e
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp - 1], 0x3b
je 0x100720c6
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp - 1], 0x3a
jne 0x10071eab
cmp dl, 6
je 0x100720c6
cmp dl, 2
je 0x100720c6
test ebp, ebp
jle 0x10071f26
mov edx, dword [esp + 0x28]
cmp byte [edx], 8
jne 0x10071f08
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 - 2]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov cl, byte [eax + ebx + 4]
add eax, ebx
cmp cl, 0x33
jbe 0x10071ee2
mov al, byte [eax + 5]
cmp al, 0x70
je 0x10071ee2
cmp al, 0x74
jne 0x10071f08
cmp ebp, 1
jle 0x10071ef5
mov cl, byte [edi + ebp - 2]
cmp cl, byte [edi + ebp + 1]
je 0x10071faa
mov dl, byte [edi + ebp - 1]
cmp dl, byte [edi + ebp + 1]
je 0x10071faa
jmp 0x10072347
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + ebp*4 - 4]
mov edx, dword [0x100bba90]
cmp ecx, dword [edx + 0x80]
je 0x10072347
mov edi, dword [esp + 0x10]
lea eax, [ebp - 1]
lea ecx, [ebp - 0xb]
cmp eax, ecx
jl 0x10071faa
mov ecx, dword [esp + 0x10]
lea esi, [eax + edi]
mov edi, dword [esp + 0x34]
sub edi, ecx
mov dword [esp + 0x48], edi
test eax, eax
jl 0x10071fa6
mov dl, byte [esi]
cmp dl, 5
jne 0x10071f80
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + eax*2]
mov edi, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
add ecx, ebx
cmp byte [ecx + 8], 0x46
je 0x10071f7c
cmp byte [ecx + 5], 0x73
jne 0x100720c6
lea ecx, [ebp - 1]
cmp eax, ecx
jne 0x100720c6
mov edi, dword [esp + 0x48]
cmp dl, 6
je 0x10071fa6
cmp byte [edi + esi], 0
jne 0x10071fa6
mov edx, dword [esp + 0x38]
mov ecx, dword [edx + eax*4]
mov edx, dword [0x100bba90]
cmp ecx, dword [edx + 0x20]
je 0x10071fa6
dec eax
lea ecx, [ebp - 0xb]
dec esi
cmp eax, ecx
jge 0x10071f41
mov edi, dword [esp + 0x10]
lea eax, [ebp - 1]
lea ecx, [ebp - 9]
cmp eax, ecx
jl 0x10071ff1
test eax, eax
jl 0x10071ff1
cmp byte [eax + edi], 6
jne 0x10071fe9
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + eax*2]
lea edx, [ecx + ecx*4]
mov ecx, dword [esp + 0x1c]
mov esi, dword [ecx + edx*4 + 0x10]
mov edi, 0x100a63dc
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x100720c6
mov edi, dword [esp + 0x10]
dec eax
lea ecx, [ebp - 9]
cmp eax, ecx
jge 0x10071fb4
lea eax, [ebp + 1]
lea ecx, [ebp + 5]
cmp eax, ecx
jg 0x10072347
mov ecx, dword [esp + 0x7b8]
mov edx, dword [ecx + 0x30]
mov dword [esp + 0x50], edx
lea ecx, [ecx]
cmp eax, dword [esp + 0x50]
jg 0x10072347
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + eax*2]
lea edx, [ecx + ecx*4]
mov ecx, dword [esp + 0x1c]
lea ecx, [ecx + edx*4]
cmp byte [ecx], 3
jne 0x1007206c
mov ecx, dword [ecx + 0x10]
mov dword [esp + 0x48], ecx
mov esi, ecx
mov edi, 0x100a7080
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x1007205e
mov esi, dword [esp + 0x48]
mov edi, 0x100a63dc
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x1007206c
mov esi, dword [esp + 0x10]
mov cl, byte [esp + 0x17]
cmp cl, byte [eax + esi + 1]
je 0x10072087
mov edx, dword [esp + 0x34]
cmp byte [eax + edx], 0
jne 0x10072347
inc eax
lea ecx, [ebp + 5]
cmp eax, ecx
jle 0x10072010
jmp 0x10072347
lea ecx, [ebp + 5]
cmp eax, ecx
jne 0x100720c6
mov al, byte [esi + ebp + 1]
cmp al, 1
je 0x100720a2
cmp al, 2
je 0x100720a2
cmp al, 3
jne 0x10072347
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 + 2]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov cl, byte [eax + ebx + 3]
and cl, 0xc
cmp cl, 4
jne 0x10072347
mov edi, dword [esp + 0x10]
push 0x100a63dc
lea edx, [esp + 0x3b4]
push 0xffffffffffffffff
push edx
mov byte [edi + ebp], 6
call fcn.100839e0
mov ecx, dword [esp + 0x7c4]
mov edx, dword [ecx + 0x2f8]
push 0xffffffffffffffff
lea eax, [esp + 0x3c0]
push eax
push edx
call fcn.100583c0
mov ecx, dword [esp + 0x50]
add eax, 0xfbf4
mov dword [ecx + ebp*4], eax
mov eax, dword [esp + 0x48]
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x44]
mov byte [edx + ebx + 1], 6
mov eax, dword [eax + 8]
mov byte [eax + ebx + 3], 0x63
mov al, byte [ecx]
add esp, 0x18
cmp al, 5
jne 0x10072347
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 + 2]
mov esi, dword [esp + 0x1c]
lea ecx, [edx + ebp*2 + 2]
lea eax, [eax + eax*4]
mov edx, dword [esi + eax*4 + 8]
lea eax, [edx + ebx]
cmp byte [eax + 7], 0x56
jne 0x10072347
mov byte [eax + 1], 4
mov byte [edi + ebp + 1], 4
xor edi, edi
mov di, word [ecx]
movsx eax, di
lea eax, [eax + eax*4]
movzx edx, byte [esi + eax*4]
lea eax, [esi + eax*4]
mov eax, dword [eax + 0x10]
movzx edx, byte [eax + edx - 1]
push edx
mov dword [esp + 0x24], edi
call fcn.1005a380
movzx edx, di
lea edx, [edx + edx*4]
mov edx, dword [esi + edx*4 + 8]
mov byte [edx + ebx + 3], al
movzx eax, word [ecx]
lea eax, [eax + eax*4]
mov edx, dword [esi + eax*4 + 8]
mov byte [edx + ebx + 2], 0x60
movzx eax, word [ecx]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
add esp, 4
mov byte [ecx + ebx + 4], 0x71
jmp 0x10072347
mov esi, dword [esp + 0x40]
mov edi, 0x100a83f0
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x10072347
test ebp, ebp
jle 0x10072347
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 1], 5
jne 0x100721fc
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 + 2]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + edx*4 + 8]
cmp byte [ecx + ebx + 7], 0x56
je 0x10072248
mov edx, dword [esp + 0x28]
mov al, byte [edx]
cmp al, 1
je 0x100722f9
cmp al, 2
je 0x100722f9
cmp ebp, 1
jle 0x10072248
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 3
je 0x10072248
cmp al, 4
jne 0x10072248
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 - 2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 + 8]
mov al, byte [edx + ebx + 3]
and al, 0xfc
cmp al, 0x48
je 0x100722f9
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 8
jne 0x10072347
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 - 2]
mov ecx, dword [esp + 0x1c]
lea esi, [edx + ebp*2 - 2]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 + 8]
mov al, byte [edx + ebx + 5]
cmp al, 0x74
lea edi, [edx + ebx]
jne 0x10072347
mov edx, dword [esp + 0x7b8]
lea eax, [ebp + 1]
movzx ecx, ax
push ecx
push edx
call sym.MSGRIT32.DLL_CicloAvanti
add esp, 8
cmp ax, 0xa
jne 0x10072347
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x1c]
mov byte [edi + 1], 1
mov byte [eax + ebp - 1], 1
movzx eax, word [esi]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov byte [eax + ebx + 2], 0
movzx esi, word [esi]
mov eax, esi
lea ecx, [eax + eax*4]
movzx edi, byte [edx + ecx*4]
lea ecx, [edx + ecx*4]
mov ecx, dword [ecx + 0x10]
mov cl, byte [ecx + edi - 1]
cmp cl, 0x27
je 0x100722e9
cmp cl, 0x61
je 0x100722e9
cmp cl, 0x65
jne 0x100722ee
mov eax, 0x44
jmp 0x100722ee
mov eax, 0x48
lea ecx, [esi + esi*4]
mov edx, dword [edx + ecx*4 + 8]
mov byte [edx + ebx + 3], al
mov esi, dword [esp + 0x7b8]
push ebp
push esi
call fcn.1006cdc0
push 0x100a83f0
lea eax, [esp + 0x5bc]
push 0xffffffffffffffff
push eax
call fcn.100839e0
mov edx, dword [esi + 0x2f8]
push 0xffffffffffffffff
lea ecx, [esp + 0x5c8]
push ecx
push edx
call fcn.100a5245
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x50]
mov dword [ecx + ebp*4], eax
mov eax, dword [edx + 8]
add esp, 0x20
mov byte [eax + ebx + 3], 0x48
mov esi, dword [esp + 0x10]
cmp byte [esi + ebp], 8
jne 0x10072476
mov edx, dword [esp + 0x30]
mov ecx, dword [edx + 8]
lea eax, [ecx + ebx]
cmp byte [eax + 5], 0x74
jne 0x10072385
mov ecx, dword [esp + 0x2c]
mov cl, byte [ecx]
cmp cl, 3
je 0x10072375
cmp cl, 4
jne 0x10072385
mov byte [eax + 1], 1
mov byte [esi + ebp], 1
mov eax, dword [edx + 8]
mov byte [eax + ebx + 2], 0
cmp byte [esi + ebp], 8
jne 0x10072476
mov eax, dword [edx + 0x10]
cmp byte [eax], 0x65
jne 0x10072476
lea esi, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100723a0
sub eax, esi
cmp eax, 8
jne 0x10072476
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 1
je 0x100723e0
test ebp, ebp
jle 0x10072476
mov eax, dword [esp + 0x28]
cmp byte [eax], 3
jne 0x10072476
mov ecx, dword [esp + 0x34]
mov al, byte [ecx + ebp - 1]
test al, al
jne 0x10072476
mov edi, dword [esp + 0x7b8]
mov eax, dword [edi + 0x44]
mov byte [eax + ebp], 4
mov ecx, dword [edi + 0x48]
movzx eax, word [ecx + ebp*2]
mov ecx, dword [edi + 4]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov ecx, dword [edi + 0x14]
mov byte [eax + ecx + 1], 4
mov eax, dword [edi + 0x48]
movzx eax, word [eax + ebp*2]
lea ecx, [eax + eax*4]
mov eax, dword [edi + 4]
mov ecx, dword [eax + ecx*4 + 8]
mov eax, dword [edi + 0x14]
mov byte [ecx + eax + 2], 0
mov ecx, dword [edi + 0x48]
movzx eax, word [ecx + ebp*2]
mov ecx, dword [edi + 4]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov ecx, dword [edi + 0x14]
mov byte [eax + ecx + 3], 0x86
mov edx, dword [edx + 0x10]
cmp byte [edx + 7], 0x65
jne 0x1007245b
mov eax, dword [edi + 0x48]
movzx eax, word [eax + ebp*2]
mov edx, dword [edi + 4]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov ecx, dword [edi + 0x14]
mov byte [eax + ecx + 3], 0x46
mov edx, dword [edi + 0x48]
movzx eax, word [edx + ebp*2]
mov ecx, dword [edi + 4]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 + 8]
mov eax, dword [edi + 0x14]
mov byte [edx + eax + 4], 0x61
jmp 0x1007247d
mov edi, dword [esp + 0x7b8]
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 3
jne 0x100724c8
mov edx, dword [esp + 0x28]
cmp byte [edx], 8
jne 0x100724c8
mov esi, dword [esp + 0x18]
movzx eax, word [esi + ebp*2 - 2]
mov edx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov ecx, dword [edx + eax*4 + 8]
lea eax, [ecx + ebx]
cmp byte [eax + 5], 0x74
jne 0x100724d0
mov ecx, dword [esp + 0x30]
mov byte [eax + 1], 1
mov eax, dword [esp + 0x10]
mov byte [eax + ebp - 1], 1
mov eax, dword [ecx + 8]
mov byte [eax + ebx + 2], 0
jmp 0x100724d0
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 4
jne 0x100728a2
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
lea eax, [ecx + ebx]
mov dword [esp + 0x40], eax
mov al, byte [eax + 4]
cmp al, 0x63
je 0x10072606
cmp al, 0x6e
jne 0x100728a2
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + ebp*4]
mov eax, dword [0x100bba90]
cmp ecx, dword [eax + 0xf4]
jne 0x100728a2
test ebp, ebp
je 0x10072532
movzx eax, word [esi + ebp*2 - 2]
lea ecx, [eax + eax*4]
mov eax, dword [edi + 4]
mov eax, dword [eax + ecx*4 + 8]
add eax, ebx
mov dword [esp + 0x64], eax
jmp 0x10072536
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x28]
mov cl, byte [ecx]
cmp cl, 2
jne 0x10072587
cmp byte [eax + 4], 0x61
jne 0x10072587
cmp byte [eax + 5], 0x64
jne 0x10072587
cmp byte [eax + 6], 0x69
jne 0x10072587
mov eax, dword [esp + 0x40]
test byte [eax + 3], 0x88
je 0x10072587
mov eax, dword [esp + 0x2c]
cmp byte [eax], 4
jne 0x10072587
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x30]
mov byte [ecx + 1], 7
mov byte [edx + ebp], 7
mov ecx, dword [eax + 8]
mov byte [ecx + ebx + 3], 0x61
jmp 0x100728a2
cmp cl, 5
jne 0x100725a5
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + ebp*4 - 4]
mov eax, dword [0x100bba90]
cmp ecx, dword [eax + 0x104]
je 0x100728a2
mov ecx, dword [esp + 0x2c]
mov cl, byte [ecx]
cmp cl, 3
je 0x100728a2
cmp cl, 1
je 0x100728a2
cmp cl, 4
jne 0x100725d9
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 8]
cmp byte [eax + ebx + 4], 0x69
je 0x100728a2
cmp cl, 5
jne 0x100725f5
movzx eax, word [esi + ebp*2 + 2]
lea ecx, [eax + eax*4]
mov edx, dword [edx + ecx*4 + 8]
cmp byte [edx + ebx + 7], 0x56
je 0x100728a2
push 0
push ebp
push edi
call fcn.10059490
add esp, 0xc
jmp 0x100728a2
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
mov dword [esp + 0x20], 0
jne 0x100726f1
test ebp, ebp
jle 0x100726f1
mov ecx, dword [esp + 0x28]
mov al, byte [ecx]
cmp al, 4
je 0x1007264a
cmp al, 3
je 0x1007264a
cmp al, 1
je 0x1007264a
lea edx, [ebp - 1]
push edx
push edi
call fcn.1005a340
add esp, 8
test al, al
je 0x100726ed
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 + 2]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov al, byte [eax + ebx + 3]
test al, al
mov esi, 1
mov dword [esp + 0x20], esi
mov byte [esp + 0x27], al
jbe 0x1007281c
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 1
je 0x10072691
lea edx, [ebp - 1]
push edx
push edi
call fcn.1005a340
add esp, 8
test al, al
je 0x10072698
or esi, 0xffffffff
mov dword [esp + 0x20], esi
test byte [esp + 0x27], 3
je 0x100726a9
push ebp
push edi
call fcn.1006cdc0
add esp, 8
test si, si
je 0x100728a2
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 3
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov byte [esp + 0x17], al
jne 0x1007282a
movzx eax, word [edx + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
test byte [eax + ebx + 3], 3
jne 0x1007282a
mov esi, 1
jmp 0x1007287f
mov edx, dword [esp + 0x1c]
cmp ebp, 1
jle 0x10072718
mov eax, dword [esp + 0x28]
mov al, byte [eax]
cmp al, 4
je 0x10072704
cmp al, 3
jne 0x10072718
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 1
jne 0x10072718
or esi, 0xffffffff
mov dword [esp + 0x20], esi
jmp 0x100726b2
test ebp, ebp
jle 0x10072748
mov edx, dword [esp + 0x28]
cmp byte [edx], 1
je 0x10072736
lea eax, [ebp - 1]
push eax
push edi
call fcn.1005a340
add esp, 8
test al, al
je 0x10072744
mov esi, 0xfffffffe
mov dword [esp + 0x20], esi
jmp 0x100726b2
mov edx, dword [esp + 0x1c]
cmp ebp, 1
jle 0x100727ab
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 3
jne 0x100727ab
movzx eax, word [esi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov ecx, dword [edx + eax*4 + 8]
mov al, byte [ecx + ebx + 4]
and al, 0x1c
cmp al, 0xc
jne 0x100727ab
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 4
jne 0x1007278a
movzx eax, word [esi + ebp*2 - 4]
lea eax, [eax + eax*4]
mov ecx, dword [edx + eax*4 + 8]
test byte [ecx + ebx + 2], 2
jne 0x1007279b
lea edx, [ebp - 2]
push edx
push edi
call fcn.1005a340
add esp, 8
test al, al
je 0x100727a7
or esi, 0xffffffff
mov dword [esp + 0x20], esi
jmp 0x100726b2
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
jne 0x100727d8
movzx eax, word [esi + ebp*2 + 2]
lea ecx, [eax + eax*4]
mov edx, dword [edx + ecx*4 + 8]
mov al, byte [edx + ebx + 3]
and al, 3
cmp al, 2
jb 0x100727d8
mov esi, 1
mov dword [esp + 0x20], esi
jmp 0x100726b2
test ebp, ebp
jne 0x100728a2
mov eax, dword [edi + 0x28]
test eax, eax
jne 0x100728a2
mov ecx, dword [esp + 0x40]
test byte [ecx + 2], 2
je 0x100728a2
movzx eax, word [esi + 2]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + edx*4 + 0x10]
movzx edx, byte [ecx]
push edx
call fcn.1009d52e
add esp, 4
test eax, eax
je 0x100728a2
mov esi, 1
mov dword [esp + 0x20], esi
jmp 0x100726b2
test ebp, ebp
jle 0x1007284a
mov eax, dword [esp + 0x28]
cmp byte [eax], 3
jne 0x1007284a
movzx eax, word [edx + ebp*2 - 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
test byte [eax + ebx + 3], 3
je 0x1007287c
cmp si, 0xfffe
jne 0x10072883
cmp byte [esp + 0x17], 4
jne 0x1007287c
movzx eax, word [edx + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
test byte [eax + ebx + 3], 2
je 0x1007287c
push ebp
push edi
call fcn.1006cdc0
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
add esp, 8
or esi, 0xffffffff
mov dword [esp + 0x20], esi
movsx eax, si
add eax, ebp
movzx eax, word [edx + eax*2]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 + 8]
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + 8]
mov al, byte [eax + ebx + 3]
mov byte [edx + ebx + 3], al
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 5
jne 0x10072ad1
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov cl, byte [eax + ebx + 7]
add eax, ebx
cmp cl, 0x53
jne 0x10072ad1
cmp byte [eax + 8], 0x43
jne 0x10072ad1
mov ecx, edx
mov edx, dword [ecx + 0x10]
mov ecx, 5
mov edi, str.stess
mov esi, edx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x10072ad1
mov ecx, dword [esp + 0x34]
mov al, byte [ecx + ebp]
test al, al
mov byte [esp + 0x27], al
jne 0x10072952
test ebp, ebp
jle 0x10072c0e
mov edi, dword [esp + 0x38]
mov ecx, dword [0x100bba90]
mov eax, dword [edi + ebp*4 - 4]
cmp eax, dword [ecx + 0x54]
je 0x10072956
mov eax, dword [esp + 0x28]
cmp byte [eax], 8
jne 0x10072ad1
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
mov ecx, dword [eax + 8]
cmp byte [ecx + ebx + 5], 0x73
jne 0x10072ad1
mov eax, dword [eax + 0x10]
cmp byte [eax + 1], 0x73
jne 0x10072ad1
jmp 0x10072956
mov edi, dword [esp + 0x38]
test ebp, ebp
mov cl, byte [edx + 5]
mov esi, 1
mov dword [esp + 0x20], esi
jle 0x1007297f
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 - 2]
mov edx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 0x10]
mov al, byte [eax + 3]
jmp 0x10072981
xor al, al
cmp cl, al
je 0x1007298b
xor esi, esi
mov dword [esp + 0x20], esi
cmp byte [esp + 0x27], 0x2c
je 0x100729b0
cmp ebp, 1
jle 0x100729ba
mov edx, dword [edi + ebp*4 - 4]
mov eax, dword [0x100bba90]
cmp edx, dword [eax + 0x54]
jne 0x100729ba
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 2], 2
jne 0x100729ba
mov dword [esp + 0x20], 1
jmp 0x100729c4
cmp si, 1
jne 0x10072ad1
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x10]
mov byte [eax + ebp], 4
mov esi, dword [edx + 8]
mov byte [esi + ebx + 1], 4
mov esi, dword [edx + 8]
mov byte [esi + ebx + 2], 0x10
cmp cl, 0x69
mov ecx, dword [edx + 8]
jne 0x100729ef
mov byte [ecx + ebx + 3], 0x84
jmp 0x100729f4
mov byte [ecx + ebx + 3], 0x44
test ebp, ebp
mov ecx, dword [edx + 8]
mov byte [ecx + ebx + 4], 0x61
jle 0x10072a96
mov ecx, dword [edi + ebp*4 - 4]
mov esi, dword [0x100bba90]
cmp ecx, dword [esi + 0x54]
jne 0x10072a96
mov byte [eax + ebp - 1], 8
mov eax, dword [esp + 0x7b8]
mov ecx, dword [eax + 0xf8]
mov byte [ebx + ecx], 0
mov ecx, dword [eax + 0xf8]
mov byte [ecx + ebx + 1], 8
mov ecx, dword [eax + 0xf8]
mov byte [ecx + ebx + 2], 0
mov ecx, dword [eax + 0xf8]
mov byte [ecx + ebx + 6], 0x73
mov ecx, dword [eax + 0xf8]
mov esi, dword [esp + 0x1c]
mov byte [ecx + ebx + 5], 0x61
mov ecx, dword [eax + 0xf8]
mov byte [ecx + ebx + 4], 0x36
mov edx, dword [edx + 8]
mov ecx, dword [eax + 0xf8]
mov dl, byte [edx + ebx + 3]
mov byte [ecx + ebx + 3], dl
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + ebp*2 - 2]
lea edx, [ecx + ecx*4]
mov ecx, dword [eax + 0xf8]
mov dword [esi + edx*4 + 8], ecx
add dword [eax + 0xf8], 6
push str.stesso
lea edx, [esp + 0x2b4]
push 0xffffffffffffffff
push edx
call fcn.100839e0
mov ecx, dword [esp + 0x7c4]
mov edx, dword [ecx + 0x2f8]
push 0xffffffffffffffff
lea eax, [esp + 0x2c0]
push eax
push edx
call fcn.100a5245
mov ecx, dword [esp + 0x50]
add esp, 0x18
mov dword [ecx + ebp*4], eax
test ebp, ebp
jle 0x10072c0e
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 8
jne 0x10072c0e
mov eax, dword [esp + 0x30]
mov esi, dword [eax + 0x10]
mov edi, 0x100a6f20
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x10072c0e
lea eax, [ebp - 1]
movzx ecx, ax
mov eax, dword [esp + 0x7b8]
mov edx, dword [eax + 0x44]
cmp byte [ecx + edx], 2
jne 0x10072b6c
mov edx, dword [eax + 0x48]
movzx ecx, word [edx + ecx*2]
mov edx, dword [eax + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edx + ecx*4 + 8]
mov edx, dword [eax + 0x14]
cmp byte [ecx + edx + 4], 0x61
jne 0x10072b6c
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + ebp*2 - 2]
mov edx, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edx + ecx*4 + 8]
test byte [ecx + ebx + 3], 8
je 0x10072b70
mov ecx, dword [esp + 0x30]
mov esi, dword [ecx + 8]
mov byte [esi + ebx + 3], 8
mov esi, dword [ecx + 8]
mov byte [esi + ebx + 4], 0x33
mov ecx, dword [ecx + 8]
mov byte [ecx + ebx + 5], 0x61
jmp 0x10072b70
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 5
jne 0x10072c12
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + ebp*2 - 2]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edx + ecx*4 + 8]
lea esi, [ecx + ebx]
mov cl, byte [esi + 6]
and cl, 6
cmp cl, 6
jne 0x10072c12
cmp byte [esi + 3], 0x36
je 0x10072c12
mov ecx, dword [eax + 0x44]
mov byte [ecx + ebp], 4
mov ecx, dword [eax + 0x48]
movzx ecx, word [ecx + ebp*2]
mov esi, dword [eax + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
mov esi, dword [eax + 0x14]
mov byte [ecx + esi + 1], 4
mov ecx, dword [eax + 0x48]
movzx ecx, word [ecx + ebp*2]
mov esi, dword [eax + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
mov esi, dword [eax + 0x14]
mov byte [ecx + esi + 2], 0
mov ecx, dword [eax + 0x48]
movzx ecx, word [ecx + ebp*2]
mov esi, dword [eax + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
mov esi, dword [eax + 0x14]
mov byte [ecx + esi + 3], 2
mov ecx, dword [eax + 0x48]
movzx ecx, word [ecx + ebp*2]
mov esi, dword [eax + 4]
mov eax, dword [eax + 0x14]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
mov byte [ecx + eax + 4], 0x70
jmp 0x10072c12
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 5
jne 0x10073006
mov eax, dword [esp + 0x30]
mov esi, dword [eax + 8]
cmp byte [esi + ebx + 3], 0x35
jne 0x10072fb3
lea eax, [esi + ebx + 8]
mov dword [esp + 0x48], eax
mov al, byte [eax]
cmp al, 0x49
je 0x10072c48
cmp al, 0x43
jne 0x10072fb3
mov al, byte [esi + ebx + 9]
test al, al
jne 0x10072fb3
lea eax, [esi + ebx + 0xb]
mov dword [esp + 0x3c], 0
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10072c63
sub eax, edi
movsx ecx, ax
mov dword [esp + 0x20], eax
lea eax, [ecx + esi]
lea ecx, [eax + 0xa]
add esi, 0xa
cmp ecx, esi
jbe 0x10072fb3
lea esi, [eax + 8]
cmp ecx, esi
jbe 0x10072fb3
cmp byte [eax + ebx + 8], 0x65
je 0x10072fb3
cmp ebp, 1
jle 0x10072cf6
mov eax, dword [esp + 0x28]
mov al, byte [eax]
cmp al, 3
jne 0x10072cb4
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 4
je 0x10072cc3
cmp al, 4
jne 0x10072cf6
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 3
jne 0x10072cf6
mov esi, dword [esp + 0x18]
movzx eax, word [esi + ebp*2 - 2]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov cl, byte [eax + ebx + 3]
and cl, 0xfc
cmp cl, 0x44
jne 0x10072cf6
movzx eax, word [esi + ebp*2 - 4]
lea eax, [eax + eax*4]
mov ecx, dword [edx + eax*4 + 8]
cmp byte [ecx + ebx + 3], 0x44
je 0x10072dcd
lea eax, [ebp - 1]
test ax, ax
mov dword [esp + 0x20], eax
jl 0x10072dd5
jmp 0x10072d10
movsx esi, word [esp + 0x20]
mov edx, dword [esp + 0x10]
mov al, byte [esi + edx]
cmp al, 1
mov byte [esp + 0x27], al
je 0x10072d8c
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x7b8]
push eax
push ecx
call fcn.1005a340
add esp, 8
test al, al
jne 0x10072d8c
mov al, byte [esp + 0x27]
cmp al, 4
ja 0x10072d8c
mov edx, dword [esp + 0x34]
cmp byte [esi + edx], 0
jne 0x10072d8c
cmp al, 3
jne 0x10072d72
mov eax, dword [esp + 0x18]
movzx eax, word [eax + esi*2]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov cl, byte [eax + ebx + 3]
and cl, 0xfc
cmp cl, 0x44
je 0x10072d86
mov eax, dword [esp + 0x20]
dec eax
test ax, ax
mov dword [esp + 0x20], eax
jge 0x10072d10
mov edx, dword [esp + 0x1c]
jmp 0x10072dd5
mov edx, dword [esp + 0x1c]
jmp 0x10072dcd
movsx edx, word [esp + 0x20]
mov eax, dword [esp + 0x18]
lea ecx, [eax + edx*2]
movzx eax, word [ecx]
mov edx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 8]
mov al, byte [eax + ebx + 3]
and al, 0xfc
cmp al, 0x44
jne 0x10072dd5
movzx eax, word [ecx + 2]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
mov al, byte [eax + ebx + 3]
and al, 0xfc
cmp al, 0x40
je 0x10072dcd
cmp al, 4
je 0x10072dcd
cmp al, 0x44
jne 0x10072dd5
mov dword [esp + 0x3c], 1
mov ecx, dword [esp + 0x2c]
mov al, byte [ecx]
cmp al, 3
mov esi, dword [esp + 0x18]
mov byte [esp + 0x17], al
jne 0x10072e01
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov ecx, dword [edx + eax*4 + 8]
mov al, byte [ecx + ebx + 3]
and al, 0xfc
cmp al, 0x44
je 0x10072f3d
mov eax, dword [esp + 0x3c]
test eax, eax
jne 0x10072f38
lea eax, [ebp - 1]
test ax, ax
mov dword [esp + 0x20], eax
jl 0x10072e71
mov ecx, dword [esp + 0x10]
movsx edi, ax
cmp byte [edi + ecx], 7
jne 0x10072e30
test ax, ax
jle 0x10072e30
dec eax
mov dword [esp + 0x20], eax
movsx eax, ax
cmp byte [eax + ecx], 5
jne 0x10072e71
movzx eax, word [esi + eax*2]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
lea ecx, [eax + ebx]
mov al, byte [ecx + 8]
cmp al, 0x49
je 0x10072e56
cmp al, 0x43
je 0x10072e56
cmp al, 0x4e
jne 0x10072e71
lea esi, [ecx + 0xb]
mov edi, str.andare
mov ecx, 7
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x10072f3d
mov esi, dword [esp + 0x18]
test ebp, ebp
jle 0x10072fb3
mov ecx, dword [esp + 0x28]
mov cl, byte [ecx]
cmp cl, 5
jne 0x10072ea5
cmp byte [esp + 0x17], 3
jne 0x10072ea5
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 8]
mov al, byte [eax + ebx + 3]
and al, 0xfc
cmp al, 0x44
je 0x10072f3d
cmp cl, 6
jne 0x10072fb3
movzx eax, word [esi + ebp*2 - 2]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
cmp byte [eax + ebx + 3], 0x63
jne 0x10072fb3
lea ecx, [ebp - 2]
test cx, cx
mov dword [esp + 0x20], ecx
jl 0x10072efb
mov edi, dword [esp + 0x34]
movsx eax, cx
cmp byte [eax + edi], 0
jne 0x10072ef7
mov edi, dword [esp + 0x10]
mov al, byte [eax + edi]
cmp al, 7
je 0x10072ef1
cmp al, 3
je 0x10072ef1
cmp al, 4
jne 0x10072ef7
dec ecx
test cx, cx
jge 0x10072ed1
mov dword [esp + 0x20], ecx
movsx eax, cx
lea ecx, [eax + 1]
lea edi, [ebp - 2]
cmp ecx, edi
jge 0x10072fb3
mov ecx, dword [esp + 0x10]
mov cl, byte [eax + ecx + 1]
cmp cl, 3
je 0x10072f22
cmp cl, 4
jne 0x10072fb3
movzx eax, word [esi + eax*2 + 2]
lea eax, [eax + eax*4]
mov ecx, dword [edx + eax*4 + 8]
mov al, byte [ecx + ebx + 3]
and al, 0xc
cmp al, 4
jmp 0x10072f3b
cmp eax, 1
jne 0x10072fb3
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x30]
mov byte [ecx], 0x50
mov eax, dword [edx + 8]
mov ecx, dword [esp + 0x18]
mov byte [eax + ebx + 9], 1
xor eax, eax
mov ax, word [ecx + ebp*2]
mov dword [esp + 0x20], eax
movsx eax, ax
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + edx*4 + 0x10]
lea esi, [eax + edx*4]
push ecx
lea edx, [esp + 0xb4]
push 0xffffffffffffffff
push edx
call fcn.100839e0
movzx eax, byte [esi]
mov edx, dword [esp + 0x7c4]
lea ecx, [esp + 0xbc]
mov byte [esp + eax + 0xbb], 0x6f
mov eax, dword [edx + 0x2f8]
push ecx
push eax
call fcn.100a5245
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x30]
add esp, 0x14
mov dword [ecx + ebp*4], eax
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 5
jne 0x10073006
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 8]
add eax, ebx
cmp byte [eax + 7], 0x56
jne 0x10073006
cmp byte [eax + 8], 0x50
jne 0x10073006
mov eax, dword [esp + 0x28]
cmp byte [eax], 4
jne 0x10073006
mov byte [ecx + ebp - 1], 7
mov ecx, dword [esp + 0x18]
lea eax, [ecx + ebp*2 - 2]
movzx ecx, word [eax]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edx + ecx*4 + 8]
mov byte [ecx + ebx + 1], 7
movzx eax, word [eax]
lea eax, [eax + eax*4]
mov ecx, dword [edx + eax*4 + 8]
mov byte [ecx + ebx + 3], 0x61
mov edx, dword [esp + 0x38]
mov eax, dword [edx + ebp*4]
mov ecx, dword [0x100bba90]
cmp eax, dword [ecx + 0xb4]
jne 0x10073027
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov byte [eax + ebx + 5], 0x74
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 5
jne case.default.0x10073271
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov cl, byte [eax + ebx + 7]
add eax, ebx
cmp cl, 0x53
mov dword [esp + 0x40], eax
jne case.default.0x10073271
cmp byte [eax + 8], 0x50
jne case.default.0x10073271
cmp byte [eax + 0xa], 0x53
je case.default.0x10073271
test ebp, ebp
jle 0x100730a0
mov ecx, dword [esp + 0x28]
mov al, byte [ecx]
cmp al, 5
je 0x100730a0
cmp al, 7
jne 0x100730d4
cmp ebp, 1
jle 0x10073085
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 2], 3
je 0x100730d4
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 - 2]
mov esi, dword [esp + 0x1c]
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 8]
cmp byte [eax + ebx + 3], 0x71
je 0x100730d8
cmp ebp, 2
jle case.default.0x10073271
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 3], 3
jne case.default.0x10073271
mov edx, ecx
cmp byte [edx + ebp - 2], 4
jne case.default.0x10073271
mov eax, dword [esp + 0x28]
cmp byte [eax], 7
jne case.default.0x10073271
mov ecx, eax
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
xor eax, eax
cmp ebp, 1
mov ax, word [edx + ebp*2]
mov dword [esp + 0x20], eax
movsx eax, ax
lea eax, [eax + eax*4]
movzx edx, byte [esi + eax*4]
lea eax, [esi + eax*4]
mov dword [esp + 0x58], eax
mov eax, dword [eax + 0x10]
mov dl, byte [edx + eax - 1]
mov byte [esp + 0x5c], dl
jle 0x1007313f
mov eax, dword [esp + 0x10]
mov al, byte [eax + ebp - 2]
cmp al, 3
je 0x10073117
cmp al, 8
jne 0x1007313f
mov al, byte [ecx]
cmp al, 7
je 0x10073507
cmp al, 4
jne 0x1007313f
mov edi, dword [esp + 0x34]
mov al, byte [edi + ebp - 1]
test al, al
jne 0x10073143
mov al, byte [edi + ebp - 2]
test al, al
je 0x10073507
jmp 0x10073143
mov edi, dword [esp + 0x34]
cmp ebp, 2
jle 0x10073163
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 3], 3
jne 0x10073163
cmp byte [eax + ebp - 2], 4
jne 0x10073163
cmp byte [ecx], 7
je 0x10073507
cmp byte [ecx], 6
je 0x1007320c
movzx eax, byte [edi + ebp - 1]
test eax, eax
je case.0x10073205.98
lea ecx, [ebp - 1]
cmp ebp, 1
jle 0x100731b9
mov eax, dword [esp + 0x28]
cmp byte [eax], 6
jne 0x100731b9
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 - 2]
lea eax, [eax + eax*4]
mov eax, dword [esi + eax*4 + 8]
cmp byte [eax + ebx + 3], 0x63
jne 0x100731b9
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 4
jne 0x100731b9
mov eax, dword [esp + 0x2c]
cmp byte [eax], 1
jne 0x10073507
test ecx, ecx
jl case.0x10073205.98
mov eax, dword [esp + 0x10]
mov al, byte [ecx + eax]
cmp al, 3
je 0x100731d4
cmp al, 4
jne case.0x10073205.98
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ecx*2]
lea ecx, [eax + eax*4]
mov eax, dword [esi + ecx*4 + 8]
xor ecx, ecx
mov cl, byte [eax + ebx + 3]
movzx eax, dl
add eax, 0xffffff9f
and ecx, 0xfc
cmp eax, 0xe
ja case.0x10073205.98
movzx edx, byte [eax + 0x10077674]
jmp dword [edx*4 + 0x10077660]
lea ecx, [ebp - 2]
jmp 0x1007317c
cmp ecx, 0x88
jmp 0x1007322c
cmp ecx, 0x48
jmp 0x1007322c
cmp ecx, 0x84
jmp 0x1007322c
cmp ecx, 0x44
je case.0x10073205.98
cmp byte [edi + ebp - 1], 0x2c
jne case.default.0x10073271
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 3
jne case.default.0x10073271
mov edx, dword [esp + 0x18]
movzx ecx, word [edx + ebp*2 + 2]
mov esi, dword [esp + 0x1c]
movzx eax, byte [eax + 0x10077698]
lea ecx, [ecx + ecx*4]
mov edx, dword [esi + ecx*4 + 8]
xor ecx, ecx
mov cl, byte [edx + ebx + 3]
and ecx, 0xfc
jmp dword [eax*4 + 0x10077684]
cmp ecx, 0x88
je 0x10073507
jmp case.default.0x10073271
cmp ecx, 0x48
je 0x10073507
jmp case.default.0x10073271
cmp ecx, 0x84
je 0x10073507
jmp case.default.0x10073271
cmp ecx, 0x44
je 0x10073507
jmp case.default.0x10073271
test ebp, ebp
jle 0x100732c3
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 3
je 0x100732cc
mov edx, dword [esp + 0x2c]
cmp byte [edx], 3
jne 0x100732fe
mov eax, dword [esp + 0x40]
mov cl, byte [eax + 9]
test cl, cl
jne 0x10073507
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x7b8]
push ecx
push ebp
push edx
call fcn.10059760
mov esi, dword [esp + 0x28]
add esp, 0xc
test ax, ax
jne 0x10073507
test ebp, ebp
mov edx, dword [esp + 0x28]
jle 0x10073341
cmp byte [edx], 8
jne 0x1007333f
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 - 2]
lea ecx, [eax + eax*4]
mov eax, dword [esi + ecx*4 + 8]
lea edi, [eax + ebx]
cmp byte [edi + 5], 0x61
jne 0x1007333f
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.1005a380
mov cl, byte [edi + 3]
and cl, 0xfc
add esp, 4
cmp al, cl
je 0x10073507
test ebp, ebp
je 0x10073405
jle 0x1007335b
mov al, byte [edx]
cmp al, 1
je 0x10073405
cmp al, 2
je 0x10073405
cmp ebp, 1
jle 0x10073391
mov cl, byte [edx]
cmp cl, 1
je 0x10073405
mov eax, dword [esp + 0x10]
mov al, byte [eax + ebp - 2]
cmp al, 1
je 0x10073405
cmp cl, 2
je 0x10073405
cmp al, 2
je 0x10073405
cmp cl, 6
jne 0x10073391
cmp al, 4
je 0x10073405
test ebp, ebp
jle 0x100733b1
cmp byte [edx], 4
jne 0x100733b1
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
cmp byte [ecx + ebx + 4], 0x69
je 0x10073405
cmp byte [edx], 8
jne case.default.0x10073271
mov edx, dword [esp + 0x18]
movzx ecx, word [edx + ebp*2 - 2]
lea eax, [edx + ebp*2 - 2]
mov edx, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edx + ecx*4 + 8]
cmp byte [ecx + ebx + 5], 0x74
jne case.default.0x10073271
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
mov byte [edx + 1], 1
mov byte [ecx + ebp - 1], 1
movzx eax, word [eax]
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 8]
mov edx, dword [esp + 0x28]
mov byte [eax + ebx + 2], 0
cmp byte [edx], 4
jne 0x100734a7
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 2
jne 0x100734a7
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 - 4]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
cmp byte [ecx + ebx + 4], 0x73
jne 0x100734a7
mov edx, dword [esp + 0x5c]
push edx
call fcn.1005a380
movzx ecx, al
mov eax, dword [esp + 0x1c]
movzx eax, word [eax + ebp*2 - 2]
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 8]
movzx edx, byte [eax + ebx + 3]
add esp, 4
cmp ecx, edx
je 0x1007349a
lea edi, [ebp - 3]
test di, di
jl 0x100734a7
mov edx, dword [esp + 0x10]
movsx eax, di
cmp byte [eax + edx], 4
ja 0x100734a7
mov edx, dword [esp + 0x18]
movzx eax, word [edx + eax*2]
lea eax, [eax + eax*4]
mov edx, dword [esi + eax*4 + 8]
movzx eax, byte [edx + ebx + 3]
cmp eax, ecx
je case.default.0x10073271
mov esi, dword [esp + 0x1c]
dec edi
test di, di
jge 0x10073465
jmp 0x100734a7
cmp ecx, 1
jne case.default.0x10073271
mov esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp + 1], 6
jne 0x100734d7
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 + 2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
cmp byte [ecx + ebx + 3], 0x63
jne 0x100734d7
cmp byte [edx + ebp + 2], 4
jne 0x100734d7
cmp byte [edx + ebp + 3], 3
je 0x10073507
cmp ebp, 1
jle 0x100737c6
mov eax, dword [esp + 0x38]
mov ecx, dword [0x100bba90]
mov eax, dword [eax + ebp*4 - 4]
cmp eax, dword [ecx + 0x10]
je 0x100734fc
cmp eax, dword [ecx + 0x24]
jne 0x100737c6
cmp byte [edx + ebp - 2], 1
jne 0x100737c6
cmp ebp, 1
jle 0x10073559
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + ebp*4 - 4]
mov eax, dword [0x100bba90]
cmp edx, dword [eax + 0x38]
jne 0x10073559
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 2]
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 8]
cmp byte [eax + ebx + 3], 0x48
lea esi, [esi + edx*4]
jne 0x10073559
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 1
jne 0x10073559
mov eax, dword [esi + 0x10]
mov cx, word [eax + 1]
inc eax
mov edx, 0x100aa62c
cmp cx, word [edx]
je 0x100736cd
mov eax, dword [esp + 0x7b8]
mov ecx, dword [eax + 0x44]
mov al, byte [ecx + ebp - 1]
mov esi, dword [esp + 0x34]
add ecx, ebp
cmp al, 3
lea edx, [ebp + 1]
jne 0x10073583
cmp byte [esi + ebp - 1], 0
je 0x100735e2
mov edi, dword [esp + 0x2c]
cmp byte [edi], al
jne 0x100735e2
cmp al, 7
jne 0x10073597
cmp ebp, 1
jle 0x10073597
cmp byte [ecx - 2], 3
jne 0x10073597
lea edx, [ebp - 2]
jmp 0x100735e5
cmp al, 4
jne 0x100735b9
cmp ebp, 1
jle 0x100735b9
cmp byte [esi + ebp - 1], 0
jne 0x100735b9
cmp byte [ecx - 2], 3
jne 0x100735b9
cmp byte [esi + ebp - 2], 0
jne 0x100735b9
lea edx, [ebp - 2]
jmp 0x100735e5
cmp al, 7
jne 0x100735cd
cmp ebp, 2
jle 0x100735cd
cmp byte [ecx - 3], 3
jne 0x100735cd
lea edx, [ebp - 3]
jmp 0x100735e5
cmp al, 8
jne 0x100735e5
mov al, byte [esi + ebp - 1]
test al, al
je 0x100735e2
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
je 0x100735e5
lea edx, [ebp - 1]
mov ecx, dword [esp + 0x7b8]
push edx
push ebp
push ecx
call fcn.10059680
movzx eax, ax
add esp, 0xc
cmp eax, 2
jne 0x10073639
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp - 1], 0x2c
je 0x10073615
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 1], 6
jne 0x10073641
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 1], 3
jne 0x10073641
mov edx, dword [esp + 0x38]
cmp dword [edx + ebp*4 + 4], 0x989680
jae 0x10073641
cmp byte [eax + ebp], 0
jne 0x10073641
jmp case.default.0x10073271
test eax, eax
jne 0x100736c4
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x30]
mov byte [eax + ebp], 4
mov ecx, dword [esi + 8]
mov byte [ecx + ebx + 1], 4
mov edx, dword [esi + 8]
mov al, byte [edx + ebx + 9]
test al, al
lea ecx, [edx + ebx]
jne 0x1007369f
mov eax, dword [esp + 0x58]
mov edx, dword [eax + 0x10]
movzx eax, byte [eax]
cmp byte [eax + edx - 1], 0x65
sete dl
lea edx, [edx*4 + 4]
mov byte [ecx + 3], dl
mov eax, dword [esi + 8]
mov byte [eax + ebx + 2], 0x40
mov eax, dword [esp + 0x38]
add dword [eax + ebp*4], 0x60000
mov ecx, dword [esi + 8]
mov byte [ecx + ebx + 4], 0x61
jmp case.default.0x10073271
mov edx, dword [esp + 0x5c]
push edx
call fcn.1005a380
mov byte [ecx + 3], al
mov eax, dword [esi + 8]
mov byte [eax + ebx + 2], 0x60
mov ecx, dword [esi + 8]
add esp, 4
mov byte [ecx + ebx + 4], 0x61
jmp case.default.0x10073271
cmp eax, 1
jne case.default.0x10073271
mov edx, dword [esp + 0x10]
mov al, byte [edx + ebp - 1]
cmp al, 3
je case.default.0x10073271
cmp al, 7
jne 0x10073700
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 - 2]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 8]
cmp byte [eax + ebx + 3], 0x6d
je case.default.0x10073271
mov eax, dword [esp + 0x58]
movzx ecx, byte [eax]
mov edx, dword [eax + 0x10]
cmp byte [ecx + edx - 1], 0x65
jne case.default.0x10073271
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
lea eax, [ecx + ebx]
cmp byte [eax + 9], 1
jne case.default.0x10073271
add eax, 0xb
push eax
lea edx, [esp + 0x4b4]
push 0xffffffffffffffff
push edx
call fcn.100839e0
add esp, 0xc
push 0
push 5
push 0
push 0
push 0xffffffffffffffff
lea eax, [esp + 0x6c4]
push eax
lea ecx, [esp + 0x4c8]
push ecx
call fcn.10082100
mov edx, dword [esp + 0x58]
mov edi, dword [edx + 0x10]
lea esi, [esp + 0x6b0]
lea esp, [esp]
mov cl, byte [esi]
mov dl, byte [edi]
mov al, cl
cmp cl, dl
jne 0x10073798
test al, al
je 0x10073794
mov dl, byte [esi + 1]
mov cl, byte [edi + 1]
mov al, dl
cmp dl, cl
jne 0x10073798
add esi, 2
add edi, 2
test al, al
jne 0x10073770
xor eax, eax
jmp 0x1007379d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne case.default.0x10073271
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
mov byte [ecx + ebx + 3], 0x35
mov edx, dword [eax + 8]
mov byte [edx + ebx + 8], 0x49
mov eax, dword [eax + 8]
mov byte [eax + ebx + 9], 0
jmp case.default.0x10073271
mov ecx, dword [esp + 0x7b8]
push ebp
push ecx
call fcn.1006cdc0
mov esi, dword [esp + 0x38]
mov edx, dword [esi + 8]
mov al, byte [edx + ebx + 9]
lea ecx, [edx + ebx]
add esp, 8
test al, al
mov eax, dword [esp + 0x58]
jne 0x10073822
mov edx, dword [eax + 0x10]
movzx eax, byte [eax]
cmp byte [eax + edx - 1], 0x65
sete dl
lea edx, [edx*4 + 4]
mov byte [ecx + 3], dl
mov eax, dword [esi + 8]
mov dl, byte [eax + ebx + 2]
lea eax, [eax + ebx + 2]
or dl, 0x40
mov byte [eax], dl
mov eax, dword [esp + 0x38]
add dword [eax + ebp*4], 0x60000
jmp case.default.0x10073271
movzx edx, byte [eax]
mov eax, dword [eax + 0x10]
movzx edx, byte [edx + eax - 1]
push edx
call fcn.1005a380
mov byte [ecx + 3], al
mov eax, dword [esi + 8]
mov cl, byte [eax + ebx + 2]
lea eax, [eax + ebx + 2]
add esp, 4
or cl, 0x60
mov byte [eax], cl
mov ecx, dword [esp + 0x7b8]
mov eax, dword [ecx + 0x30]
inc ebp
cmp ebp, eax
jle 0x10071590
mov ecx, dword [ecx + 0x30]
xor ebp, ebp
test ecx, ecx
jl 0x1007753e
test ebp, ebp
mov edx, dword [esp + 0x18]
mov dx, word [edx + ebp*2]
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
movzx eax, dx
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
mov dword [esp + 0x30], eax
lea eax, [edi + ebp - 1]
jg 0x10073892
lea eax, [esp + 0x57]
cmp ebp, ecx
mov dword [esp + 0x28], eax
jge 0x100738a4
lea ecx, [edi + ebp + 1]
mov dword [esp + 0x2c], ecx
jmp 0x100738ac
lea eax, [esp + 0x57]
mov dword [esp + 0x2c], eax
cmp byte [edi + ebp], 8
jne 0x10073a6f
mov ecx, dword [esp + 0x30]
cmp byte [ecx], 2
mov edi, edx
mov dword [esp + 0x20], edi
jne 0x10073a6f
mov esi, ecx
mov edx, dword [esi + 0x10]
movzx eax, byte [edx]
push eax
call fcn.1009dfdc
mov ecx, dword [esi + 0x10]
movzx edx, byte [ecx + 1]
shl eax, 8
add eax, edx
add esp, 4
cmp eax, 0x7369
jg 0x10073910
je 0x10073904
cmp eax, 0x6369
je 0x1007390c
cmp eax, 0x6d69
je 0x10073908
cmp eax, 0x7327
jne 0x1007391e
mov dl, 0x39
jmp 0x10073929
mov dl, 0x31
jmp 0x10073929
mov dl, 0x34
jmp 0x10073929
cmp eax, 0x7469
je 0x10073927
cmp eax, 0x7669
je 0x10073923
or dl, 0xff
jmp 0x10073929
mov dl, 0x35
jmp 0x10073929
mov dl, 0x32
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 5
jne 0x10073a11
cmp dl, 0xff
je 0x10073a11
mov eax, dword [esp + 0x18]
movzx edi, word [eax + ebp*2]
movzx eax, word [eax + ebp*2 + 2]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
lea esi, [eax + ecx*4 + 8]
mov ecx, dword [esi]
lea eax, [ecx + ebx]
mov cl, byte [eax + 3]
cmp cl, 0x38
jne 0x10073971
cmp dl, 0x31
je 0x1007396f
cmp dl, 0x32
jne 0x10073971
mov dl, 0x38
cmp cl, dl
jne 0x100739ba
cmp byte [eax + 4], 0x65
jne 0x10073981
cmp byte [eax + 7], 0x43
jne 0x100739ba
mov eax, dword [esp + 0x1c]
lea edx, [edi + edi*4]
mov ecx, dword [eax + edx*4 + 8]
mov byte [ecx + ebx + 6], 0x72
mov edx, dword [esi]
mov al, byte [edx + ebx + 6]
test al, 0x10
lea ecx, [edx + ebx + 6]
je 0x10073a6f
and al, 0xef
mov byte [ecx], al
mov eax, dword [esi]
mov cl, byte [eax + ebx + 9]
lea eax, [eax + ebx + 9]
inc cl
mov byte [eax], cl
jmp 0x10073a6f
cmp dl, 0x39
jne 0x10073a6f
cmp cl, 0x33
je 0x100739d1
cmp cl, 0x36
jne 0x10073a6f
mov edx, dword [esp + 0x1c]
lea ecx, [edi + edi*4]
lea eax, [edx + ecx*4 + 8]
mov ecx, dword [eax]
mov byte [ebx + ecx + 6], 0x72
mov edx, dword [esi]
mov cl, byte [edx + ebx + 3]
mov eax, dword [eax]
mov byte [ebx + eax + 4], cl
mov edx, dword [esi]
mov al, byte [edx + ebx + 6]
test al, 0x10
lea ecx, [edx + ebx + 6]
je 0x10073a6f
and al, 0xef
mov byte [ecx], al
mov eax, dword [esi]
mov cl, byte [eax + ebx + 9]
lea eax, [eax + ebx + 9]
inc cl
mov byte [eax], cl
jmp 0x10073a6f
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 2], 5
jne 0x10073a6f
mov edx, dword [esp + 0x30]
mov ecx, dword [edx + 8]
cmp byte [ecx + ebx + 6], 0x72
je 0x10073a6f
mov edx, dword [esp + 0x38]
mov ecx, dword [edx + ebp*4 + 4]
mov edx, dword [0x100bba90]
cmp ecx, dword [edx + 0x80]
je 0x10073a5d
cmp al, 8
jne 0x10073a6f
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 + 2]
mov edx, dword [esp + 0x1c]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ecx*4 + 0x10]
cmp byte [eax], 0x6c
jne 0x10073a6f
mov ecx, dword [esp + 0x7b8]
push edi
push ebp
push ecx
call fcn.1005a3d0
add esp, 0xc
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 5
jne 0x10073e40
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
lea eax, [ecx + ebx]
cmp byte [eax + 7], 0x56
mov dword [esp + 0x40], eax
jne 0x10073b40
cmp byte [eax + 4], 0x74
jne 0x10073b40
mov al, byte [eax + 6]
mov byte [esp + 0x27], al
and al, 0x81
cmp al, 1
jne 0x10073b40
test ebp, ebp
jle 0x10073b40
lea ecx, [ebp - 1]
test cx, cx
mov dword [esp + 0x20], ecx
jle 0x10073b40
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
movsx eax, cx
cmp byte [eax + edx], 5
jne 0x10073aeb
movzx eax, word [edi + eax*2]
lea eax, [eax + eax*4]
mov eax, dword [esi + eax*4 + 8]
cmp byte [eax + ebx + 7], 0x43
je 0x10073af7
dec ecx
test cx, cx
jg 0x10073ad0
mov dword [esp + 0x20], ecx
jmp 0x10073b44
test cx, cx
mov dword [esp + 0x20], ecx
jle 0x10073b44
movsx eax, cx
movzx ecx, word [edi + eax*2]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
cmp byte [ecx + ebx + 4], 0x65
jne 0x10073b44
cmp byte [eax + edx - 1], 8
jne 0x10073b2f
movzx eax, word [edi + eax*2 - 2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
cmp byte [ecx + ebx + 6], 0x72
je 0x10073b44
mov al, byte [esp + 0x27]
mov ecx, dword [esp + 0x40]
and al, 0xfe
or al, 0x80
mov byte [ecx + 6], al
jmp 0x10073b44
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 5
jne 0x10073e40
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
lea esi, [eax + ebx]
cmp byte [esi + 8], 0x46
mov dword [esp + 0x40], esi
jne 0x10073e40
mov al, byte [esi + 9]
test al, al
jne 0x10073e40
cmp byte [esi + 0xa], 0x53
jne 0x10073ba6
test ebp, ebp
jle 0x10073b84
mov eax, dword [esp + 0x28]
cmp byte [eax], 1
je 0x10073baa
cmp ebp, 1
jle 0x10073e40
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 4
jne 0x10073e40
mov edx, ecx
cmp byte [edx - 1], 1
jne 0x10073e40
mov eax, dword [esp + 0x28]
xor ecx, ecx
cmp ebp, ecx
mov dword [esp + 0x20], ecx
jne 0x10073c1e
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 1
mov dword [esp + 0x20], 1
jne 0x10073c05
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x2c]
mov dl, byte [edx]
cmp dl, 6
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
jne 0x10073d19
movzx eax, word [edi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
cmp byte [ecx + ebx + 3], 0x63
je 0x10073d19
mov dword [esp + 0x20], 0
jmp 0x10073e40
mov cl, byte [esi + 6]
and cl, 0x81
cmp cl, 0x80
je 0x10073bca
cmp al, 3
jne 0x10073bca
mov dword [esp + 0x20], 0
jmp 0x10073bca
cmp ebp, 1
jle 0x10073c60
cmp byte [eax], 1
je 0x10073c33
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 2], 1
jne 0x10073c5d
mov eax, dword [esp + 0x38]
mov ecx, dword [0x100bba90]
mov eax, dword [eax + ebp*4 - 4]
cmp eax, dword [ecx + 0xd8]
je 0x10073cd2
mov edx, ecx
cmp eax, dword [edx + 0xdc]
je 0x10073cd2
jmp 0x10073cca
cmp ebp, 1
jne 0x10073c75
cmp byte [eax], 1
jne 0x10073cf9
mov dword [esp + 0x20], 1
jmp 0x10073cda
cmp ebp, 1
mov edi, dword [esp + 0x7b8]
jle 0x10073cd2
lea esi, [ebp - 1]
push esi
push edi
call fcn.1005a340
add esp, 8
test al, al
jne 0x10073cca
push esi
push edi
call fcn.1005a340
add esp, 8
test al, al
jne 0x10073cca
cmp ebp, 1
jle 0x10073cd2
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 4
jne 0x10073cd2
lea edx, [ebp - 2]
push edx
push edi
call fcn.1005a340
add esp, 8
test al, al
jne 0x10073cca
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 1
jne 0x10073cd2
mov dword [esp + 0x20], 1
test ebp, ebp
jle 0x10073bca
mov ecx, dword [esp + 0x28]
mov al, byte [ecx]
cmp al, 8
je 0x10073cec
cmp al, 3
jne 0x10073bca
mov dword [esp + 0x20], 0
jmp 0x10073e40
mov eax, dword [esp + 0x7b8]
push 0
push eax
call fcn.1005a340
add esp, 8
test al, al
je 0x10073cda
mov dword [esp + 0x20], 1
jmp 0x10073cda
cmp dl, 7
jne 0x10073d2b
mov dword [esp + 0x20], 0
jmp 0x10073e40
cmp word [esp + 0x20], 1
jne 0x10073e40
movzx eax, word [edi + ebp*2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
mov al, byte [ecx + ebx + 6]
test al, al
js 0x10073d85
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
jne 0x10073d85
mov ecx, dword [esp + 0x40]
mov al, byte [ecx + 6]
and al, 0x81
cmp al, 0x80
je 0x10073d89
cmp dl, 1
jne 0x10073d73
mov dword [esp + 0x20], 0
jmp 0x10073e40
cmp dl, 3
jne 0x10073d89
mov dword [esp + 0x20], 0
jmp 0x10073e40
mov ecx, dword [esp + 0x40]
and byte [ecx + 2], 0x90
mov ecx, dword [esp + 0x7b8]
push ebp
push ecx
call fcn.1006cdc0
add esp, 8
test ebp, ebp
jle 0x10073dcd
mov edx, dword [esp + 0x28]
mov al, byte [edx]
cmp al, 1
je 0x10073db0
cmp al, 4
jne 0x10073dcd
movzx eax, word [edi + ebp*2 - 2]
mov edi, dword [esp + 0x30]
mov edx, dword [edi + 8]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
mov al, byte [ecx + ebx + 3]
mov byte [edx + ebx + 3], al
jmp 0x10073dd9
mov edi, dword [esp + 0x30]
mov ecx, dword [edi + 8]
mov byte [ecx + ebx + 3], 0x88
mov edx, dword [edi + 8]
lea eax, [edx + ebx + 2]
or byte [eax], 1
mov eax, dword [esp + 0x2c]
cmp byte [eax], 5
jne 0x10073e40
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 + 2]
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 8]
cmp byte [eax + ebx + 8], 0x46
lea esi, [esi + edx*4]
jne 0x10073e40
mov ecx, dword [edi + 8]
test byte [ecx + ebx + 6], 0x40
je 0x10073e40
mov eax, dword [esp + 0x7b8]
lea edx, [ebp + 1]
push edx
push eax
call fcn.1006cdc0
mov ecx, dword [edi + 8]
mov al, byte [ecx + ebx + 3]
mov edx, dword [esi + 8]
mov byte [edx + ebx + 3], al
mov ecx, dword [esi + 8]
lea eax, [ecx + ebx + 2]
mov cl, byte [eax]
add esp, 8
or cl, 1
mov byte [eax], cl
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 7
mov esi, dword [esp + 0x1c]
jne 0x10073f1a
mov edx, dword [esp + 0x2c]
cmp byte [edx], 6
jne 0x10073f1a
mov edi, dword [esp + 0x18]
movzx eax, word [edi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov edx, dword [esi + eax*4 + 8]
cmp byte [edx + ebx + 3], 0x63
jne 0x10073f1a
cmp byte [ecx + ebp + 2], 3
jne 0x10073f1a
mov al, byte [ecx + ebp + 3]
cmp al, 4
je 0x10073f1a
cmp al, 7
je 0x10073f1a
push 0xffffffffffffffff
lea eax, [esp + 0x74]
push eax
movzx eax, word [edi + ebp*2 + 4]
lea ecx, [esp + 0x6c]
push ecx
mov ecx, dword [esp + 0x7c4]
push 0
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 0x10]
mov edx, dword [ecx + 0x2f8]
push 0xffffffffffffffff
push eax
push edx
call fcn.100a5245
cmp dword [esp + 0x64], 0xf42400
je 0x10073f16
mov eax, dword [esp + 0x7b8]
mov ecx, dword [eax + 0x2f8]
mov dl, byte [ecx + 0x10]
and dl, 0xe0
cmp dl, 0x60
jne 0x10073f16
mov eax, dword [esp + 0x10]
mov byte [eax + ebp + 2], 7
movzx eax, word [edi + ebp*2 + 4]
lea ecx, [eax + eax*4]
mov edx, dword [esi + ecx*4 + 8]
mov byte [edx + ebx + 1], 7
movzx eax, word [edi + ebp*2 + 4]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
mov byte [ecx + ebx + 3], 0x61
mov ecx, dword [esp + 0x10]
cmp ebp, 1
jle 0x1007403d
cmp byte [ecx + ebp], 5
jne 0x1007403d
mov edx, dword [esp + 0x30]
mov edi, dword [edx + 8]
mov cl, byte [edi + ebx + 3]
cmp cl, 0x32
lea eax, [edi + ebx + 3]
mov dword [esp + 0x48], eax
jne 0x1007403d
mov eax, dword [esp + 0x28]
cmp byte [eax], 8
je 0x10073f77
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + ebp*4 - 4]
mov eax, dword [0x100bba90]
cmp edx, dword [eax + 0xc]
jne 0x1007403d
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 8
jne 0x1007403d
cmp byte [edi + ebx + 8], 0x49
jne 0x1007403d
mov al, byte [edi + ebx + 9]
test al, al
jne 0x1007403d
lea eax, [edi + ebx + 0xb]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10073f95
sub eax, edx
movsx edx, ax
mov dword [esp + 0x20], eax
lea eax, [edx + edi]
lea ecx, [eax + 0xb]
lea edx, [eax + 8]
cmp ecx, edx
jbe 0x1007403d
cmp byte [eax + ebx + 8], 0x61
jne 0x1007403d
mov eax, dword [esp + 0x28]
cmp byte [eax], 8
lea ecx, [ebp - 1]
mov dword [esp + 0x20], ecx
jne 0x10073ff3
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 2], 8
jne 0x10073ff8
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 - 2]
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 8]
cmp byte [eax + ebx + 5], 0x70
jne 0x10073ff8
dec ecx
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x18]
movsx ecx, cx
movzx eax, word [edx + ecx*2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
mov al, byte [ecx + ebx + 4]
cmp al, 0x31
lea edi, [ecx + ebx]
je 0x10074019
cmp al, 0x33
jne 0x1007403d
mov cl, byte [edi + 5]
cmp cl, 0x73
je 0x1007402b
cmp cl, 0x75
je 0x1007402b
cmp cl, 0x70
jne 0x1007403d
mov edx, dword [esp + 0x48]
mov byte [edx], al
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
mov byte [ecx + ebx + 8], 0x43
test ebp, ebp
jle 0x1007435b
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 5
jne 0x100740f9
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
mov al, byte [ecx + ebx + 3]
cmp al, 0x37
lea esi, [ecx + ebx]
je 0x1007406d
cmp al, 0x38
jne 0x100740f9
mov edx, dword [esp + 0x28]
mov cl, byte [edx]
cmp cl, 8
je 0x10074095
mov eax, dword [esp + 0x38]
mov edx, dword [eax + ebp*4 - 4]
mov eax, dword [0x100bba90]
cmp edx, dword [eax + 0xc]
jne 0x100740f9
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 2], 8
jne 0x100740f9
cmp byte [esi + 8], 0x43
jne 0x100740f9
mov dl, byte [esi + 9]
test dl, dl
je 0x100740a7
cmp dl, 4
jne 0x100740f9
cmp cl, 8
lea eax, [ebp - 1]
mov dword [esp + 0x20], eax
je 0x100740b8
dec eax
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x18]
movsx eax, ax
movzx eax, word [ecx + eax*2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
lea edi, [eax + ebx]
mov al, byte [edi + 4]
cmp al, 0x31
je 0x100740e0
cmp al, 0x32
je 0x100740e0
cmp al, 0x33
jne 0x100740f9
mov cl, byte [edi + 5]
cmp cl, 0x73
je 0x100740ed
cmp cl, 0x75
jne 0x100740f9
cmp dl, 4
jne 0x100740f6
cmp al, 3
je 0x100740f9
mov byte [esi + 3], al
mov esi, dword [esp + 0x10]
cmp byte [esi + ebp], 4
jne 0x10074a4b
mov eax, dword [esp + 0x34]
mov cl, byte [eax + ebp]
test cl, cl
je 0x1007435b
mov al, byte [eax + ebp - 1]
cmp al, 0x28
mov edx, dword [esp + 0x2c]
jne 0x10074148
cmp byte [edx], 3
je 0x1007412e
cmp byte [esi + ebp + 2], 3
jne 0x10074148
mov esi, dword [esp + 0x7b8]
push ebp
push esi
call fcn.1006cdc0
mov edi, dword [esp + 0x24]
add esp, 8
jmp 0x10074366
cmp al, 0x2c
jne 0x1007416a
cmp cl, al
jne 0x1007435b
cmp byte [edx], 3
je 0x100741e3
mov eax, dword [esp + 0x28]
cmp byte [eax], 3
je 0x100741ed
cmp cl, 0x2c
jne 0x1007435b
mov eax, dword [esp + 0x28]
mov cl, byte [eax]
cmp cl, 6
jne 0x1007426d
cmp ebp, 1
jle 0x1007426d
cmp byte [esi + ebp - 2], 3
jne 0x1007426d
cmp byte [edx], 3
jne 0x1007426d
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 - 4]
mov edi, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov esi, dword [edi + eax*4 + 8]
movzx eax, word [edx + ebp*2]
lea edx, [eax + eax*4]
mov eax, dword [edi + edx*4 + 8]
mov dl, byte [esi + ebx + 3]
xor dl, byte [eax + ebx + 3]
test dl, 0xc
jne 0x10074271
cmp ebp, 2
je 0x10074257
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 3], 2
jmp 0x10074251
mov ecx, dword [esp + 0x28]
mov al, byte [ecx]
cmp al, 3
jne 0x10074223
mov esi, dword [esp + 0x7b8]
mov edx, dword [esi + 0x44]
movzx ax, byte [edx + ebp + 1]
push ebp
push eax
push esi
push ebp
push esi
call fcn.100591e0
add esp, 0x14
cmp ax, 2
jne 0x1007421a
push ebp
push esi
call fcn.1006cdc0
add esp, 8
mov edi, dword [esp + 0x1c]
jmp 0x10074366
cmp al, 4
mov edi, dword [esp + 0x1c]
jne 0x10074257
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 2]
lea edx, [eax + eax*4]
movzx eax, word [ecx + ebp*2]
mov edx, dword [edi + edx*4 + 8]
mov dl, byte [edx + ebx + 3]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
xor dl, byte [ecx + ebx + 3]
test dl, 0xc
je 0x1007435f
mov esi, dword [esp + 0x7b8]
push ebp
push esi
call fcn.1006cdc0
add esp, 8
jmp 0x10074366
mov edi, dword [esp + 0x1c]
cmp cl, 2
jne 0x100742a1
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
test byte [eax + ebx + 2], cl
je 0x100742aa
mov esi, dword [esp + 0x7b8]
push ebp
push esi
call fcn.1006cdc0
add esp, 8
jmp 0x10074366
cmp cl, 1
jne 0x100742e6
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
jne 0x100742e6
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 2], 6
jne 0x100742e6
movzx eax, word [edx + ebp*2 + 2]
lea eax, [eax + eax*4]
mov esi, dword [edi + eax*4 + 8]
movzx eax, word [edx + ebp*2]
lea edx, [eax + eax*4]
mov eax, dword [edi + edx*4 + 8]
mov dl, byte [esi + ebx + 3]
xor dl, byte [eax + ebx + 3]
test dl, 0xc
je 0x10074257
cmp cl, 5
jne 0x10074303
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
jne 0x10074303
mov edx, dword [esp + 0x34]
cmp byte [edx + ebp + 1], 0x2c
je 0x10074257
cmp cl, 7
jne 0x1007435f
cmp ebp, 1
jle 0x1007435f
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 5
jne 0x1007435f
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 3
jne 0x1007435f
mov edx, dword [esp + 0x34]
cmp byte [edx + ebp + 1], 0x2c
je 0x10074337
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 2], 6
jne 0x1007435f
cmp ebp, 2
je 0x10074348
mov ecx, dword [esp + 0x34]
mov al, byte [ecx + ebp - 3]
test al, al
jne 0x1007435f
mov esi, dword [esp + 0x7b8]
push ebp
push esi
call fcn.1006cdc0
add esp, 8
jmp 0x10074366
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x7b8]
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 4
jne 0x10074a4b
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
je 0x10074387
cmp ebp, dword [esi + 0x30]
jne 0x10074a4b
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2]
lea ecx, [eax + eax*4]
lea eax, [edi + ecx*4]
mov dword [esp + 0x48], eax
mov eax, dword [eax + 8]
mov al, byte [eax + ebx + 3]
mov byte [esp + 0x27], al
movzx eax, al
mov ecx, eax
and ecx, 0xc
and eax, 0xc0
test ebp, ebp
mov dword [esp + 0x50], ecx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x20], 0
jle 0x1007460b
mov ecx, dword [esp + 0x28]
mov al, byte [ecx]
cmp al, 2
jne 0x100744c2
mov edx, dword [esp + 0x2c]
mov cl, byte [edx]
cmp cl, 6
je 0x1007440d
cmp cl, al
je 0x1007440d
cmp ebp, dword [esi + 0x30]
je 0x1007440d
cmp cl, 1
jne 0x100744c2
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + ebp*4]
mov ecx, dword [0x100bba90]
cmp edx, dword [ecx + 0xf4]
je 0x100744c2
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp + 2], 2
jne 0x10074481
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 + 4]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov edi, dword [ecx + eax*4 + 0x10]
movzx eax, word [edx + ebp*2 - 2]
lea edx, [eax + eax*4]
mov esi, dword [ecx + edx*4 + 0x10]
mov cl, byte [esi]
mov dl, byte [edi]
mov al, cl
cmp cl, dl
jne 0x10074460
test al, al
je 0x1007445c
mov dl, byte [esi + 1]
mov cl, byte [edi + 1]
mov al, dl
cmp dl, cl
jne 0x10074460
add esi, 2
add edi, 2
test al, al
jne 0x10074438
xor eax, eax
jmp 0x10074465
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x10074481
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 3], 4
jne 0x10074481
mov ecx, eax
cmp byte [ecx + ebp + 4], 3
je 0x10074a4b
mov dword [esp + 0x20], 1
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov al, byte [eax + ebx + 4]
cmp al, 0x6e
je 0x10074a30
cmp al, 0x69
je 0x10074a30
cmp al, 0x70
je 0x10074a30
mov ecx, dword [esp + 0x7b8]
push ebp
push ecx
call fcn.1006cdc0
add esp, 8
jmp 0x10074a4b
cmp al, 1
je 0x100744d9
mov edx, dword [esp + 0x38]
mov ecx, dword [edx + ebp*4 - 4]
mov edx, dword [0x100bba90]
cmp ecx, dword [edx + 0x1c]
jne 0x100744e2
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 2
je 0x10074481
cmp al, 1
jne 0x10074599
mov edx, dword [esp + 0x2c]
cmp byte [edx], 6
jne 0x10074599
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + ebp*4]
mov ecx, dword [0x100bba90]
cmp edx, dword [ecx + 0x40]
je 0x10074599
mov edx, dword [esp + 0x10]
mov cl, byte [edx + ebp + 2]
cmp cl, 3
je 0x10074599
cmp cl, 4
je 0x10074599
cmp cl, al
jne 0x10074535
cmp byte [edx + ebp + 3], 4
jne 0x10074535
cmp byte [edx + ebp - 1], 1
je 0x10074553
cmp cl, 2
jne 0x10074481
cmp byte [edx + ebp + 3], 4
jne 0x10074481
cmp byte [edx + ebp - 1], cl
jne 0x10074481
lea eax, [ebp + 3]
cmp eax, 0xffffffff
je 0x10074481
mov edx, dword [esp + 0x30]
mov ecx, dword [edx + 8]
mov edx, dword [esp + 0x18]
movzx eax, word [edx + eax*2]
mov cl, byte [ecx + ebx + 4]
lea eax, [eax + eax*4]
mov edx, dword [edi + eax*4 + 8]
cmp cl, byte [edx + ebx + 4]
jne 0x10074481
cmp cl, 0x71
je 0x10074481
mov dword [esp + 0x20], 0
jmp 0x10074a4b
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + ebp*4 - 4]
mov ecx, dword [0x100bba90]
cmp edx, dword [ecx + 0x58]
jne 0x100745b5
cmp ebp, dword [esi + 0x38]
je 0x10074481
mov edx, dword [esp + 0x34]
cmp byte [edx + ebp - 1], 0x2c
jne 0x100745df
cmp al, 3
jne 0x100745df
mov edx, dword [esp + 0x38]
mov edx, dword [edx + ebp*4 + 4]
cmp edx, dword [ecx + 0x6c]
jne 0x100745df
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp + 2], al
je 0x10074481
cmp al, 1
jne 0x10074607
mov eax, dword [esp + 0x2c]
cmp byte [eax], 6
jne 0x10074607
mov edx, dword [esp + 0x38]
mov eax, dword [edx + ebp*4]
cmp eax, dword [ecx + 0x40]
je 0x10074607
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 2], 4
jne 0x10074481
mov edx, dword [esp + 0x18]
cmp ebp, 1
jle 0x1007464e
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + ebp*4 - 4]
mov eax, dword [0x100bba90]
cmp ecx, dword [eax + 0x84]
jne 0x1007464e
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 1
jne 0x1007464e
mov eax, dword [esp + 0x2c]
mov cl, byte [eax]
cmp cl, 3
je 0x1007464e
cmp cl, 4
je 0x1007464e
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp], 0
je 0x10074481
test ebp, ebp
jne 0x10074744
mov eax, dword [esp + 0x2c]
cmp byte [eax], 8
jne 0x10074680
movzx ecx, word [edx + 2]
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + ecx*4 + 8]
mov cl, byte [eax + ebx + 5]
cmp cl, 0x74
je 0x10074481
cmp cl, 0x70
je 0x10074481
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + ebp*4]
mov ecx, dword [0x100bba90]
cmp eax, dword [ecx + 0x20]
mov dword [esp + 0x60], eax
jne 0x100746c0
test ebp, ebp
jle 0x100746b3
mov eax, dword [esp + 0x34]
mov cl, byte [eax + ebp - 1]
test cl, cl
jne 0x100746b3
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 3
je 0x10074a37
mov eax, dword [esp + 0x2c]
cmp byte [eax], 5
je 0x10074a37
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 8]
mov al, byte [eax + ebx + 4]
cmp al, 0x69
mov byte [esp + 0x47], al
jne 0x10074700
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 7
jne 0x10074700
mov edx, dword [esp + 0x38]
mov ecx, dword [edx + ebp*4 + 4]
mov edx, dword [0x100bba90]
cmp ecx, dword [edx + 0x10]
je 0x10074a37
cmp ecx, dword [edx + 0x24]
je 0x10074a37
mov edx, dword [esp + 0x18]
test ebp, ebp
mov ecx, dword [esp + 0x10]
jle 0x1007484a
cmp byte [ecx + ebp - 1], 3
je 0x10074848
cmp byte [ecx + ebp + 1], 3
je 0x10074848
cmp al, 0x61
jne 0x10074848
mov eax, dword [esp + 0x48]
mov ecx, dword [eax + 0x10]
add ecx, dword [esi + 0x20]
push ecx
call sym.MSGRIT32.DLL_IsRomanNumber
add esp, 4
test eax, eax
jmp 0x1007447b
jle 0x10074680
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 2
jne 0x100747d6
mov eax, dword [esp + 0x2c]
cmp byte [eax], 5
jne 0x100747d6
movzx ecx, word [edx + ebp*2 + 2]
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + ecx*4 + 8]
cmp byte [eax + ebx + 8], 0x50
jne 0x100747d6
mov ecx, dword [esi + 0x48]
mov esi, dword [esi + 4]
lea eax, [ecx + ebp*2]
movzx ecx, word [eax + 2]
movzx eax, word [eax]
lea edx, [ecx + ecx*4]
lea ecx, [esi + edx*4]
movzx edx, byte [ecx]
mov ecx, dword [ecx + 0x10]
mov cl, byte [ecx + edx - 1]
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 8]
mov edx, dword [esp + 0x7b8]
mov edx, dword [edx + 0x14]
movzx eax, byte [eax + edx + 3]
and eax, 0xc
cmp cl, 0x65
jne 0x100747bf
cmp eax, 4
je 0x10074481
jmp 0x10074a4b
cmp cl, 0x69
jne 0x10074a4b
cmp eax, 8
jne 0x10074a4b
jmp 0x10074481
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 1], 5
jne 0x10074680
movzx ecx, word [edx + ebp*2 - 2]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
test byte [ecx + ebx + 6], 6
jne 0x10074680
mov cl, byte [eax + ebp + 1]
cmp cl, 1
je 0x10074813
cmp cl, 2
je 0x10074813
cmp cl, 6
jne 0x10074680
mov edx, dword [esi + 0x48]
movzx eax, word [edx + ebp*2]
mov ecx, dword [esi + 4]
mov edx, dword [esi + 0x10]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 4]
mov cl, byte [eax + edx + 1]
add eax, edx
cmp cl, 5
jbe 0x10074a4b
mov al, byte [eax + 8]
and al, 0xe0
cmp al, 0xc0
jne 0x10074a4b
jmp 0x10074481
test ebp, ebp
jne 0x10074863
cmp byte [ecx + 1], 5
jne 0x10074a4b
cmp al, 0x6e
jne 0x10074a4b
jmp 0x10074a37
cmp ebp, 1
jle 0x1007495a
mov eax, dword [esp + 0x28]
cmp byte [eax], 6
jne 0x1007495a
movzx ecx, word [edx + ebp*2 - 2]
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + ecx*4 + 8]
cmp byte [eax + ebx + 3], 0x63
jne 0x1007495a
mov ecx, dword [esp + 0x34]
mov al, byte [ecx + ebp - 1]
test al, al
jne 0x1007495a
mov eax, ecx
mov cl, byte [eax + ebp - 2]
test cl, cl
jne 0x1007495a
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 2], 3
jne 0x1007495a
mov eax, dword [esp + 0x2c]
mov cl, byte [eax]
cmp cl, 4
je 0x1007495a
cmp cl, 3
je 0x1007495a
cmp cl, 6
je 0x1007495a
cmp dword [esp + 0x60], 0x989680
jae 0x10074a4b
cmp ebp, 3
jl 0x10074900
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 3], 4
je 0x10074a4b
mov edx, dword [esp + 0x18]
movzx ecx, word [edx + ebp*2 - 4]
lea eax, [ecx + ecx*4]
mov ecx, dword [edi + eax*4 + 8]
movzx edx, byte [ecx + ebx + 3]
mov eax, dword [esp + 0x50]
mov ecx, edx
and ecx, 0xc
cmp eax, ecx
jne 0x10074a4b
mov eax, dword [esp + 0x5c]
and edx, 0xc0
cmp eax, edx
je 0x10074481
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 3], 2
jne 0x10074a4b
cmp ebp, 3
jle 0x10074a4b
cmp byte [eax + ebp - 4], 4
jmp 0x1007447b
test ebp, ebp
jle 0x10074a4b
mov eax, dword [esp + 0x28]
cmp byte [eax], 1
jne 0x10074a4b
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
jne 0x10074a4b
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 4
jne 0x10074a4b
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 2], 3
jne 0x10074a4b
mov cl, byte [eax + ebp + 1]
test cl, cl
jne 0x10074a4b
movzx eax, word [edx + ebp*2 - 2]
lea edx, [eax + eax*4]
mov ecx, dword [edi + edx*4 + 0x10]
lea eax, [edi + edx*4]
cmp byte [ecx], 0x75
je 0x10074a4b
mov edx, dword [eax + 8]
movzx eax, byte [edx + ebx + 3]
mov edi, eax
and eax, 0xc0
mov edx, eax
mov eax, dword [esp + 0x18]
movzx ecx, word [eax + ebp*2 + 4]
mov eax, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [eax + ecx*4 + 8]
mov al, byte [ecx + ebx + 3]
movzx ecx, al
mov esi, ecx
and ecx, 0xc0
and edi, 0xc
and esi, 0xc
test edx, edx
mov dword [esp + 0x50], ecx
jne 0x10074a0b
xor al, byte [esp + 0x27]
test al, 0xc
je 0x10074a0b
mov edx, dword [esp + 0x50]
cmp edi, esi
jne 0x10074a15
cmp edx, dword [esp + 0x50]
je 0x10074a4b
test esi, esi
je 0x10074a4b
test edx, edx
je 0x10074a4b
cmp byte [esp + 0x47], 0x6e
mov dword [esp + 0x20], 1
jne 0x10074489
mov esi, dword [esp + 0x7b8]
push 0
push ebp
push esi
mov dword [esp + 0x2c], 2
call fcn.10059490
add esp, 0xc
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 3
jne 0x10074c77
mov eax, dword [esp + 0x38]
cmp dword [eax + ebp*4], 0x989680
jae 0x10074c77
mov ecx, dword [esp + 0x2c]
mov cl, byte [ecx]
cmp cl, 7
je 0x10074a7e
cmp cl, 1
jne 0x10074c77
mov esi, dword [esp + 0x34]
cmp byte [esi + ebp], 0
jne 0x10074c77
cmp cl, 1
mov eax, ebp
je 0x10074aae
mov cl, byte [ebp + esi + 1]
test cl, cl
lea eax, [ebp + 1]
jne 0x10074aae
cmp byte [eax + edx + 1], 7
jne 0x10074aae
mov cl, byte [eax + esi + 1]
test cl, cl
jne 0x10074aae
inc eax
mov al, byte [eax + edx + 1]
cmp al, 1
je 0x10074abe
cmp al, 8
jne 0x10074c77
mov edi, dword [esp + 0x18]
movzx eax, word [edi + ebp*2]
mov ecx, dword [esp + 0x7b8]
lea edx, [eax + eax*4]
mov eax, dword [ecx + 4]
mov eax, dword [eax + edx*4 + 4]
mov ecx, dword [ecx + 0x10]
mov dl, byte [ecx + eax + 3]
and dl, 0xe0
cmp dl, 0x80
mov esi, 3
jne 0x10074af0
mov esi, 8
lea edx, [esi + ecx]
mov dl, byte [edx + eax]
mov byte [esp + 0x27], dl
and dl, 0xe0
cmp dl, 0xc0
jne 0x10074b21
movzx edx, byte [ecx + eax + 1]
cmp esi, edx
jge 0x10074ba7
mov dl, byte [esp + 0x27]
and dl, 1
dec dl
neg dl
sbb edx, edx
inc edx
lea esi, [esi + edx*2 + 5]
movzx edx, byte [ecx + eax + 1]
cmp esi, edx
jge 0x10074ba7
cmp esi, 3
jle 0x10074ba7
add ecx, esi
mov dl, byte [ecx + eax]
and dl, 0xe0
cmp dl, 0x20
jne 0x10074ba7
mov ecx, dword [esp + 0x7b8]
mov edx, dword [ecx + 0x2f8]
mov byte [edx], 0
mov edx, dword [ecx + 0x44]
mov byte [edx + ebp], 5
mov edx, dword [ecx + 0x10]
add edx, esi
lea esi, [edx + eax]
xor eax, eax
mov ax, word [edi + ebp*2]
push ebp
xor edx, edx
mov dl, byte [esi]
push 0
push eax
push 0xffffffffffffffff
push esi
and edx, 0xffffffe0
push edx
push ecx
call fcn.100658c0
mov ecx, dword [esp + 0x7d4]
mov edx, dword [ecx + 4]
mov esi, dword [ecx + 0xf8]
add esp, 0x1c
mov dword [esp + 0x48], eax
movzx eax, word [edi + ebp*2]
lea eax, [eax + eax*4]
mov dword [edx + eax*4 + 8], esi
movzx eax, word [esp + 0x48]
add dword [ecx + 0xf8], eax
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 7
jne 0x10074c80
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + ebp*4]
mov ecx, dword [0x100bba90]
cmp eax, dword [ecx + 0x10]
je 0x10074bd0
cmp eax, dword [ecx + 0x24]
jne 0x10074c80
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
jne 0x10074c80
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 3
jne 0x10074c80
movzx eax, word [edi + ebp*2]
mov esi, dword [esp + 0x1c]
lea edx, [eax + eax*4]
mov ecx, dword [esi + edx*4 + 8]
movzx ecx, byte [ebx + ecx]
lea eax, [esi + edx*4 + 8]
mov edx, dword [esp + 0x7b8]
mov edx, dword [edx + 0xf8]
mov dword [eax], edx
movzx eax, word [edi + ebp*2]
lea eax, [eax + eax*4]
mov edx, dword [esi + eax*4 + 8]
mov byte [ebx + edx], cl
movzx eax, word [edi + ebp*2]
mov edx, dword [esp + 0x10]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
mov byte [ecx + ebx + 1], 4
mov byte [edx + ebp], 4
movzx eax, word [edi + ebp*2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
mov byte [ecx + ebx + 2], 0
movzx eax, word [edi + ebp*2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
mov byte [ecx + ebx + 3], 2
movzx eax, word [edi + ebp*2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
mov eax, dword [esp + 0x7b8]
mov byte [ecx + ebx + 4], 0x6e
add dword [eax + 0xf8], 5
jmp 0x10074c84
mov edi, dword [esp + 0x18]
jmp 0x10074bab
mov esi, dword [esp + 0x1c]
cmp byte [edx + ebp], 6
jne 0x10074d11
movzx eax, word [edi + ebp*2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
cmp byte [ecx + ebx + 3], 0x63
lea eax, [esi + eax*4]
jne 0x10074d11
cmp byte [eax], 7
jne 0x10074d11
mov eax, dword [eax + 0x10]
cmp byte [eax], 0x6e
jne 0x10074d11
cmp byte [eax + 1], 0x65
jne 0x10074d11
test ebp, ebp
jle 0x10074d11
mov eax, dword [esp + 0x28]
cmp byte [eax], 5
jne 0x10074d11
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 5
jne 0x10074d11
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
jne 0x10074d11
mov cl, byte [eax + ebp - 1]
test cl, cl
jne 0x10074d11
movzx eax, word [edi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
lea eax, [ecx + ebx]
cmp byte [eax + 7], 0x43
je 0x10074cf9
test byte [eax + 6], 0x40
je 0x10074d11
mov eax, dword [esp + 0x30]
mov byte [edx + ebp], 7
mov ecx, dword [eax + 8]
mov byte [ecx + ebx + 1], 7
mov eax, dword [eax + 8]
mov byte [eax + ebx + 3], 0x61
cmp byte [edx + ebp], 4
jne 0x10075230
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp], 0
jne 0x1007518d
mov edx, dword [esp + 0x2c]
cmp byte [edx], 4
jne 0x1007518d
movzx eax, word [edi + ebp*2 + 2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 + 8]
mov al, byte [edx + ebx + 4]
cmp al, 0x71
mov byte [esp + 0x27], al
je 0x10074d6c
cmp al, 0x61
je 0x10074d6c
cmp al, 0x6e
je 0x10074d6c
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
cmp byte [ecx + ebx + 4], 0x6e
jne 0x1007518d
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x10]
lea edx, [ebp - 1]
test dx, dx
mov dword [esp + 0x20], edx
jl 0x10074d99
movsx eax, dx
cmp byte [eax + esi], 4
jne 0x10074d95
cmp byte [eax + ecx], 0
jne 0x10074d95
dec edx
test dx, dx
jge 0x10074d80
mov dword [esp + 0x20], edx
test ebp, ebp
jne 0x10074da5
xor edx, edx
mov dword [esp + 0x20], edx
jmp 0x10074e0e
jle 0x10074e0e
mov eax, dword [esp + 0x38]
mov eax, dword [eax + ebp*4]
mov ecx, dword [0x100bba90]
cmp eax, dword [ecx + 0x10]
je 0x10074dbe
cmp eax, dword [ecx + 0x24]
jne 0x10074e0a
cmp byte [esi + ebp - 1], 1
jne 0x10074e0a
mov eax, dword [esp + 0x7b8]
mov ecx, dword [eax + 0x48]
movzx ecx, word [ecx + ebp*2]
lea edx, [ecx + ecx*4]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + edx*4 + 8]
mov ecx, dword [eax + 0x14]
mov byte [edx + ecx + 1], 7
mov edx, dword [eax + 0x44]
mov byte [edx + ebp], 7
mov ecx, dword [eax + 0x48]
movzx ecx, word [ecx + ebp*2]
lea edx, [ecx + ecx*4]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + edx*4 + 8]
mov eax, dword [eax + 0x14]
mov byte [edx + eax + 3], 0x71
jmp 0x1007518d
mov ecx, dword [esp + 0x34]
movsx eax, dx
cmp byte [eax + esi], 3
jne 0x10074e29
cmp byte [eax + ecx], 0
je 0x1007518d
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
test ebp, ebp
jle 0x10074e32
inc edx
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x7b8]
mov edx, dword [edx + 0x30]
lea eax, [ebp + 2]
cmp eax, edx
mov dword [esp + 0x3c], eax
jg 0x10074e5d
cmp byte [eax + esi], 4
jne 0x10074e59
cmp byte [eax + ecx - 1], 0
jne 0x10074e59
inc eax
cmp eax, edx
jle 0x10074e47
mov dword [esp + 0x3c], eax
cmp byte [eax + ecx - 1], 0x2c
jne 0x10074e76
cmp byte [eax + esi + 1], 3
jne 0x10074e76
cmp byte [eax + esi], 4
jne 0x10074e76
inc eax
mov dword [esp + 0x3c], eax
cmp byte [eax + esi], 3
je 0x1007518d
mov edx, dword [esp + 0x3c]
mov al, byte [esp + 0x27]
dec edx
cmp al, 0x6e
mov dword [esp + 0x3c], edx
jne 0x10074eca
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
cmp byte [ecx + ebx + 4], 0x6e
je 0x10074eca
movsx eax, word [esp + 0x20]
sub edx, eax
cmp edx, 1
jne 0x1007518d
mov edx, dword [esp + 0x7b8]
push 0
lea ecx, [ebp + 1]
push ecx
push edx
call fcn.10059490
add esp, 0xc
jmp 0x1007518d
movsx esi, word [esp + 0x20]
cmp esi, edx
mov ecx, dword [esp + 0x1c]
jg 0x10074efc
jmp 0x10074ee0
movzx eax, word [edi + esi*2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov al, byte [eax + ebx + 4]
cmp al, 0x71
je 0x10074efc
cmp al, 0x61
je 0x10074efc
inc esi
cmp esi, edx
jle 0x10074ee0
mov eax, edx
sub eax, esi
jne 0x1007508e
mov eax, dword [esp + 0x28]
cmp byte [eax], 6
jne 0x10074f8b
movzx eax, word [edi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov esi, dword [ecx + eax*4 + 8]
cmp byte [esi + ebx + 3], 0x63
lea eax, [ecx + eax*4]
jne 0x10074f8b
cmp byte [eax], 2
ja 0x10074f8b
mov eax, dword [esp + 0x38]
mov eax, dword [eax + ebp*4]
mov esi, dword [0x100bba90]
cmp eax, dword [esi + 0x10]
je 0x10074f6a
cmp eax, dword [esi + 0x24]
je 0x10074f6a
mov eax, dword [esp + 0x30]
mov esi, dword [eax + 8]
cmp byte [esi + ebx + 4], 0x71
jne 0x10074f8b
mov esi, dword [esp + 0x7b8]
mov eax, dword [eax + 4]
mov esi, dword [esi + 0x10]
mov al, byte [eax + esi + 8]
and al, 0xe0
cmp al, 7
jne 0x10074f8b
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x30]
mov byte [ecx + ebp], 7
mov edx, dword [eax + 8]
mov byte [edx + ebx + 1], 7
mov eax, dword [eax + 8]
mov byte [eax + ebx + 3], 0x71
jmp 0x1007518d
mov eax, dword [esp + 0x10]
mov al, byte [edx + eax + 1]
cmp al, 6
mov byte [esp + 0x27], al
jne 0x10074feb
test ebp, ebp
je 0x10074faf
mov eax, dword [esp + 0x10]
mov al, byte [eax + ebp - 1]
cmp al, 5
je 0x10074feb
cmp al, 7
je 0x10074feb
movzx eax, word [edi + edx*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
cmp byte [eax + ebx + 3], 0x63
jne 0x10074feb
mov eax, dword [esp + 0x10]
cmp byte [edx + eax + 2], 4
jne 0x10074feb
mov esi, dword [esp + 0x34]
cmp byte [edx + esi + 2], 0
jne 0x10074feb
cmp byte [edx + eax + 3], 3
je 0x1007518d
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x1c]
movsx esi, word [esp + 0x20]
sub edx, esi
cmp edx, 1
jne 0x1007507c
cmp byte [esp + 0x27], 5
je 0x10075049
movzx eax, word [edi + esi*2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
add eax, ebx
cmp byte [eax + 4], 0x6e
jne 0x10075049
mov al, byte [eax + 3]
and al, 0xc
cmp al, 4
jne 0x10075049
test ebp, ebp
je 0x1007502d
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 1], 2
je 0x10075049
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x7b8]
push 0
push ecx
push edx
call fcn.10059490
add esp, 0xc
jmp 0x1007518d
cmp edx, 1
jne 0x1007507c
movzx eax, word [edi + esi*2]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + eax*4 + 8]
cmp byte [ecx + ebx + 4], 0x69
jne 0x1007507c
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x7b8]
push 0
push edx
push eax
call fcn.10059490
add esp, 0xc
jmp 0x1007518d
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x7b8]
push ecx
push edx
jmp 0x10075185
cmp esi, edx
mov byte [esp + 0x90], 0
mov byte [esp + 0x91], 1
mov ecx, esi
jg 0x10075163
mov dword [esp + 0x40], 0
mov eax, dword [esp + 0x40]
test eax, eax
jl 0x10075118
cmp eax, 0x1f
jg 0x10075118
movzx eax, word [edi + ecx*2]
mov edx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 4]
mov edx, dword [esp + 0x7b8]
mov edx, dword [edx + 0x10]
add eax, 3
add edx, eax
mov al, byte [edx]
and al, 0xe0
cmp al, 0x80
jne 0x100750f8
test byte [edx + 2], 0x10
je 0x1007510b
lea eax, [esp + 0x90]
sub eax, esi
mov byte [eax + ecx], 0x70
jmp 0x10075118
cmp al, 0xc0
jne 0x1007510b
lea eax, [esp + 0x90]
sub eax, esi
mov byte [eax + ecx], 0x73
jmp 0x10075118
lea edx, [esp + 0x90]
sub edx, esi
mov byte [edx + ecx], 0x64
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x3c]
inc ecx
inc edx
cmp ecx, eax
mov dword [esp + 0x40], edx
jle 0x100750b0
mov cl, byte [esp + 0x90]
cmp cl, 0x73
je 0x1007517c
cmp cl, 0x64
mov al, byte [esp + 0x91]
jne 0x10075146
cmp al, 0x70
je 0x1007517c
cmp al, 0x73
je 0x10075157
cmp cl, 0x70
jne 0x10075153
cmp al, 0x64
je 0x10075157
cmp cl, al
jne 0x10075163
mov eax, dword [esp + 0x7b8]
inc esi
push esi
push eax
jmp 0x10075185
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x7b8]
push 0
push ecx
push edx
call fcn.10059490
add esp, 0xc
jmp 0x1007518d
mov ecx, dword [esp + 0x7b8]
push esi
push ecx
call fcn.1006cdc0
add esp, 8
mov esi, dword [esp + 0x10]
cmp byte [esi + ebp], 4
jne 0x10075230
mov edx, dword [esp + 0x2c]
cmp byte [edx], 4
jne 0x10075230
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
jne 0x10075230
mov cl, byte [eax + ebp + 1]
test cl, cl
jne 0x10075230
mov al, byte [esi + ebp + 2]
cmp al, 3
je 0x10075230
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + 8]
cmp byte [edx + ebx + 4], 0x71
jne 0x10075230
cmp al, 8
je 0x10075230
test ebp, ebp
jle 0x10075296
mov eax, dword [esp + 0x28]
cmp byte [eax], 1
je 0x1007521c
lea eax, [ebp - 1]
movzx ecx, ax
mov eax, dword [esp + 0x7b8]
mov edx, dword [eax + 0x44]
cmp byte [ecx + edx], 2
jne 0x10075230
mov edx, dword [eax + 0x48]
movzx ecx, word [edx + ecx*2]
mov edx, dword [eax + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edx + ecx*4 + 8]
mov edx, dword [eax + 0x14]
cmp byte [ecx + edx + 4], 0x61
jne 0x10075230
jmp 0x10075223
mov eax, dword [esp + 0x7b8]
lea ecx, [ebp + 1]
push ecx
push eax
call fcn.1006cdc0
add esp, 8
test ebp, ebp
mov esi, dword [esp + 0x10]
jle 0x10075296
cmp byte [esi + ebp], 3
jne 0x10075296
mov eax, dword [esp + 0x30]
mov edx, dword [eax + 8]
cmp byte [edx + ebx + 3], 1
jne 0x10075296
mov eax, dword [eax + 0x10]
movzx ecx, byte [eax]
push ecx
call fcn.1009d5a2
add esp, 4
test eax, eax
je 0x10075296
mov edx, dword [esp + 0x2c]
cmp byte [edx], 4
jne 0x10075296
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
jne 0x10075296
cmp byte [esi + ebp + 2], 3
je 0x10075296
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 3
je 0x10075296
mov eax, dword [esp + 0x7b8]
lea edx, [ebp + 1]
push edx
push eax
call fcn.1006cdc0
add esp, 8
cmp byte [esi + ebp], 4
jne 0x10075761
mov ecx, dword [esp + 0x2c]
mov al, byte [ecx]
cmp al, 3
mov byte [esp + 0x17], al
je 0x100754ff
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov al, byte [eax + ebx + 4]
cmp al, 0x69
mov byte [esp + 0x47], al
je 0x100754ff
cmp al, 0x70
je 0x100754ff
test ebp, ebp
jle 0x100754ff
mov ecx, dword [esp + 0x28]
mov dl, byte [ecx]
cmp dl, 3
je 0x100754ff
mov eax, dword [esp + 0x30]
movzx ecx, byte [eax]
mov edi, dword [eax + 0x10]
dec ecx
mov esi, str.qual
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x100754ff
cmp byte [esp + 0x17], 6
jne 0x10075354
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 2], 1
je 0x10075354
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 + 2]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + ecx*4 + 8]
cmp byte [ecx + ebx + 3], 0x63
mov eax, dword [esp + 0x7b8]
jne 0x1007535b
mov esi, dword [eax + 0x4c]
movzx ecx, bp
mov cl, byte [ecx + esi]
cmp cl, 0x2c
je 0x1007535b
cmp cl, 0x3b
je 0x1007535b
cmp cl, 0x3a
jne 0x100754ff
jmp 0x1007535b
mov eax, dword [esp + 0x7b8]
cmp dl, 1
je 0x10075424
mov esi, dword [eax + 0x44]
lea ecx, [ebp - 1]
movzx ecx, cx
cmp byte [ecx + esi], 2
jne 0x10075392
mov esi, dword [eax + 0x48]
movzx ecx, word [esi + ecx*2]
mov esi, dword [eax + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
mov esi, dword [eax + 0x14]
cmp byte [ecx + esi + 4], 0x61
je 0x10075424
cmp dl, 2
jne 0x100753a2
cmp byte [esp + 0x17], 7
je 0x10075424
cmp byte [esp + 0x17], 5
jne 0x100754ff
mov edi, dword [esp + 0x34]
cmp byte [edi + ebp], 0
jne 0x100754ff
xor esi, esi
cmp dl, 4
jne 0x100753df
cmp ebp, 1
jle 0x100753df
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 2], 3
jne 0x100753df
mov cl, byte [edi + ebp - 2]
test cl, cl
jne 0x100753df
mov esi, 1
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + 4]
mov eax, dword [eax + 0x10]
test byte [edx + eax + 3], 2
je 0x100754ff
test esi, esi
jne 0x100754ff
mov ecx, dword [esp + 0x38]
cmp dword [ecx + ebp*4], 0x989680
jae 0x100754ff
mov edx, dword [esp + 0x7b8]
push esi
push ebp
push edx
call fcn.10059490
add esp, 0xc
jmp 0x100754ff
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 2], 3
je 0x100754bd
cmp byte [esp + 0x47], 0x6e
jne 0x10075452
mov edx, dword [esp + 0x7b8]
push 0
push ebp
push edx
call fcn.10059490
add esp, 0xc
jmp 0x100754ff
cmp byte [esp + 0x17], 5
jne 0x10075478
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + ebp*2 + 2]
lea edx, [ecx + ecx*4]
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + edx*4 + 8]
cmp byte [edx + ebx + 8], 0x46
je 0x100754ff
cmp byte [esp + 0x17], 4
jne 0x100754b2
mov eax, dword [eax + 0x4c]
mov al, byte [eax + ebp]
cmp al, 0x2c
je 0x100754b2
cmp al, 0x3b
je 0x100754b2
cmp al, 0x3a
je 0x100754b2
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 + 2]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + edx*4 + 8]
test byte [ecx + ebx + 2], 2
je 0x100754b2
lea edx, [ebp + 1]
push edx
jmp 0x100754ef
mov ecx, dword [esp + 0x7b8]
push ebp
push ecx
jmp 0x100754f7
mov edx, dword [eax + 0x44]
lea ecx, [ebp + 1]
movzx ecx, cx
cmp byte [ecx + edx], 2
jne 0x100754e7
mov edx, dword [eax + 0x48]
movzx ecx, word [edx + ecx*2]
mov edx, dword [eax + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edx + ecx*4 + 8]
mov edx, dword [eax + 0x14]
cmp byte [ecx + edx + 4], 0x61
je 0x100754ee
cmp byte [esp + 0x17], 5
jne 0x100754ff
push ebp
mov eax, dword [esp + 0x7bc]
push eax
call fcn.1006cdc0
add esp, 8
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 4
jne 0x10075761
mov edx, dword [esp + 0x2c]
cmp byte [edx], 3
je 0x10075761
cmp ebp, 1
jle 0x10075761
mov eax, dword [esp + 0x28]
mov al, byte [eax]
cmp al, 5
je 0x10075761
cmp al, 7
je 0x10075761
cmp al, 3
je 0x10075761
cmp byte [ecx + ebp - 2], 4
je 0x10075761
mov dl, byte [ecx + ebp + 2]
cmp dl, 4
jne 0x10075563
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp], 0x2c
jne 0x10075761
mov esi, dword [esp + 0x18]
movzx eax, word [esi + ebp*2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
lea edi, [eax + ebx]
mov al, byte [edi + 4]
cmp al, 0x63
mov dword [esp + 0x48], edi
je 0x1007558c
cmp al, 0x71
jne 0x10075761
cmp dl, 7
je 0x10075761
mov edx, dword [esp + 0x28]
cmp byte [edx], 4
jne 0x10075602
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 3
jne 0x10075602
mov ecx, dword [esp + 0x7b8]
mov edx, dword [ecx + 0x48]
mov esi, dword [ecx + 4]
mov edi, dword [ecx + 0x14]
movzx ecx, word [edx + ebp*2 - 2]
lea eax, [edx + ebp*2]
movzx eax, word [eax]
lea ecx, [ecx + ecx*4]
mov edx, dword [esi + ecx*4 + 8]
xor ecx, ecx
mov cl, byte [edx + edi + 3]
lea edx, [eax + eax*4]
mov eax, dword [esi + edx*4 + 8]
and ecx, 0xffffffcc
push ecx
xor ecx, ecx
mov cl, byte [eax + edi + 3]
and ecx, 0xffffffcc
push ecx
call fcn.1005b880
add esp, 8
test eax, eax
jne 0x10075761
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x48]
mov edx, dword [esp + 0x28]
mov al, byte [edx]
cmp al, 2
mov edx, dword [esp + 0x34]
mov dword [esp + 0x50], 0
mov byte [esp + 0x27], al
jne 0x1007562f
mov al, byte [edx + ebp]
cmp al, 0x2c
je 0x10075627
cmp al, 0x3b
jne 0x1007562f
mov dword [esp + 0x50], 1
cmp byte [esp + 0x27], 1
jne 0x10075681
mov al, byte [edx + ebp]
cmp al, 0x2c
je 0x10075641
cmp al, 0x3b
jne 0x10075681
mov eax, dword [esp + 0x2c]
cmp byte [eax], 4
jne 0x10075750
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 2], 3
jne 0x10075750
cmp byte [edx + ebp - 2], 0x2c
jne 0x10075748
cmp ebp, 2
jle 0x10075748
cmp byte [eax + ebp - 2], 3
jne 0x10075748
jmp 0x10075750
mov edx, dword [esp + 0x7b8]
mov eax, dword [edx + 0x40]
mov edx, dword [0x100bba90]
lea eax, [eax + ebp*4]
mov dword [esp + 0x48], eax
mov eax, dword [eax - 4]
cmp eax, dword [edx + 0x6c]
je 0x100756a5
cmp eax, dword [edx + 0x70]
jne 0x100756f4
movzx eax, word [esi + ebp*2 - 4]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 + 8]
mov al, byte [edx + ebx + 3]
xor al, byte [edi + 3]
test al, 0xc
jne 0x100756f4
movzx eax, word [esi + ebp*2 - 2]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 + 8]
cmp byte [eax + ebx + 3], 0x63
jne 0x100756f4
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 2], 3
jne 0x100756f4
mov eax, dword [esp + 0x2c]
cmp byte [eax], 6
jne 0x100756f4
cmp ebp, 3
jl 0x10075750
mov edx, dword [esp + 0x34]
mov al, byte [edx + ebp - 3]
test al, al
je 0x10075750
cmp byte [esp + 0x27], 6
jne 0x10075748
movzx eax, word [esi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 + 8]
cmp byte [edx + ebx + 3], 0x73
jne 0x10075748
mov eax, dword [esp + 0x48]
mov eax, dword [eax + 4]
mov edx, dword [0x100bba90]
cmp eax, dword [edx + 0x6c]
je 0x10075725
cmp eax, dword [edx + 0x70]
jne 0x10075748
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 2], 3
jne 0x10075748
movzx eax, word [esi + ebp*2 + 4]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 + 8]
mov cl, byte [eax + ebx + 3]
xor cl, byte [edi + 3]
test cl, 0xc
je 0x10075750
mov eax, dword [esp + 0x50]
test eax, eax
je 0x10075761
mov edx, dword [esp + 0x7b8]
push ebp
push edx
call fcn.1006cdc0
add esp, 8
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 3
mov edi, dword [esp + 0x1c]
jne 0x100758df
mov eax, dword [esp + 0x28]
cmp byte [eax], 6
jne 0x100758df
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 - 2]
lea eax, [eax + eax*4]
mov edx, dword [edi + eax*4 + 8]
cmp byte [edx + ebx + 3], 0x63
jne 0x100758df
cmp ebp, 1
jle 0x100758df
cmp byte [ecx + ebp - 2], 4
jne 0x100758df
cmp ebp, 3
jle 0x100757c2
cmp byte [ecx + ebp - 3], 4
jne 0x100757c2
cmp byte [ecx + ebp - 4], 3
je 0x100757d6
cmp ebp, 2
jle 0x100758df
cmp byte [ecx + ebp - 3], 3
jne 0x100758df
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
mov edx, dword [esp + 0x7b8]
je 0x10075802
cmp ebp, dword [edx + 0x30]
je 0x10075802
mov ecx, dword [esp + 0x2c]
mov al, byte [ecx]
cmp al, 8
je 0x10075802
cmp al, 7
je 0x10075802
cmp al, 5
jne 0x100758d9
mov eax, dword [edx + 0x48]
movzx eax, word [eax + ebp*2]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 4]
mov eax, dword [eax + ecx*4 + 4]
mov ecx, dword [edx + 0x10]
lea esi, [ecx + eax]
cmp byte [esi], 0x45
jne 0x100758d9
mov al, byte [esi + 3]
mov cl, al
and cl, 0xe0
cmp cl, 0xc0
jne 0x100758d9
test al, 2
je 0x100758d9
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2]
lea ecx, [eax + eax*4]
mov eax, dword [edi + ecx*4 + 8]
lea esi, [edi + ecx*4 + 8]
movzx ecx, byte [ebx + eax]
mov eax, dword [edx + 0xf8]
mov dword [esi], eax
mov esi, dword [esp + 0x18]
movzx eax, word [esi + ebp*2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov byte [ebx + eax], cl
movzx eax, word [esi + ebp*2]
lea ecx, [eax + eax*4]
mov eax, dword [edi + ecx*4 + 8]
mov ecx, dword [esp + 0x10]
mov byte [eax + ebx + 1], 4
mov byte [ecx + ebp], 4
movzx eax, word [esi + ebp*2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
mov byte [ecx + ebx + 2], 0
mov eax, dword [edx + 0x48]
movzx eax, word [eax + ebp*2]
movzx esi, word [esi + ebp*2]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 4]
mov ecx, dword [eax + ecx*4 + 8]
mov eax, dword [edx + 0x14]
mov cl, byte [ecx + eax + 3]
and cl, 0xcc
lea eax, [esi + esi*4]
mov eax, dword [edi + eax*4 + 8]
mov byte [eax + ebx + 3], cl
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
mov byte [ecx + ebx + 4], 0x6e
add dword [edx + 0xf8], 5
mov ecx, dword [esp + 0x10]
jmp 0x100758e6
mov edx, dword [esp + 0x7b8]
cmp byte [ecx + ebp], 1
jne 0x10075af2
mov eax, dword [esp + 0x38]
mov ecx, dword [0x100bba90]
mov eax, dword [eax + ebp*4]
cmp eax, dword [ecx + 0x14]
je 0x1007590e
cmp eax, dword [ecx + 0xa0]
jne 0x10075af2
mov esi, dword [esp + 0x30]
mov ecx, dword [esi + 8]
movzx eax, byte [ecx + ebx + 3]
mov ecx, dword [esp + 0x2c]
mov cl, byte [ecx]
cmp cl, 5
mov dword [esp + 0x48], eax
jne 0x10075944
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
cmp byte [eax + ebx + 8], 0x50
jne 0x10075abd
cmp cl, 8
jne 0x10075964
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 + 2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
cmp byte [ecx + ebx + 5], 0x70
je 0x10075abd
test ebp, ebp
jle 0x100759f3
mov eax, dword [esp + 0x28]
mov cl, byte [eax]
cmp cl, 1
jne 0x10075997
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp], 0
jne 0x10075abd
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
je 0x10075a8f
jmp 0x10075abd
mov esi, dword [edx + 0x44]
lea eax, [ebp - 1]
movzx eax, ax
cmp byte [eax + esi], 2
jne 0x100759c5
mov esi, dword [edx + 0x48]
movzx eax, word [esi + eax*2]
mov esi, dword [edx + 4]
lea eax, [eax + eax*4]
mov eax, dword [esi + eax*4 + 8]
mov esi, dword [edx + 0x14]
cmp byte [eax + esi + 4], 0x61
je 0x10075abd
cmp cl, 5
jne 0x100759f3
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
cmp byte [ecx + ebx + 8], 0x50
je 0x100759f3
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 4
je 0x100759f3
cmp al, 3
jne 0x10075abd
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + ebp*4 + 4]
mov ecx, dword [0x100bba90]
cmp eax, dword [ecx + 0x1c]
je 0x10075abd
cmp eax, dword [ecx + 0x70]
jne 0x10075a8b
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 2], 4
jne 0x10075a8b
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 + 4]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
cmp byte [eax + ebx + 4], 0x63
jne 0x10075a8b
mov eax, dword [edx + 0xf8]
mov esi, dword [esp + 0x30]
mov byte [eax + ebx + 1], 4
mov byte [ecx + ebp], 4
mov ecx, dword [edx + 0xf8]
mov byte [ebx + ecx], 1
mov eax, dword [edx + 0xf8]
mov byte [eax + ebx + 2], 0
mov ecx, dword [edx + 0xf8]
mov byte [ecx + ebx + 4], 0x63
mov eax, dword [esi + 8]
mov al, byte [eax + ebx + 3]
mov ecx, dword [edx + 0xf8]
mov byte [ecx + ebx + 3], al
mov ecx, dword [edx + 0xf8]
mov dword [esi + 8], ecx
add dword [edx + 0xf8], 5
jmp 0x10075a8f
mov esi, dword [esp + 0x30]
mov eax, dword [esi + 8]
cmp byte [eax + ebx + 3], 0x88
jne 0x10075af2
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 4
jne 0x10075af2
mov eax, dword [esp + 0x10]
mov al, byte [eax + ebp + 2]
cmp al, 3
je 0x10075af2
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp + 1], 0
jne 0x10075abd
cmp al, 4
je 0x10075af2
mov edx, dword [esp + 0x7b8]
push 0
push ebp
push edx
call fcn.10059490
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + 8]
mov dl, byte [esp + 0x54]
mov edi, dword [esp + 0x28]
mov byte [ecx + ebx + 3], dl
mov eax, dword [eax + 8]
mov edx, dword [esp + 0x7c4]
add esp, 0xc
mov byte [eax + ebx + 4], 0x33
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 6
jne 0x10076874
mov eax, dword [esp + 0x30]
cmp byte [eax], 3
jne 0x10076874
xor esi, esi
cmp ebp, esi
jle 0x10076874
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + ebp*4]
mov ecx, dword [0x100bba90]
cmp eax, dword [ecx + 0x1c]
jne 0x10076874
mov eax, dword [esp + 0x28]
mov cl, byte [eax]
cmp cl, 6
je 0x10076874
cmp ebp, 1
lea eax, [ebp - 1]
mov dword [esp + 0x60], esi
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x50], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x3c], esi
jle 0x10075c4b
cmp cl, 3
mov esi, dword [esp + 0x34]
jne 0x10075b81
cmp byte [esi + ebp - 2], 0x2c
jne 0x10075b81
mov dword [esp + 0x3c], 0
jmp 0x10076361
cmp byte [esi + ebp - 1], 0x2c
jne 0x10075c4b
cmp byte [esi + ebp - 2], 0x2c
je 0x10075c4b
cmp cl, 5
je 0x10075c4b
cmp ebp, 2
jle 0x10076874
cmp byte [esi + ebp - 3], 0x2c
jne 0x10075bbf
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp - 3], 5
je 0x10076874
lea eax, [ebp - 1]
mov dword [esp + 0x20], eax
movsx eax, ax
lea edi, [ebp - 6]
cmp eax, edi
jl 0x10075c3f
cmp word [esp + 0x20], 0
jl 0x10075c3f
mov edx, dword [esp + 0x10]
cmp byte [eax + edx], 1
mov esi, dword [esp + 0x20]
je 0x10075c13
mov eax, dword [esp + 0x7b8]
push esi
push eax
call fcn.1005a340
add esp, 8
test al, al
jne 0x10075c13
dec esi
movsx eax, si
cmp eax, edi
mov dword [esp + 0x20], esi
jge 0x10075bd0
mov edx, dword [esp + 0x7b8]
jmp 0x1007635d
cmp si, 1
movsx eax, si
mov dword [esp + 0x3c], 0xa
mov dword [esp + 0x4c], eax
jle 0x10075c3f
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx - 2], 1
jne 0x10075c3f
cmp byte [eax + ecx - 1], 3
jne 0x10075c3f
dec eax
mov dword [esp + 0x4c], eax
mov edx, dword [esp + 0x7b8]
jmp 0x1007635d
cmp ebp, dword [edx + 0x30]
mov byte [esp + 0x27], 0
mov byte [esp + 0x17], 0
jge 0x10075c5f
mov byte [esp + 0x27], 1
cmp ebp, 1
jle 0x10075d02
mov ecx, dword [edx + 0x44]
lea eax, [ecx + ebp]
cmp byte [eax - 1], 3
mov dword [esp + 0x40], eax
jne 0x10075d02
mov esi, dword [edx + 0x48]
movzx eax, word [esi + ebp*2 - 2]
mov edi, dword [edx + 4]
mov ecx, dword [edx + 0x14]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov cl, byte [eax + ecx + 4]
and cl, 0x1c
cmp cl, 0xc
je 0x10075d02
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 6
je 0x10075cb8
mov ecx, dword [esp + 0x34]
mov al, byte [ecx + ebp - 2]
cmp al, 0x3a
je 0x10075cb8
cmp al, 0x3b
jne 0x10075d02
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 - 4]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + ecx*4 + 8]
cmp byte [ecx + ebx + 3], 0x63
jne 0x10075cfd
cmp ebp, 2
jle 0x10075cfd
mov eax, dword [esp + 0x40]
cmp byte [eax - 3], 3
jne 0x10075cfd
movzx eax, word [esi + ebp*2 - 6]
mov esi, dword [edx + 0x14]
lea ecx, [eax + eax*4]
mov eax, dword [edi + ecx*4 + 8]
mov cl, byte [eax + esi + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x10075d02
mov byte [esp + 0x17], 2
lea eax, [ebp - 1]
mov dword [esp + 0x20], eax
movsx eax, ax
lea ecx, [ebp - 6]
cmp eax, ecx
jl 0x10076347
jmp 0x10075d20
mov ecx, dword [esp + 0x10]
movzx esi, byte [eax + ecx]
mov ecx, dword [esp + 0x34]
cmp byte [eax + ecx], 0
jne 0x100761ac
cmp esi, 6
jne 0x10075d9a
cmp byte [esp + 0x17], 2
jb 0x10075e09
mov ecx, dword [esp + 0x38]
mov ecx, dword [ecx + eax*4]
mov edi, dword [0x100bba90]
cmp ecx, dword [edi + 0x6c]
je 0x10075d61
cmp ecx, dword [edi + 0x78]
jne 0x10075e09
mov ecx, dword [esp + 0x4c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x6c], ecx
movzx ecx, word [edi + ecx*2]
mov edi, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
movzx ecx, byte [ecx + ebx + 3]
and ecx, 0xc0
mov dword [esp + 0x5c], 1
mov byte [esp + 0x17], 0
mov dword [esp + 0x50], ecx
jmp 0x10075e09
cmp esi, 8
jne 0x10075e00
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + eax*2]
mov edi, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
cmp byte [ecx + ebx + 5], 0x76
jne 0x10075dd7
cmp word [esp + 0x20], 0
jle 0x10075e09
mov ecx, dword [esp + 0x38]
mov ecx, dword [ecx + eax*4 - 4]
mov edi, dword [0x100bba90]
cmp ecx, dword [edi + 0xa4]
je 0x10075e09
mov eax, dword [esp + 0x20]
movsx esi, ax
lea ecx, [ebp - 2]
cmp esi, ecx
jge 0x10075dee
test ax, ax
jne 0x100761ac
add byte [esp + 0x17], 2
mov dword [esp + 0x3c], 0x64
jmp 0x100761ac
cmp esi, 1
je 0x100761dd
mov ecx, dword [edx + 0x44]
add ecx, eax
cmp byte [ecx], 3
mov dword [esp + 0x40], ecx
jne 0x10075e6d
mov ecx, dword [edx + 0x48]
movzx ecx, word [ecx + eax*2]
mov edi, dword [edx + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
mov edi, dword [edx + 0x14]
mov cl, byte [ecx + edi + 4]
and cl, 0x1c
cmp cl, 0xc
je 0x10075e6d
cmp word [esp + 0x20], 0
jle 0x10075e6d
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx - 1], 2
jne 0x100761dd
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + eax*2 - 2]
mov edi, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
cmp byte [ecx + ebx + 4], 0x61
je 0x100761dd
cmp esi, 4
jne 0x10075f4c
mov ecx, dword [esp + 0x38]
mov esi, dword [0x100bba90]
mov ecx, dword [ecx + eax*4]
cmp ecx, dword [esi + 0x10]
je 0x1007627e
cmp ecx, dword [esi + 0x24]
je 0x1007627e
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + eax*2]
mov esi, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
lea esi, [ecx + ebx]
cmp byte [esi + 4], 0x71
je 0x1007627e
mov ecx, dword [esp + 0x40]
cmp byte [ecx + 1], 3
jne 0x10075ee0
mov ecx, dword [edx + 0x48]
movzx ecx, word [ecx + eax*2 + 2]
mov edi, dword [edx + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
mov edi, dword [edx + 0x14]
mov cl, byte [ecx + edi + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x10075f20
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx + 1], 4
jne 0x1007627e
mov ecx, dword [esp + 0x40]
cmp byte [ecx + 2], 3
jne 0x1007627e
mov ecx, dword [edx + 0x48]
movzx eax, word [ecx + eax*2 + 4]
mov ecx, dword [edx + 4]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov ecx, dword [edx + 0x14]
mov al, byte [eax + ecx + 4]
and al, 0x1c
cmp al, 0xc
je 0x1007627e
mov al, byte [esp + 0x17]
xor ecx, ecx
mov cl, byte [esi + 3]
inc al
mov byte [esp + 0x17], al
and ecx, 0xc
cmp al, 1
mov dword [esp + 0x3c], ecx
jbe 0x1007627e
movsx eax, word [esp + 0x20]
mov dword [esp + 0x4c], eax
jmp 0x100761ac
cmp esi, 2
jne 0x100760ac
mov edi, dword [esp + 0x18]
movzx ecx, word [edi + eax*2]
mov esi, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
mov cl, byte [ecx + ebx + 4]
cmp cl, 0x61
jne 0x10075f90
inc byte [esp + 0x17]
mov ecx, dword [esp + 0x60]
inc ecx
cmp ecx, 2
mov dword [esp + 0x60], ecx
je 0x100762a3
mov dword [esp + 0x68], eax
jmp 0x1007627e
cmp cl, 0x73
jne 0x1007627e
mov ecx, ebp
sub ecx, eax
cmp ecx, 3
jle 0x10075fba
cmp ecx, 4
jne 0x1007627e
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx + 2], 7
jne 0x1007627e
mov ecx, dword [esp + 0x40]
mov cl, byte [ecx + 1]
cmp cl, 3
mov byte [esp + 0x47], cl
jne 0x10075feb
mov esi, dword [edx + 0x48]
movzx ecx, word [esi + eax*2 + 2]
mov edi, dword [edx + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
mov edi, dword [edx + 0x14]
mov cl, byte [ecx + edi + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x1007601e
mov ecx, dword [esp + 0x40]
cmp byte [ecx + 2], 3
jne 0x1007627e
mov esi, dword [edx + 0x48]
movzx ecx, word [esi + eax*2 + 4]
mov edi, dword [edx + 4]
lea ecx, [ecx + ecx*4]
mov ecx, dword [edi + ecx*4 + 8]
mov edi, dword [edx + 0x14]
mov cl, byte [ecx + edi + 4]
and cl, 0x1c
cmp cl, 0xc
je 0x1007627e
cmp byte [esp + 0x47], 3
jne 0x10076046
movzx ecx, word [esi + eax*2 + 2]
lea edi, [ecx + ecx*4]
mov ecx, dword [edx + 4]
mov ecx, dword [ecx + edi*4 + 8]
mov edi, dword [edx + 0x14]
mov cl, byte [ecx + edi + 4]
and cl, 0x1c
cmp cl, 0xc
lea ecx, [eax + 1]
jne 0x10076049
lea ecx, [eax + 2]
cmp word [esp + 0x20], 0
mov dword [esp + 0x3c], ecx
jle 0x1007627e
mov ecx, dword [esp + 0x40]
cmp byte [ecx - 1], 3
jne 0x10076082
movzx eax, word [esi + eax*2 - 2]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 4]
mov eax, dword [eax + ecx*4 + 8]
mov cl, byte [eax + edi + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x100762c7
mov esi, dword [esp + 0x3c]
mov eax, dword [esp + 0x18]
movzx eax, word [eax + esi*2]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + ecx*4 + 8]
mov al, byte [ecx + ebx + 3]
and al, 0xc
cmp al, 4
je 0x100762cb
jmp 0x1007627e
cmp esi, 6
jne 0x100760d4
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + eax*2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
cmp byte [eax + ebx + 3], 0x63
jne 0x100761ac
jmp 0x1007627e
cmp esi, 7
je 0x100761ac
cmp esi, 5
jne 0x1007627e
cmp byte [esp + 0x17], 1
jne 0x1007614d
movsx esi, word [esp + 0x20]
mov ecx, dword [edx + 0x44]
mov al, byte [ecx + esi + 1]
cmp al, 3
lea edi, [ecx + esi]
jne 0x10076121
mov eax, dword [edx + 0x48]
movzx eax, word [eax + esi*2 + 2]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 4]
mov ecx, dword [eax + ecx*4 + 8]
mov eax, dword [edx + 0x14]
mov cl, byte [ecx + eax + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x10076148
cmp byte [edi + 2], 3
jne 0x1007614d
mov eax, dword [edx + 0x48]
movzx eax, word [eax + esi*2 + 4]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 4]
mov ecx, dword [eax + ecx*4 + 8]
mov eax, dword [edx + 0x14]
mov cl, byte [ecx + eax + 4]
and cl, 0x1c
cmp cl, 0xc
je 0x1007614d
mov byte [esp + 0x17], 2
movsx esi, word [esp + 0x20]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + esi*4]
mov eax, dword [0x100bba90]
cmp ecx, dword [eax + 0x108]
jne 0x100761ac
mov eax, dword [esp + 0x10]
cmp byte [esi + eax + 1], 1
jne 0x100761ac
mov edi, dword [esp + 0x48]
cmp byte [edi + eax], 3
jne 0x100761ac
mov eax, dword [edx + 0x48]
movzx esi, word [eax + esi*2 + 2]
mov ecx, dword [edx + 4]
lea esi, [esi + esi*4]
mov esi, dword [ecx + esi*4 + 0x10]
cmp byte [esi], 0x75
je 0x100761ac
movzx eax, word [eax + edi*2]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + eax*4 + 8]
mov eax, dword [edx + 0x14]
test byte [ecx + eax + 4], 0x20
je 0x100761ac
mov byte [esp + 0x17], 0
cmp word [esp + 0x5c], 1
jne 0x10076347
cmp byte [esp + 0x17], 2
jae 0x1007631a
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x5c], 0
mov byte [esp + 0x17], 2
mov dword [esp + 0x4c], ecx
jmp 0x10076347
lea ecx, [ebp - 1]
cmp eax, ecx
jne 0x10076211
cmp ebp, 1
jle 0x10076211
cmp esi, 3
jne 0x10076211
mov ecx, dword [esp + 0x38]
mov esi, dword [0x100bba90]
mov ecx, dword [ecx + ebp*4 - 8]
cmp ecx, dword [esi + 0x10]
je 0x10076206
cmp ecx, dword [esi + 0x24]
jne 0x10076211
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 1], 5
jne 0x1007627e
inc byte [esp + 0x17]
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x10076225
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x18]
movzx ecx, word [ecx + eax*2]
mov esi, dword [esp + 0x1c]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
movzx ecx, byte [ecx + ebx + 3]
and ecx, 0xc
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x20]
test cx, cx
mov dword [esp + 0x4c], eax
jle 0x1007627e
mov esi, dword [esp + 0x10]
cmp byte [eax + esi - 1], 4
jne 0x1007627e
cmp byte [eax + esi + 1], 4
jne 0x1007627e
cmp cx, 1
jle 0x10076278
mov esi, dword [esp + 0x34]
cmp byte [eax + esi - 1], 0
jne 0x1007627a
cmp cx, 1
jne 0x1007627e
inc byte [esp + 0x17]
mov eax, dword [esp + 0x20]
test ax, ax
je 0x100761ac
dec eax
mov dword [esp + 0x20], eax
movsx eax, ax
lea ecx, [ebp - 6]
cmp eax, ecx
jge 0x10075d20
jmp 0x100761ac
mov ecx, dword [esp + 0x68]
movzx eax, word [edi + ecx*2]
lea eax, [eax + eax*4]
mov eax, dword [esi + eax*4 + 8]
movzx eax, byte [eax + ebx + 3]
and eax, 0xc
mov dword [esp + 0x3c], eax
mov dword [esp + 0x4c], ecx
jmp 0x100761ac
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + esi*2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov cl, byte [eax + ebx + 3]
and cl, 0xc
cmp cl, 4
mov byte [esp + 0x17], 2
jne 0x100762fc
mov dword [esp + 0x3c], 4
jmp 0x100761ac
mov eax, dword [esp + 0x10]
cmp byte [esi + eax - 1], 1
je 0x100761ac
movsx eax, word [esp + 0x20]
dec eax
mov dword [esp + 0x4c], eax
jmp 0x100761ac
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ecx*2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
xor ecx, ecx
mov cl, byte [eax + ebx + 3]
mov eax, dword [esp + 0x50]
and ecx, 0xc0
add eax, ecx
mov dword [esp + 0x50], eax
cmp byte [esp + 0x27], 1
jne 0x10076874
cmp byte [esp + 0x17], 1
jbe 0x10076874
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
cmp byte [eax], 7
mov dword [esp + 0x40], 1
je 0x10076396
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
mov al, byte [ecx + ebx + 3]
cmp al, 0x88
je 0x10076396
test al, al
jne 0x1007649b
mov edi, dword [esp + 0x1c]
movsx eax, word [esp + 0x20]
mov ecx, ebp
sub ecx, eax
cmp ecx, 2
je 0x100763d6
cmp ebp, 1
jle 0x10076455
mov eax, dword [edx + 0x44]
cmp byte [eax + ebp - 2], 3
jne 0x10076407
mov ecx, dword [edx + 0x48]
movzx eax, word [ecx + ebp*2 - 4]
mov ecx, dword [edx + 4]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov ecx, dword [edx + 0x14]
mov al, byte [eax + ecx + 4]
and al, 0x1c
cmp al, 0xc
je 0x10076407
mov ecx, dword [esp + 0x38]
mov ecx, dword [ecx + ebp*4 - 4]
mov esi, dword [0x100bba90]
mov eax, 9
lea esp, [esp]
cmp ecx, dword [esi + eax*4]
je 0x100763fd
inc eax
cmp eax, 0xc
jle 0x100763f0
jmp 0x1007640d
mov dword [esp + 0x40], 0
jmp 0x1007640d
mov esi, dword [0x100bba90]
cmp ebp, 1
jle 0x1007645b
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 2
jne 0x1007645b
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 4]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
cmp byte [ecx + ebx + 4], 0x73
jne 0x1007645b
mov eax, dword [esp + 0x38]
mov eax, dword [eax + ebp*4 - 4]
cmp eax, dword [esi + 0x34]
je 0x1007644b
cmp eax, dword [esi + 0x24]
je 0x1007644b
cmp eax, dword [esi + 0x10]
jne 0x1007645b
mov dword [esp + 0x40], 0
jmp 0x1007645b
mov esi, dword [0x100bba90]
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + ebp*4 - 4]
cmp eax, dword [esi + 0x48]
je 0x10076874
cmp ebp, 2
jle 0x10076490
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 2
jne 0x10076490
mov al, byte [eax + ebp - 3]
cmp al, 4
je 0x10076874
cmp al, 5
je 0x10076874
cmp dword [esp + 0x40], 1
jne 0x10076874
mov eax, dword [edx + 0x30]
lea esi, [ebp + 1]
cmp esi, eax
mov dword [esp + 0x20], 0
jg 0x1007656d
mov ecx, dword [esp + 0x10]
mov cl, byte [esi + ecx]
cmp cl, 5
je 0x1007656d
cmp cl, 7
je 0x100764ea
cmp cl, 8
jne 0x100764f5
mov eax, dword [esp + 0x18]
movzx eax, word [eax + esi*2]
mov edi, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov al, byte [eax + ebx + 5]
cmp al, 0x74
je 0x100764ea
cmp al, 0x70
jne 0x100764f5
mov eax, dword [esp + 0x10]
cmp byte [esi + eax + 1], 5
je 0x10076558
mov eax, dword [edx + 0x44]
cmp byte [esi + eax], 4
jne 0x10076520
lea eax, [ebp + 1]
cmp esi, eax
jne 0x10076520
mov eax, dword [edx + 0x48]
movzx eax, word [eax + esi*2]
mov edi, dword [edx + 4]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov edi, dword [edx + 0x14]
cmp byte [eax + edi + 4], 0x71
je 0x10076565
mov eax, dword [edx + 0x4c]
cmp byte [esi + eax], 0
jne 0x10076558
cmp cl, 2
je 0x10076558
cmp cl, 6
je 0x10076558
cmp cl, 4
jne 0x1007654a
lea eax, [ebp + 1]
cmp esi, eax
jne 0x1007654a
mov ecx, dword [esp + 0x10]
cmp byte [esi + ecx + 1], 5
je 0x10076558
mov eax, dword [edx + 0x30]
inc esi
cmp esi, eax
jle 0x100764b1
jmp 0x1007656d
mov dword [esp + 0x20], 1
jmp 0x1007666f
mov dword [esp + 0x40], 0
lea eax, [ebp + 1]
cmp esi, eax
jle 0x1007666f
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x4c]
movzx eax, word [ecx + eax*2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
cmp byte [eax + ebx + 7], 0x43
jne 0x100765bd
mov edi, dword [edx + 0x30]
lea ecx, [esi + 1]
movsx eax, cx
cmp eax, edi
jg 0x100765bd
mov edi, dword [esp + 0x10]
cmp byte [eax + edi], 5
je 0x100765ba
mov edi, dword [edx + 0x30]
inc ecx
movsx eax, cx
cmp eax, edi
jle 0x100765a3
jmp 0x100765bd
movsx esi, cx
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + esi*2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov al, byte [eax + ebx + 6]
mov cl, al
and cl, 0x81
movzx cx, cl
cmp cx, 0x80
mov dword [esp + 0x20], ecx
jne 0x100765f2
and al, 6
cmp al, 6
jne 0x10076874
mov eax, dword [esp + 0x10]
mov cl, byte [esi + eax + 1]
inc esi
cmp cl, 7
mov dword [esp + 0x20], 1
jne 0x10076609
inc esi
mov ecx, dword [esp + 0x34]
cmp byte [esi + ecx], 0
je 0x1007661b
mov dword [esp + 0x20], 2
cmp byte [esi + eax], 2
jne 0x10076648
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
inc esi
lea edi, [esi + eax]
sub ecx, eax
nop
cmp byte [ecx + edi], 0
je 0x1007663a
inc dword [esp + 0x20]
mov al, byte [edi]
cmp al, 3
je 0x10076644
cmp al, 4
jne 0x10076648
inc esi
inc edi
jmp 0x10076630
mov ecx, dword [esp + 0x10]
mov al, byte [esi + ecx]
cmp al, 1
je 0x1007665f
cmp al, 8
je 0x1007665f
cmp al, 4
je 0x1007665f
cmp al, 3
jne 0x10076663
dec dword [esp + 0x20]
cmp word [esp + 0x20], 0
je 0x10076874
cmp dword [esp + 0x40], 1
jne 0x10076874
mov eax, dword [esp + 0x10]
mov byte [eax + ebp], 8
mov ecx, dword [edx + 0xf8]
mov byte [ebx + ecx], 1
mov eax, dword [edx + 0xf8]
mov byte [eax + ebx + 1], 8
mov ecx, dword [edx + 0xf8]
mov byte [ecx + ebx + 2], 0
mov eax, dword [edx + 0xf8]
mov byte [eax + ebx + 6], 0x6e
mov eax, dword [esp + 0x3c]
cmp eax, 0x64
jne 0x10076704
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 8
jne 0x10076787
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 2]
mov edi, dword [esp + 0x1c]
mov esi, dword [edx + 0xf8]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov al, byte [eax + ebx + 4]
mov byte [esi + ebx + 4], al
movzx eax, word [ecx + ebp*2 - 2]
mov esi, dword [edx + 0xf8]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov al, byte [eax + ebx + 3]
mov byte [esi + ebx + 3], al
jmp 0x100767d5
test eax, eax
jne 0x10076787
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 - 2]
mov edi, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
movzx eax, byte [eax + ebx + 3]
mov byte [esp + 0x27], al
and eax, 0xc
mov esi, eax
jne 0x10076773
mov eax, dword [esp + 0x28]
cmp byte [eax], 3
jne 0x10076773
mov eax, dword [esp + 0x10]
mov al, byte [eax + ebp - 2]
cmp al, 4
je 0x10076749
cmp al, 1
jne 0x10076773
movzx eax, word [ecx + ebp*2 - 4]
mov esi, dword [edx + 0xf8]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov al, byte [eax + ebx + 3]
and al, 0xfc
mov byte [esi + ebx + 3], al
movzx eax, word [ecx + ebp*2 - 4]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
jmp 0x100767b4
mov ecx, dword [edx + 0xf8]
mov al, byte [esp + 0x27]
mov byte [ecx + ebx + 3], al
mov ecx, dword [esp + 0x18]
jmp 0x100767be
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x4c]
movzx eax, word [ecx + eax*2]
mov edi, dword [esp + 0x1c]
mov esi, dword [edx + 0xf8]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov al, byte [eax + ebx + 3]
and al, 0xfc
mov byte [esi + ebx + 3], al
mov eax, dword [edx + 0xf8]
movzx eax, byte [eax + ebx + 3]
and eax, 0xc
mov esi, eax
cmp esi, 4
mov eax, dword [edx + 0xf8]
jne 0x100767d0
mov byte [eax + ebx + 4], 0x36
jmp 0x100767d5
mov byte [eax + ebx + 4], 0x33
cmp word [esp + 0x5c], 1
jne 0x10076855
mov esi, dword [esp + 0x10]
lea eax, [ebp + 1]
mov dword [esp + 0x20], eax
movsx eax, ax
cmp byte [eax + esi], 7
jne 0x100767f9
inc dword [esp + 0x20]
movsx eax, word [esp + 0x20]
cmp byte [eax + esi], 5
jne 0x1007681a
movzx eax, word [ecx + eax*2]
lea ecx, [eax + eax*4]
mov eax, dword [edi + ecx*4 + 8]
movzx cx, byte [eax + ebx + 3]
mov word [esp + 0x20], cx
cmp word [esp + 0x20], 0x36
jne 0x10076855
cmp dword [esp + 0x50], 0x80
mov eax, dword [edx + 0xf8]
mov cl, byte [eax + ebx + 3]
lea esi, [eax + ebx + 3]
jne 0x10076842
and cl, 3
add cl, 0x44
jmp 0x10076848
and cl, 3
sub cl, 0x7c
mov byte [esi], cl
mov eax, dword [edx + 0xf8]
mov byte [eax + ebx + 4], 0x36
mov ecx, dword [edx + 0xf8]
mov byte [ecx + ebx + 5], 0x61
mov eax, dword [edx + 0xf8]
mov ecx, dword [esp + 0x30]
mov dword [ecx + 8], eax
add dword [edx + 0xf8], 7
mov edi, dword [esp + 0x10]
cmp byte [edi + ebp], 8
mov esi, dword [esp + 0x30]
jne 0x10076941
cmp byte [esi], 3
jne 0x10076941
test ebp, ebp
jle 0x10076941
mov ecx, dword [esi + 0x10]
mov cx, word [ecx]
mov eax, 0x100aa628
cmp cx, word [eax]
jne 0x10076941
mov eax, dword [esp + 0x28]
cmp byte [eax], 1
je 0x100768e2
mov ecx, dword [edx + 0x44]
lea eax, [ebp - 1]
movzx eax, ax
cmp byte [eax + ecx], 2
jne 0x10076941
mov ecx, dword [edx + 0x48]
movzx eax, word [ecx + eax*2]
mov ecx, dword [edx + 4]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov ecx, dword [edx + 0x14]
cmp byte [eax + ecx + 4], 0x61
jne 0x10076941
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + ebp*2 - 2]
mov dword [esp + 0x48], eax
movzx eax, word [eax]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
test byte [eax + ebx + 3], 8
je 0x1007690b
mov eax, dword [esi + 8]
mov byte [eax + ebx + 4], 0x33
mov eax, dword [esp + 0x48]
movzx eax, word [eax]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
test byte [eax + ebx + 3], 4
je 0x10076928
mov eax, dword [esi + 8]
mov byte [eax + ebx + 4], 0x36
mov eax, dword [esp + 0x48]
movzx eax, word [eax]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + eax*4 + 8]
mov eax, dword [esi + 8]
mov cl, byte [ecx + ebx + 3]
mov byte [eax + ebx + 3], cl
cmp byte [edi + ebp], 5
jne 0x1007697d
mov eax, dword [esi + 8]
mov cl, byte [eax + ebx + 8]
add eax, ebx
cmp cl, 0x50
jne 0x1007697d
cmp byte [eax + 9], 1
jne 0x1007697d
cmp byte [eax + 0xa], 0x53
jne 0x1007697d
mov ecx, dword [esp + 0x7b8]
push ebp
push ecx
call fcn.1005a070
mov edx, dword [esp + 0x7c0]
mov edi, dword [esp + 0x18]
add esp, 8
cmp byte [edi + ebp], 2
jne 0x10076b25
test ebp, ebp
jle 0x10076b25
mov eax, dword [esp + 0x28]
cmp byte [eax], 3
jne 0x10076b25
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 4
jne 0x10076b25
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
lea eax, [ecx + ebx]
cmp byte [eax + 4], 0x61
jne 0x10076b25
mov ecx, dword [esp + 0x34]
cmp byte [ecx + ebp + 1], 0
jne 0x10076b25
cmp byte [eax + 5], 0x64
jne 0x10076b25
cmp byte [eax + 6], 0x69
jne 0x10076b25
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 2], 3
jne 0x10076b25
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2 + 4]
movzx ecx, word [ecx + ebp*2 + 2]
mov esi, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [esi + eax*4 + 8]
mov al, byte [eax + ebx + 3]
lea ecx, [ecx + ecx*4]
mov ecx, dword [esi + ecx*4 + 8]
mov cl, byte [ecx + ebx + 3]
cmp cl, al
je 0x10076b25
movzx esi, cl
xor ecx, ecx
mov cl, al
mov edi, esi
and edi, 0xc0
and ecx, 0xc0
cmp edi, ecx
mov dword [esp + 0x48], ecx
je 0x10076a42
add ecx, edi
cmp ecx, edi
jne 0x10076a64
and al, 0xc
movzx ax, al
and esi, 0xc
mov dword [esp + 0x20], eax
movsx eax, ax
cmp esi, eax
je 0x10076b25
add eax, esi
cmp eax, esi
je 0x10076b25
mov edi, dword [esp + 0x18]
movzx eax, word [edi + ebp*2 - 2]
mov esi, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov ecx, dword [esi + eax*4 + 8]
movzx eax, byte [ecx + ebx + 3]
mov ecx, eax
and ecx, 0xc
cmp word [esp + 0x20], cx
jne 0x10076b25
mov ecx, dword [esp + 0x48]
and eax, 0xc0
cmp ecx, eax
jne 0x10076b25
movzx eax, word [edi + 2]
mov ecx, dword [edx + 0x10]
lea eax, [eax + eax*4]
mov esi, dword [esi + eax*4 + 4]
mov cl, byte [esi + ecx + 3]
add esi, 3
mov al, cl
and al, 0xe0
cmp al, 0x80
je 0x10076ac4
cmp al, 0xc0
jne 0x10076b25
test cl, 2
je 0x10076b25
mov eax, dword [esp + 0x7b8]
lea edx, [ebp + 1]
push edx
push eax
call fcn.1006cdc0
mov ecx, dword [esp + 0x18]
mov byte [ecx + ebp + 2], 4
mov ecx, dword [esp + 0x20]
movzx eax, word [ecx + ebp*2 + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x24]
mov edx, dword [eax + edx*4 + 8]
mov byte [edx + ebx + 1], 4
movzx edx, word [ecx + ebp*2 + 4]
lea edx, [edx + edx*4]
mov edx, dword [eax + edx*4 + 8]
lea edx, [edx + ebx + 2]
add esp, 8
and byte [edx], 0xf7
movzx ecx, word [ecx + ebp*2 + 4]
lea ecx, [ecx + ecx*4]
mov edx, dword [eax + ecx*4 + 8]
mov byte [edx + ebx + 4], 0x71
mov edx, dword [esp + 0x7b8]
cmp ebp, 2
jle 0x10076bdd
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp], 3
jne 0x10076bdd
mov ecx, dword [edx + 0x40]
mov eax, dword [ecx + ebp*4 - 4]
mov ecx, dword [0x100bba90]
cmp eax, dword [ecx + 0x1c]
jne 0x10076bdd
mov eax, dword [esp + 0x28]
cmp byte [eax - 1], 4
jne 0x10076bdd
mov eax, dword [esp + 0x38]
mov eax, dword [eax + ebp*4 - 0xc]
cmp eax, dword [ecx + 0x10]
je 0x10076b72
cmp eax, dword [ecx + 0x24]
jne 0x10076bdd
mov ecx, dword [esp + 0x18]
movzx eax, word [ecx + ebp*2]
mov edi, dword [esp + 0x1c]
mov ecx, dword [edx + 0x10]
lea eax, [eax + eax*4]
mov esi, dword [edi + eax*4 + 4]
mov al, byte [esi + ecx + 3]
add esi, 3
mov cl, al
and cl, 0xe0
cmp cl, 0xc0
jne 0x10076bdd
test al, 2
je 0x10076bdd
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov byte [eax + ebp], 4
movzx eax, word [ecx + ebp*2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov byte [eax + ebx + 1], 4
movzx eax, word [ecx + ebp*2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
and byte [eax + ebx + 2], 0xf7
lea eax, [eax + ebx + 2]
movzx eax, word [ecx + ebp*2]
lea ecx, [eax + eax*4]
mov eax, dword [edi + ecx*4 + 8]
mov byte [eax + ebx + 4], 0x71
test ebp, ebp
jle 0x10076ccb
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 8
jne 0x10076ccb
mov eax, dword [esp + 0x28]
cmp byte [eax], 1
je 0x10076c2e
mov esi, dword [edx + 0x44]
lea eax, [ebp - 1]
movzx eax, ax
cmp byte [eax + esi], 2
jne 0x10076ccb
mov esi, dword [edx + 0x48]
movzx eax, word [esi + eax*2]
mov esi, dword [edx + 4]
lea eax, [eax + eax*4]
mov eax, dword [esi + eax*4 + 8]
mov esi, dword [edx + 0x14]
cmp byte [eax + esi + 4], 0x61
jne 0x10076ccb
mov eax, dword [esp + 0x2c]
cmp byte [eax], 4
jne 0x10076ccb
cmp byte [ecx + ebp + 2], 3
jne 0x10076ccb
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 0x10]
cmp byte [eax], 0x63
je 0x10076ccb
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x30]
mov byte [ecx + ebp], 4
mov eax, dword [edi + 8]
mov ecx, dword [esp + 0x18]
mov byte [eax + ebx + 1], 4
xor eax, eax
mov ax, word [ecx + ebp*2]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
movsx eax, ax
lea eax, [eax + eax*4]
lea esi, [ecx + eax*4]
movzx eax, byte [esi]
mov ecx, dword [esi + 0x10]
movzx eax, byte [eax + ecx - 1]
push eax
call fcn.1005a380
mov ecx, dword [edi + 8]
mov byte [ecx + ebx + 3], al
mov esi, dword [esi + 0x10]
add esp, 4
mov edi, 0x100a6f20
mov ecx, 5
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x10076cbf
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 8]
mov byte [eax + ebx + 3], 0
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 8]
mov byte [eax + ebx + 4], 0x70
test ebp, ebp
mov byte [esp + 0x58], 0xff
jle 0x10076d43
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0x10]
cmp byte [ecx], 0x71
jne 0x10076d43
cmp byte [eax], 5
jne 0x10076d43
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp], 4
jne 0x10076d43
mov eax, dword [esp + 0x28]
cmp byte [eax], 1
je 0x10076d22
mov esi, dword [edx + 0x44]
lea eax, [ebp - 1]
movzx eax, ax
cmp byte [eax + esi], 2
jne 0x10076d43
mov esi, dword [edx + 0x48]
movzx eax, word [esi + eax*2]
mov esi, dword [edx + 4]
mov edx, dword [edx + 0x14]
lea eax, [eax + eax*4]
mov eax, dword [esi + eax*4 + 8]
cmp byte [eax + edx + 4], 0x61
jne 0x10076d43
mov ecx, dword [ecx]
mov eax, str.qual
cmp ecx, dword [eax]
jne 0x10076d43
mov edx, dword [esp + 0x7b8]
push 0xff
push ebp
push edx
call fcn.10059490
add esp, 0xc
mov eax, dword [esp + 0x2c]
mov cl, byte [eax]
cmp cl, 3
mov byte [esp + 0x17], cl
je 0x10076efa
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 4
jne 0x100773a1
mov eax, dword [esp + 0x30]
mov edx, dword [eax + 8]
lea eax, [edx + ebx]
cmp byte [eax + 2], 0x80
jae 0x10076efa
mov al, byte [eax + 4]
cmp al, 0x71
mov byte [esp + 0x47], al
je 0x10076efa
cmp al, 0x61
je 0x10076efa
test ebp, ebp
jle 0x10076efa
cmp cl, 6
je 0x10076efa
mov eax, dword [esp + 0x28]
mov dl, byte [eax]
cmp dl, 1
mov byte [esp + 0x27], dl
je 0x10076e08
mov edi, dword [esp + 0x7b8]
mov esi, dword [edi + 0x44]
lea eax, [ebp - 1]
movzx eax, ax
cmp byte [eax + esi], 2
jne 0x10076de0
mov esi, dword [edi + 0x48]
movzx eax, word [esi + eax*2]
mov esi, dword [edi + 4]
lea eax, [eax + eax*4]
mov eax, dword [esi + eax*4 + 8]
mov esi, dword [edi + 0x14]
cmp byte [eax + esi + 4], 0x61
je 0x10076e0f
cmp dl, 7
jne 0x10076efa
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 - 2]
mov edx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 8]
cmp byte [eax + ebx + 3], 0x71
je 0x10076efa
mov edi, dword [esp + 0x7b8]
mov esi, dword [esp + 0x18]
xor edx, edx
cmp cl, 5
mov ecx, dword [esp + 0x1c]
mov byte [esp + 0x58], dl
jne 0x10076e35
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
cmp byte [eax + ebx + 8], 0x46
jne 0x10076e5f
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 2], 5
jne 0x10076e64
cmp byte [esp + 0x17], 8
jne 0x10076e64
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
mov al, byte [eax + ebx + 5]
cmp al, 0x70
je 0x10076e5f
cmp al, 0x74
jne 0x10076e64
mov edx, 1
mov eax, dword [esp + 0x34]
mov al, byte [eax + ebp]
cmp al, 0x3a
je 0x10076e9c
cmp al, 0x3b
je 0x10076e9c
cmp al, 0x2c
je 0x10076e9c
cmp ebp, dword [edi + 0x30]
je 0x10076e9c
mov cl, byte [esp + 0x47]
cmp cl, 0x70
je 0x10076e8a
cmp cl, 0x6e
jne 0x10076efa
test edx, edx
je 0x10076efa
mov al, byte [esp + 0x27]
cmp al, 1
je 0x10076ecf
cmp al, 2
jne 0x10076efa
jmp 0x10076ecf
cmp byte [esp + 0x27], 7
jne 0x10076ecb
cmp ebp, 1
jle 0x10076ecb
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp - 2], 5
jne 0x10076ecb
movzx eax, word [esi + ebp*2 - 4]
lea eax, [eax + eax*4]
mov ecx, dword [ecx + eax*4 + 8]
mov dl, byte [ecx + ebx + 6]
and dl, 6
cmp dl, 6
je 0x10076efa
mov cl, byte [esp + 0x47]
cmp cl, 0x63
je 0x10076ee9
mov eax, dword [esp + 0x7b8]
push 0
push ebp
push eax
call fcn.10059490
add esp, 0xc
jmp 0x10076efa
mov ecx, dword [esp + 0x7b8]
push ebp
push ecx
call fcn.1006cdc0
add esp, 8
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 4
jne 0x100773a1
mov edi, dword [esp + 0x30]
mov eax, dword [edi + 8]
lea esi, [eax + ebx]
cmp byte [esi + 2], 0x80
jae 0x1007725b
cmp byte [esi + 4], 0x6e
jne 0x1007725b
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + ebp*4]
mov ecx, dword [0x100bba90]
cmp eax, dword [ecx + 0xf4]
je 0x1007725b
cmp eax, dword [ecx + 0x10]
je 0x10076f66
cmp eax, dword [ecx + 0x24]
je 0x10076f66
lea ecx, [ebp - 1]
test ecx, ecx
jl 0x10076f66
mov al, byte [ecx + edx]
cmp al, 5
je 0x10076fd4
cmp al, 2
je 0x10076f63
cmp al, 7
jne 0x10076f66
dec ecx
jns 0x10076f50
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 4
jne 0x100773a1
test ebp, ebp
jle 0x10077263
mov edx, dword [esp + 0x28]
mov dl, byte [edx]
cmp dl, 2
mov ecx, dword [esp + 0x2c]
jne 0x100770a6
cmp byte [ecx], 4
jne 0x100770a6
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
cmp byte [eax + ebx + 4], 0x69
jne 0x100770a6
mov ecx, dword [esp + 0x7b8]
push 0
push ebp
push ecx
mov byte [esp + 0x64], 0
call fcn.10059490
add esp, 0xc
jmp 0x10077263
mov al, byte [esi + 3]
and al, 0xfc
cmp al, 0x88
jne 0x10077014
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp - 1], 0x2c
jne 0x10076ff1
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
jne 0x10076fff
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 4
je 0x10076fff
cmp al, 7
jne 0x10077014
mov byte [esi + 1], 7
mov byte [edx + ebp], 7
mov ecx, dword [edi + 8]
mov byte [ecx + ebx + 3], 0x71
jmp 0x10076f66
mov edx, dword [esp + 0x2c]
mov dl, byte [edx]
cmp dl, 3
je 0x10076f66
cmp dl, 4
je 0x10076f66
cmp dl, 8
je 0x10076f66
mov esi, dword [esp + 0x18]
movzx eax, word [esi + ecx*2]
mov edi, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
mov al, byte [ecx + ebx + 6]
and al, 6
cmp al, 6
je 0x10076f6e
mov ecx, dword [esp + 0x28]
cmp byte [ecx], 2
jne 0x10077072
movzx eax, word [esi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
cmp byte [ecx + ebx + 4], 0x73
je 0x10077089
cmp dl, 2
jne 0x10076f6e
movzx edx, word [esi + ebp*2 + 2]
mov dword [esp + 0x48], edx
jmp 0x10076f6e
mov eax, dword [esp + 0x7b8]
push 0
push ebp
push eax
mov byte [esp + 0x64], 0
call fcn.10059490
add esp, 0xc
jmp 0x10076f6e
cmp dl, 3
je 0x100770c7
cmp byte [ecx], 8
jne 0x100770c7
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
cmp byte [eax + ebx + 5], 0x74
je 0x10076fb7
cmp ebp, 1
jle 0x10077114
cmp dl, 6
jne 0x10077114
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 4
je 0x10077114
cmp byte [ecx], 8
jne 0x10077114
movzx eax, word [esi + ebp*2 + 2]
lea ecx, [eax + eax*4]
mov eax, dword [edi + ecx*4 + 8]
mov al, byte [eax + ebx + 5]
cmp al, 0x70
je 0x100770f9
cmp al, 0x74
jne 0x10077114
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x7b8]
push ecx
push ebp
push edx
call fcn.10059490
add esp, 0xc
jmp 0x10077263
cmp dl, 3
jne 0x100771e4
mov eax, dword [esp + 0x2c]
mov cl, byte [eax]
cmp cl, 4
je 0x100771c3
mov eax, dword [esp + 0x34]
cmp byte [eax + ebp], 0
jne 0x100771c3
cmp cl, dl
je 0x100771c3
cmp ebp, 1
jle 0x10077152
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp - 2], 1
jne 0x10077168
movzx eax, word [esi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov al, byte [eax + ebx + 4]
and al, 0x1c
cmp al, 0xc
jne 0x100771c3
mov edx, dword [esp + 0x38]
mov eax, dword [edx + ebp*4]
mov edx, dword [0x100bba90]
cmp eax, dword [edx + 0xf4]
jne 0x100771a6
cmp cl, 1
jne 0x100771a6
movzx eax, word [esi + ebp*2 + 2]
mov edx, dword [esp + 0x30]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
mov eax, dword [edx + 8]
mov cl, byte [ecx + ebx + 3]
xor cl, byte [eax + ebx + 3]
test cl, 0xfd
je 0x10077263
mov edx, dword [esp + 0x7b8]
push 0
push ebp
push edx
mov byte [esp + 0x64], 0
call fcn.10059490
add esp, 0xc
jmp 0x10077263
movzx eax, word [esi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
test byte [eax + ebx + 2], 1
je 0x100771e4
cmp cl, 3
je 0x100771e4
cmp cl, 8
jne 0x10076fb7
cmp dl, 1
je 0x10077221
mov edx, dword [esp + 0x7b8]
mov ecx, dword [edx + 0x44]
lea eax, [ebp - 1]
movzx eax, ax
cmp byte [eax + ecx], 2
jne 0x10077263
mov ecx, dword [esp + 0x7b8]
mov edx, dword [ecx + 0x48]
movzx eax, word [edx + eax*2]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx + 0x14]
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4 + 8]
cmp byte [eax + ecx + 4], 0x61
jne 0x10077263
mov eax, dword [esp + 0x7b8]
mov ecx, dword [eax + 0x4c]
movzx edx, bp
mov al, byte [edx + ecx]
cmp al, 0x2c
je 0x10077246
cmp al, 0x3b
je 0x10077246
cmp al, 0x3a
je 0x10077246
mov edx, dword [esp + 0x2c]
cmp byte [edx], 1
jne 0x10077263
mov eax, dword [esp + 0x7b8]
push 0
push ebp
push eax
call fcn.10059490
add esp, 0xc
jmp 0x10077263
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp], 4
jne 0x100773a1
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
cmp byte [eax + ebx + 4], 0x69
jne 0x100772b2
test ebp, ebp
jle 0x100772b2
mov ecx, dword [esp + 0x34]
mov al, byte [ecx + ebp - 1]
cmp al, 0x2c
je 0x10077293
cmp al, 0x3b
jne 0x100772b2
mov edx, dword [esp + 0x2c]
cmp byte [edx], 6
jne 0x100772b2
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x7b8]
push eax
push ebp
push ecx
call fcn.10059490
add esp, 0xc
mov edx, dword [esp + 0x10]
cmp byte [edx + ebp], 4
jne 0x100773a1
test ebp, ebp
jle 0x100773a1
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
cmp byte [ecx + ebx + 4], 0x69
jne 0x100773a1
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 0x10]
mov dl, byte [eax]
cmp dl, 0x73
je 0x100773a1
mov ecx, dword [esp + 0x28]
mov cl, byte [ecx]
cmp cl, 3
je 0x100772fc
cmp cl, 8
jne 0x10077315
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 3
je 0x10077315
cmp al, 4
jne 0x10077358
mov eax, dword [esp + 0x10]
cmp byte [eax + ebp + 2], 3
jne 0x10077358
cmp cl, 6
jne 0x10077328
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 2
je 0x10077358
cmp al, 5
je 0x10077358
mov eax, dword [esp + 0x2c]
cmp byte [eax], 8
jne 0x10077349
movzx eax, word [esi + ebp*2 + 2]
lea eax, [eax + eax*4]
mov eax, dword [edi + eax*4 + 8]
mov al, byte [eax + ebx + 5]
cmp al, 0x74
je 0x10077358
cmp al, 0x70
je 0x10077358
mov eax, dword [esp + 0x34]
mov al, byte [eax + ebp]
test al, al
je 0x100773a1
cmp al, 0x22
je 0x100773a1
cmp cl, 8
jne 0x1007738e
mov ecx, dword [esp + 0x34]
mov al, byte [ecx + ebp - 1]
test al, al
jne 0x1007738e
cmp dl, 0x6d
movzx eax, word [esi + ebp*2 - 2]
lea eax, [eax + eax*4]
mov ecx, dword [edi + eax*4 + 8]
movzx eax, byte [ecx + ebx + 5]
jne 0x1007738e
cmp eax, 0x73
je 0x100773a1
cmp eax, 0x75
je 0x100773a1
cmp eax, 0x76
je 0x100773a1
mov edx, dword [esp + 0x7b8]
push 0
push ebp
push edx
call fcn.10059490
add esp, 0xc
mov esi, dword [esp + 0x10]
cmp byte [esi + ebp], 6
jne 0x1007752b
mov eax, dword [0x100bba90]
mov ecx, dword [esp + 0x38]
mov eax, dword [eax + 0x54]
cmp dword [ecx + ebp*4], eax
jne 0x1007752b
mov edx, dword [esp + 0x2c]
mov cl, byte [edx]
cmp cl, 4
mov byte [esp + 0x17], cl
je 0x100773dc
cmp cl, 8
jne 0x10077559
mov eax, dword [esp + 0x18]
movzx eax, word [eax + ebp*2 + 2]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
lea eax, [eax + edx*4]
cmp byte [eax], 6
jne 0x10077438
mov esi, dword [eax + 0x10]
mov ecx, 5
mov edi, str.stess
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x10077434
mov ecx, dword [eax + 0x10]
mov cl, byte [ecx + 5]
cmp cl, 0x61
je 0x100775c8
cmp cl, 0x6f
je 0x100775c8
mov ecx, dword [esp + 0x7b8]
mov edx, dword [ecx + 0x30]
sub edx, ebp
cmp edx, 3
jle 0x100775c8
mov cl, byte [esp + 0x17]
cmp cl, 8
jne 0x10077555
mov eax, dword [eax + 8]
cmp byte [eax + ebx + 5], 0x74
jne 0x10077555
mov ecx, dword [esp + 0x10]
cmp byte [ecx + ebp + 2], 5
jne 0x1007752b
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 + 4]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4 + 8]
lea ecx, [ecx + eax*4]
movzx eax, byte [edx + ebx + 3]
add edx, ebx
cmp eax, 0x33
je 0x100774ab
cmp eax, 0x36
je 0x100774ab
cmp eax, 0x37
je 0x100774ab
cmp eax, 0x31
jne 0x1007752b
mov esi, dword [ecx + 0x10]
mov edi, str.sono
mov ecx, 5
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x1007752b
cmp byte [edx + 8], 0x43
jne 0x100774f9
cmp byte [edx + 9], 4
jne 0x100774f9
lea edi, [ebp - 1]
test edi, edi
jl 0x1007752b
mov esi, dword [esp + 0x7b8]
mov ecx, dword [esp + 0x10]
cmp byte [edi + ecx], 6
je 0x100774e2
push edi
push esi
call fcn.1005a310
add esp, 8
test al, al
jne 0x10077532
dec edi
jns 0x100774c5
jmp 0x10077532
mov edx, dword [0x100bba90]
mov eax, dword [edx + 0x54]
mov ecx, dword [esp + 0x38]
cmp dword [ecx + edi*4], eax
jne 0x10077532
jmp 0x100775c8
test ebp, ebp
je 0x1007752b
mov edx, dword [esp + 0x34]
cmp byte [edx + ebp - 1], 0x2c
je 0x1007752b
mov eax, dword [esp + 0x28]
cmp byte [eax], 6
jne 0x100775c8
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + ebp*4 - 4]
mov eax, dword [0x100bba90]
cmp edx, dword [eax + 0x58]
jne 0x100775c8
mov esi, dword [esp + 0x7b8]
mov ecx, dword [esi + 0x30]
inc ebp
cmp ebp, ecx
jle 0x10073869
mov ecx, dword [esp + 0x7b0]
pop edi
pop esi
pop ebp
pop ebx
call fcn.1009d15f
add esp, 0x7a4
ret
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
movzx eax, word [edx + ebp*2 + 2]
mov ecx, dword [esp + 0x1c]
lea eax, [eax + eax*4]
cmp byte [ecx + eax*4], 2
lea eax, [ecx + eax*4]
jne 0x1007752b
mov eax, dword [eax + 0x10]
cmp byte [eax], 0x6e
jne 0x1007752b
cmp byte [eax + 1], 0x65
jne 0x1007752b
cmp byte [esi + ebp + 2], 5
jne 0x100775a1
movzx eax, word [edx + ebp*2 + 4]
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 + 8]
add eax, ebx
cmp byte [eax + 0xb], 0x61
jne 0x100775a1
cmp byte [eax + 7], 0x43
jbe 0x1007752b
test ebp, ebp
jle 0x100775c8
cmp byte [esi + ebp - 1], 5
jne 0x100775c8
movzx eax, word [edx + ebp*2 - 2]
lea edx, [eax + eax*4]
mov eax, dword [ecx + edx*4 + 8]
mov al, byte [eax + ebx + 8]
cmp al, 0x46
je 0x100775c8
cmp al, 0x50
jne 0x1007752b
mov esi, dword [esp + 0x7b8]
mov ecx, dword [esp + 0x10]
mov byte [ecx + ebp], 8
mov edx, dword [esi + 0xf8]
mov byte [ebx + edx], 0
mov eax, dword [esi + 0xf8]
mov byte [eax + ebx + 1], 8
mov ecx, dword [esi + 0xf8]
mov byte [ecx + ebx + 2], 0
mov edx, dword [esi + 0xf8]
mov ecx, dword [esp + 0x18]
mov byte [edx + ebx + 6], 0x73
mov eax, dword [esi + 0xf8]
mov byte [eax + ebx + 3], 8
movzx eax, word [ecx + ebp*2 + 4]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + edx*4 + 8]
mov al, byte [ecx + ebx + 3]
mov edx, dword [esi + 0xf8]
mov byte [edx + ebx + 4], al
mov ecx, dword [esi + 0xf8]
mov byte [ecx + ebx + 5], 0x70
mov edx, dword [esi + 0xf8]
mov ecx, dword [esp + 0x30]
mov byte [edx + ebx + 6], 0x72
mov eax, dword [esi + 0xf8]
mov dword [ecx + 8], eax
add dword [esi + 0xf8], 7
jmp 0x10077532