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

Disassembly:
sub esp, 0x788
mov eax, dword [0x100682c0]
mov dword [esp + 0x784], eax
mov eax, dword [esp + 0x78c]
mov ecx, dword [eax + 4]
mov edx, dword [eax + 0x30]
push ebx
push ebp
mov ebp, dword [eax + 0x14]
mov dword [esp + 0x18], ecx
mov ecx, dword [eax + 0x34]
mov dword [esp + 0x34], edx
mov edx, dword [eax + 0x38]
mov eax, dword [eax + 0x3c]
push esi
push edi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x38], eax
mov byte [esp + 0x57], 0xff
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
movzx ebx, cx
movzx eax, word [edx + ebx*2]
mov edx, dword [esp + 0x20]
lea eax, [eax + eax*2]
lea eax, [edx + eax*4]
movzx edx, word [eax + 4]
add edx, ebp
test cx, cx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x30], eax
lea edx, [ebx + esi - 1]
ja 0x10032f88
lea edx, [esp + 0x57]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x79c]
cmp cx, word [edx + 0x26]
lea edx, [ebx + esi + 1]
jb 0x10032fa1
lea edx, [esp + 0x57]
mov edi, dword [0x1006be90]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x3c]
mov edx, dword [edx + ebx*4]
cmp edx, dword [edi + 0x14]
jne 0x1003301f
cmp byte [ebx + esi], 8
jne 0x1003301f
test cx, cx
jbe 0x1003301f
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 3
jne 0x1003301f
mov edx, dword [esp + 0x38]
mov cl, byte [ebx + edx - 1]
test cl, cl
jne 0x1003301f
mov byte [ebx + esi], 4
movzx ecx, word [eax + 4]
mov byte [ecx + ebp], 1
movzx edx, word [eax + 4]
mov byte [edx + ebp + 1], 4
movzx ecx, word [eax + 4]
mov edx, dword [esp + 0x14]
mov byte [ecx + ebp + 2], 0
movzx ecx, word [edx + ebx*2 - 2]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
movzx edx, word [eax + 4]
mov cl, byte [ecx + ebp + 3]
mov byte [edx + ebp + 3], cl
movzx edx, word [eax + 4]
mov byte [edx + ebp + 4], 0x61
cmp byte [ebx + esi], 5
jne 0x10033b73
mov eax, dword [esp + 0x5c]
cmp byte [eax + 4], 0x65
jne 0x10033b73
mov al, byte [eax + 7]
cmp al, 0x41
je 0x10033046
cmp al, 0x43
jne 0x10033b73
mov ecx, dword [esp + 0x30]
mov esi, dword [ecx + 8]
mov edi, str.sono
mov ecx, 5
xor edx, edx
mov dword [esp + 0x58], esi
repe cmpsb byte [esi], byte es:[edi]
jne 0x100334e1
cmp al, 0x43
mov dword [esp + 0x44], edx
jne 0x100330da
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x79c]
mov cx, word [ecx + 0x26]
inc eax
cmp ax, cx
ja 0x100330a7
mov edx, dword [esp + 0x10]
movzx esi, ax
cmp byte [esi + edx], 5
je 0x10033097
inc eax
cmp ax, cx
jbe 0x10033086
jmp 0x100330a7
movzx edx, ax
mov eax, dword [esp + 0x14]
mov cx, word [eax + edx*2]
mov word [esp + 0x24], cx
movsx eax, word [esp + 0x24]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx ecx, byte [eax + edx*4]
lea eax, [eax + edx*4]
mov edx, dword [eax + 8]
mov al, byte [edx + ecx - 1]
cmp al, 0x61
je 0x100330cd
cmp al, 0x6f
jne 0x10033b73
mov eax, dword [esp + 0x5c]
mov byte [eax + 3], 0x31
jmp 0x10033b73
lea eax, [ebx - 1]
test eax, eax
jle 0x100330f4
mov ecx, dword [esp + 0x3c]
mov edx, dword [ecx + eax*4]
mov ecx, dword [0x1006be90]
cmp edx, dword [ecx + 0xc]
jne 0x100330f4
dec eax
mov edx, dword [esp + 0x34]
mov cl, byte [edx]
cmp cl, 3
je 0x10033109
cmp cl, 4
je 0x10033109
cmp cl, 1
jne 0x1003312f
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 + 2]
mov edi, dword [esp + 0x20]
lea edx, [ecx + ecx*2]
movzx ecx, word [edi + edx*4 + 4]
mov dl, byte [ecx + ebp + 3]
and dl, 0xc
cmp dl, 4
jne 0x10033133
jmp 0x100331f4
mov edi, dword [esp + 0x20]
test eax, eax
jle 0x10033172
mov ecx, dword [esp + 0x10]
mov cl, byte [eax + ecx]
cmp cl, 3
je 0x10033148
cmp cl, 4
jne 0x10033172
mov edx, dword [esp + 0x14]
movzx ecx, word [edx + eax*2]
lea ecx, [ecx + ecx*2]
movzx edx, word [edi + ecx*4 + 4]
mov cl, byte [edx + ebp + 3]
and cl, 0xc
cmp cl, 4
jne 0x10033172
mov edx, dword [esp + 0x38]
cmp byte [eax + edx], 0
je 0x100331f4
cmp eax, 1
jle 0x1003323a
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx - 1], 3
jne 0x1003323a
mov edx, dword [esp + 0x14]
movzx ecx, word [edx + eax*2 - 2]
lea ecx, [ecx + ecx*2]
movzx edx, word [edi + ecx*4 + 4]
mov cl, byte [edx + ebp + 3]
and cl, 0xc
cmp cl, 4
jne 0x1003323a
mov edx, dword [esp + 0x38]
cmp byte [eax + edx], 0
jne 0x1003323a
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
lea edx, [ecx + ecx*2]
mov esi, dword [edi + edx*4 + 8]
mov edi, 0x10062444
mov ecx, 3
xor edx, edx
mov dword [esp + 0x4c], esi
repe cmpsb byte [esi], byte es:[edi]
je 0x100331f0
mov esi, dword [esp + 0x4c]
mov edi, 0x100628c0
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x10033236
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx], 0
mov dword [esp + 0x44], 0x7d0
jne 0x1003323a
mov edx, dword [esp + 0x34]
cmp byte [edx], 1
jne 0x1003323a
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 + 2]
lea edx, [ecx + ecx*2]
movzx ecx, word [edi + edx*4 + 4]
mov dl, byte [ecx + ebp + 3]
and dl, 0xc
cmp dl, 8
jne 0x1003323a
mov dword [esp + 0x44], 0
jmp 0x1003323a
mov edi, dword [esp + 0x20]
test ax, ax
mov edx, eax
mov dword [esp + 0x24], edx
jl 0x10033293
mov esi, dword [esp + 0x14]
lea esp, [esp]
mov ecx, dword [esp + 0x10]
movsx eax, dx
mov cl, byte [eax + ecx]
cmp cl, 5
jbe 0x10033267
cmp cl, 8
jne 0x1003328a
cmp cl, 5
jne 0x1003327c
movzx eax, word [esi + eax*2]
lea eax, [eax + eax*2]
movzx ecx, word [edi + eax*4 + 4]
cmp byte [ecx + ebp + 8], 0x50
jne 0x1003328a
dec edx
test dx, dx
jge 0x10033250
mov dword [esp + 0x24], edx
xor eax, eax
jmp 0x1003329a
test dx, dx
mov dword [esp + 0x24], edx
jge 0x10033297
xor eax, eax
jmp 0x1003329a
lea eax, [edx + 1]
cmp dword [esp + 0x44], 0x7d0
jne 0x100332ab
mov eax, dword [esp + 0x18]
add eax, 5
movsx esi, ax
xor ecx, ecx
mov dword [esp + 0x48], eax
lea eax, [ebx + 4]
cmp esi, eax
mov dword [esp + 0x44], ecx
mov dword [esp + 0x40], ecx
jge 0x10033484
mov edx, dword [esp + 0x79c]
movzx eax, word [edx + 0x26]
mov dword [esp + 0x58], eax
cmp esi, dword [esp + 0x58]
jg 0x10033484
cmp esi, ebx
jle 0x100332fa
lea ecx, [ebx + 3]
cmp esi, ecx
jge 0x100332fa
mov dword [esp + 0x50], 0x1e
mov edx, 0xa
jmp 0x10033303
mov edx, 0xa
mov dword [esp + 0x50], edx
cmp esi, ebx
jle 0x1003332c
mov eax, dword [esp + 0x10]
cmp byte [esi + eax], 5
jne 0x1003332c
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + esi*2]
lea eax, [eax + eax*2]
movzx ecx, word [edi + eax*4 + 4]
cmp byte [ecx + ebp + 8], 0x50
jne 0x10033484
mov eax, dword [esp + 0x10]
mov al, byte [esi + eax]
cmp al, 8
mov byte [esp + 0x2b], al
jne 0x100333b1
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + esi*2]
lea eax, [eax + eax*2]
movzx ecx, word [edi + eax*4 + 4]
lea eax, [ecx + ebp]
mov cl, byte [eax + 5]
mov al, byte [eax + 4]
cmp al, 0x31
jne 0x10033388
mov esi, dword [esp + 0x40]
add esi, edx
cmp cl, 0x73
mov dword [esp + 0x40], esi
jne 0x10033375
mov eax, esi
add eax, 0x5a
mov dword [esp + 0x40], eax
jmp 0x1003346d
cmp cl, 0x76
jne 0x1003346d
add dword [esp + 0x40], 0x28
jmp 0x1003346d
cmp al, 0x36
jne 0x1003346d
mov esi, dword [esp + 0x44]
add esi, edx
cmp cl, 0x73
mov dword [esp + 0x44], esi
jne 0x1003346d
mov eax, esi
add eax, 0x5a
mov dword [esp + 0x44], eax
jmp 0x1003346d
cmp al, 1
je 0x100333de
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x79c]
push edx
push eax
call fcn.1001cda0
add esp, 8
test al, al
jne 0x100333de
mov al, byte [esp + 0x2b]
cmp al, 3
je 0x100333de
cmp al, 4
jne 0x10033469
xor ecx, ecx
cmp word [esp + 0x48], cx
jle 0x100333ff
mov edx, dword [esp + 0x10]
cmp byte [esi + edx - 1], 2
jne 0x100333ff
mov eax, dword [esp + 0x50]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x14]
movzx eax, word [eax + esi*2]
mov edi, dword [esp + 0x20]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
mov al, byte [eax + ebp + 3]
and al, 0xc
cmp esi, ebx
jge 0x10033443
cmp byte [esp + 0x2b], 1
jne 0x10033443
mov edx, dword [esp + 0x10]
cmp byte [esi + edx + 1], 3
jne 0x10033443
cmp word [esp + 0x48], 0
jle 0x10033443
cmp byte [esi + edx - 1], 2
je 0x10033443
mov ecx, 0x64
cmp al, 4
jne 0x10033453
mov eax, dword [esp + 0x50]
add ecx, eax
add dword [esp + 0x44], ecx
jmp 0x1003346d
cmp al, 8
jne 0x1003346d
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x40]
add ecx, edx
add eax, ecx
mov dword [esp + 0x40], eax
jmp 0x1003346d
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x48]
inc eax
movsx esi, ax
mov dword [esp + 0x48], eax
lea eax, [ebx + 4]
cmp esi, eax
jl 0x100332d6
cmp word [esp + 0x18], 0
jbe 0x100334c1
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax - 1], 0x2c
jne 0x100334c1
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 4
jne 0x100334c1
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx ecx, word [edi + eax*4 + 4]
mov dl, byte [ecx + ebp + 3]
and dl, 0xc
cmp dl, 4
jne 0x100334c1
xor eax, eax
jmp 0x100334c5
mov eax, dword [esp + 0x40]
cmp eax, dword [esp + 0x44]
jle 0x10033b73
mov eax, dword [esp + 0x30]
movzx ecx, word [eax + 4]
mov byte [ecx + ebp + 3], 0x31
jmp 0x10033b73
cmp al, 0x43
ja 0x100339cd
mov esi, dword [esp + 0x58]
mov edi, 0x100628bc
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x100339cd
mov eax, dword [esp + 0x34]
mov dl, byte [eax]
cmp dl, 5
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x14]
mov byte [esp + 0x2a], dl
jne 0x1003354b
movzx eax, word [esi + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
cmp byte [eax + ebp + 8], 0x46
je 0x1003354b
cmp word [esp + 0x18], 0
jbe 0x100339cd
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx - 1], 0x2c
jne 0x100339cd
mov ecx, dword [esp + 0x20]
cmp word [esp + 0x18], 1
jbe 0x10033599
mov edi, dword [esp + 0x38]
mov al, byte [ebx + edi - 1]
cmp al, 0x3b
je 0x100338d7
cmp al, 0x2c
je 0x100338d7
cmp byte [ebx + edi - 2], 0x2c
jne 0x1003357f
mov eax, dword [esp + 0x2c]
cmp byte [eax], 8
jne 0x100338d7
mov eax, dword [esp + 0x2c]
cmp byte [eax], 1
mov edi, dword [esp + 0x10]
jne 0x1003359d
cmp byte [ebx + edi - 2], 6
jne 0x100338d7
jmp 0x1003359d
mov edi, dword [esp + 0x10]
cmp word [esp + 0x18], 0
jbe 0x1003360a
mov edx, dword [esp + 0x2c]
mov dl, byte [edx]
cmp dl, 3
jne 0x100335e9
cmp byte [esp + 0x2a], 4
jne 0x100335ce
movzx eax, word [esi + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov al, byte [eax + ebp + 3]
and al, 0xc
cmp al, 4
jne 0x100335e9
movzx eax, word [esi + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov al, byte [eax + ebp + 3]
and al, 0xc
cmp al, 4
je 0x100338d7
cmp dl, 5
jne 0x10033606
movzx eax, word [esi + ebx*2 - 2]
lea edx, [eax + eax*2]
movzx eax, word [ecx + edx*4 + 4]
cmp byte [eax + ebp + 5], 0x73
jne 0x100338d7
mov dl, byte [esp + 0x2a]
cmp word [esp + 0x18], 1
jbe 0x1003366b
mov dl, byte [ebx + edi - 2]
cmp dl, 5
jne 0x10033628
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
je 0x100338d7
mov eax, dword [esp + 0x2c]
cmp byte [eax], 6
jne 0x10033667
movzx eax, word [esi + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
cmp byte [eax + ebp + 3], 0x63
jne 0x10033667
cmp dl, 3
jne 0x10033667
movzx eax, word [esi + ebx*2 - 4]
lea edx, [eax + eax*2]
movzx eax, word [ecx + edx*4 + 4]
mov cl, byte [eax + ebp + 3]
and cl, 0xc
cmp cl, 4
je 0x100338d7
mov dl, byte [esp + 0x2a]
mov eax, dword [esp + 0x18]
test ax, ax
jne 0x1003367f
cmp byte [edi + 1], 6
jne 0x10033690
jmp 0x100338d7
jbe 0x10033690
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx - 1], 0x3b
je 0x100338d7
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx - 1], 0x3a
jne 0x100336ad
cmp dl, 6
je 0x100338d7
cmp dl, 2
je 0x100338d7
test ax, ax
jbe 0x1003372d
mov edx, dword [esp + 0x2c]
cmp byte [edx], 8
jne 0x1003370f
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 2]
mov edx, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov cl, byte [eax + ebp + 4]
add eax, ebp
cmp cl, 0x33
jbe 0x100336e6
mov al, byte [eax + 5]
cmp al, 0x70
je 0x100336e6
cmp al, 0x74
jne 0x1003370f
cmp word [esp + 0x18], 1
jbe 0x100336fc
mov cl, byte [ebx + edi - 2]
cmp cl, byte [ebx + edi + 1]
je 0x100337b2
mov dl, byte [ebx + edi - 1]
cmp dl, byte [ebx + edi + 1]
je 0x100337b2
jmp 0x10033b73
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + ebx*4 - 4]
mov edx, dword [0x1006be90]
cmp ecx, dword [edx + 0x80]
je 0x10033b73
mov edi, dword [esp + 0x10]
lea eax, [ebx - 1]
lea ecx, [ebx - 0xb]
cmp eax, ecx
jl 0x100337b2
mov ecx, dword [esp + 0x10]
lea esi, [eax + edi]
mov edi, dword [esp + 0x38]
sub edi, ecx
mov dword [esp + 0x4c], edi
test eax, eax
jl 0x100337ae
mov dl, byte [esi]
cmp dl, 5
jne 0x10033788
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
mov edi, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edi + ecx*4 + 4]
add ecx, ebp
cmp byte [ecx + 8], 0x46
je 0x10033784
cmp byte [ecx + 5], 0x73
jne 0x100338d7
lea ecx, [ebx - 1]
cmp eax, ecx
jne 0x100338d7
mov edi, dword [esp + 0x4c]
cmp dl, 6
je 0x100337ae
cmp byte [edi + esi], 0
jne 0x100337ae
mov edx, dword [esp + 0x3c]
mov ecx, dword [edx + eax*4]
mov edx, dword [0x1006be90]
cmp ecx, dword [edx + 0x20]
je 0x100337ae
dec eax
lea ecx, [ebx - 0xb]
dec esi
cmp eax, ecx
jge 0x10033748
mov edi, dword [esp + 0x10]
lea eax, [ebx - 1]
lea ecx, [ebx - 9]
cmp eax, ecx
jl 0x100337fd
lea esp, [esp]
test eax, eax
jl 0x100337fd
cmp byte [eax + edi], 6
jne 0x100337f5
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0x20]
mov esi, dword [ecx + edx*4 + 8]
mov edi, 0x100628bc
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x100338d7
mov edi, dword [esp + 0x10]
dec eax
lea ecx, [ebx - 9]
cmp eax, ecx
jge 0x100337c0
lea eax, [ebx + 1]
lea ecx, [ebx + 5]
cmp eax, ecx
jg 0x10033b73
mov ecx, dword [esp + 0x79c]
movzx edx, word [ecx + 0x26]
mov dword [esp + 0x58], edx
lea ebx, [ebx]
cmp eax, dword [esp + 0x58]
jg 0x10033b73
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0x20]
lea ecx, [ecx + edx*4]
cmp byte [ecx], 3
jne 0x1003387c
mov ecx, dword [ecx + 8]
mov dword [esp + 0x4c], ecx
mov esi, ecx
mov edi, 0x100627bc
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x1003386e
mov esi, dword [esp + 0x4c]
mov edi, 0x100628bc
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x1003387c
mov esi, dword [esp + 0x10]
mov cl, byte [esp + 0x2a]
cmp cl, byte [eax + esi + 1]
je 0x10033897
mov edx, dword [esp + 0x38]
cmp byte [eax + edx], 0
jne 0x10033b73
inc eax
lea ecx, [ebx + 5]
cmp eax, ecx
jle 0x10033820
jmp 0x10033b73
lea ecx, [ebx + 5]
cmp eax, ecx
jne 0x100338d7
mov al, byte [ebx + esi + 1]
cmp al, 1
je 0x100338b2
cmp al, 2
je 0x100338b2
cmp al, 3
jne 0x10033b73
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
mov edx, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov cl, byte [eax + ebp + 3]
and cl, 0xc
cmp cl, 4
jne 0x10033b73
mov edi, dword [esp + 0x10]
push 0x100628bc
lea edx, [esp + 0x398]
push 0xffffffffffffffff
push edx
mov byte [ebx + edi], 6
call fcn.100022a0
mov ecx, dword [esp + 0x7a8]
mov edx, dword [ecx + 0x21c]
push 0xffffffffffffffff
lea eax, [esp + 0x3a4]
push eax
push edx
call fcn.1001b1c0
mov ecx, dword [esp + 0x54]
add eax, 0xfbf4
mov dword [ecx + ebx*4], eax
mov eax, dword [esp + 0x48]
movzx edx, word [eax + 4]
mov ecx, dword [esp + 0x4c]
mov byte [edx + ebp + 1], 6
movzx eax, word [eax + 4]
mov byte [eax + ebp + 3], 0x63
mov al, byte [ecx]
add esp, 0x18
cmp al, 5
jne 0x10033b73
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 2]
mov esi, dword [esp + 0x20]
lea ecx, [edx + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx edx, word [esi + eax*4 + 4]
lea eax, [edx + ebp]
cmp byte [eax + 7], 0x56
jne 0x10033b73
mov byte [eax + 1], 4
mov byte [ebx + edi + 1], 4
xor edi, edi
mov di, word [ecx]
movsx eax, di
lea eax, [eax + eax*2]
movzx edx, byte [esi + eax*4]
lea eax, [esi + eax*4]
mov eax, dword [eax + 8]
movzx edx, byte [eax + edx - 1]
push edx
mov dword [esp + 0x28], edi
call fcn.1001cde0
movzx edx, di
lea edx, [edx + edx*2]
movzx edx, word [esi + edx*4 + 4]
mov byte [edx + ebp + 3], al
movzx eax, word [ecx]
lea eax, [eax + eax*2]
movzx edx, word [esi + eax*4 + 4]
mov byte [edx + ebp + 2], 0x60
movzx eax, word [ecx]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
add esp, 4
mov byte [ecx + ebp + 4], 0x71
jmp 0x10033b73
mov esi, dword [esp + 0x58]
mov edi, 0x100628b8
mov ecx, 4
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x10033b73
cmp word [esp + 0x18], dx
jbe 0x10033b73
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax + 1], 5
jne 0x10033a17
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 + 2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx ecx, word [eax + edx*4 + 4]
cmp byte [ecx + ebp + 7], 0x56
je 0x10033a67
mov edx, dword [esp + 0x2c]
mov al, byte [edx]
cmp al, 1
je 0x10033b20
cmp al, 2
je 0x10033b20
cmp word [esp + 0x18], 1
jbe 0x10033a67
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx - 2], 3
je 0x10033a67
cmp al, 4
jne 0x10033a67
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov al, byte [edx + ebp + 3]
and al, 0xfc
cmp al, 0x48
je 0x10033b20
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 8
jne 0x10033b73
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea esi, [edx + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov al, byte [edx + ebp + 5]
cmp al, 0x74
lea edi, [edx + ebp]
jne 0x10033b73
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x79c]
inc eax
movzx ecx, ax
push ecx
push edx
call sym.mshy32.dll_CicloAvanti
add esp, 8
cmp ax, 0xa
jne 0x10033b73
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x20]
mov byte [edi + 1], 1
mov byte [ebx + eax - 1], 1
movzx eax, word [esi]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov byte [eax + ebp + 2], 0
movsx esi, word [esi]
mov ecx, esi
movsx eax, cx
lea eax, [eax + eax*2]
movzx edi, byte [edx + eax*4]
lea eax, [edx + eax*4]
mov eax, dword [eax + 8]
mov al, byte [eax + edi - 1]
cmp al, 0x27
je 0x10033b0c
cmp al, 0x61
je 0x10033b0c
cmp al, 0x65
jne 0x10033b11
mov ecx, 0x44
jmp 0x10033b11
mov ecx, 0x48
movzx eax, si
lea eax, [eax + eax*2]
movzx edx, word [edx + eax*4 + 4]
mov byte [edx + ebp + 3], cl
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x79c]
push eax
push esi
call fcn.1002f2e0
push 0x100628b8
lea ecx, [esp + 0x5a0]
push 0xffffffffffffffff
push ecx
call fcn.100022a0
mov eax, dword [esi + 0x21c]
push 0xffffffffffffffff
lea edx, [esp + 0x5ac]
push edx
push eax
call fcn.1005f451
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x50]
mov dword [ecx + ebx*4], eax
movzx eax, word [edx + 4]
add esp, 0x20
mov byte [eax + ebp + 3], 0x48
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 8
jne 0x10033caf
mov esi, dword [esp + 0x30]
movzx ecx, word [esi + 4]
lea eax, [ecx + ebp]
cmp byte [eax + 5], 0x74
jne 0x10033bb3
mov ecx, dword [esp + 0x34]
mov cl, byte [ecx]
cmp cl, 3
je 0x10033ba2
cmp cl, 4
jne 0x10033bb3
mov byte [eax + 1], 1
mov byte [ebx + edx], 1
movzx eax, word [esi + 4]
mov byte [eax + ebp + 2], 0
cmp byte [ebx + edx], 8
jne 0x10033caf
mov eax, dword [esi + 8]
cmp byte [eax], 0x65
jne 0x10033caf
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10033bd0
sub eax, edx
cmp eax, 8
jne 0x10033caf
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 1
je 0x10033c14
cmp word [esp + 0x18], 0
jbe 0x10033caf
mov edx, dword [esp + 0x2c]
cmp byte [edx], 3
jne 0x10033caf
mov eax, dword [esp + 0x38]
mov cl, byte [ebx + eax - 1]
test cl, cl
jne 0x10033caf
mov edi, dword [esp + 0x79c]
mov ecx, dword [edi + 0x34]
mov byte [ebx + ecx], 4
mov edx, dword [edi + 0x38]
movzx eax, word [edx + ebx*2]
mov ecx, dword [edi + 4]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov eax, dword [edi + 0x14]
mov byte [edx + eax + 1], 4
mov ecx, dword [edi + 0x38]
movzx eax, word [ecx + ebx*2]
lea edx, [eax + eax*2]
mov eax, dword [edi + 4]
movzx ecx, word [eax + edx*4 + 4]
mov edx, dword [edi + 0x14]
mov byte [ecx + edx + 2], 0
mov eax, dword [edi + 0x38]
movzx eax, word [eax + ebx*2]
mov edx, dword [edi + 4]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov ecx, dword [edi + 0x14]
mov byte [eax + ecx + 3], 0x86
mov edx, dword [esi + 8]
cmp byte [edx + 7], 0x65
jne 0x10033c93
mov eax, dword [edi + 0x38]
movzx eax, word [eax + ebx*2]
mov edx, dword [edi + 4]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov ecx, dword [edi + 0x14]
mov byte [eax + ecx + 3], 0x46
mov edx, dword [edi + 0x38]
movzx eax, word [edx + ebx*2]
mov ecx, dword [edi + 4]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov eax, dword [edi + 0x14]
mov byte [edx + eax + 4], 0x61
jmp 0x10033cb6
mov edi, dword [esp + 0x79c]
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 3
jne 0x10033d06
mov edx, dword [esp + 0x2c]
cmp byte [edx], 8
jne 0x10033d06
mov esi, dword [esp + 0x14]
movzx eax, word [esi + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
cmp byte [edx + ebp + 5], 0x74
jne 0x10033d0a
mov eax, dword [esp + 0x30]
movzx ecx, word [eax + 4]
mov edx, dword [esp + 0x10]
mov byte [ecx + ebp + 1], 1
mov byte [ebx + edx - 1], 1
movzx eax, word [eax + 4]
mov byte [eax + ebp + 2], 0
jmp 0x10033d0a
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 4
jne 0x10034120
mov edx, dword [esp + 0x30]
movzx eax, word [edx + 4]
mov cl, byte [eax + ebp + 3]
add eax, ebp
mov dword [esp + 0x50], eax
mov al, byte [eax + 4]
cmp al, 0x63
mov byte [esp + 0x2b], cl
je 0x10033e56
cmp al, 0x6e
jne 0x10034120
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + ebx*4]
mov eax, dword [0x1006be90]
cmp ecx, dword [eax + 0xf4]
jne 0x10034120
cmp word [esp + 0x18], 0
je 0x10033d79
movzx eax, word [esi + ebx*2 - 2]
lea ecx, [eax + eax*2]
mov eax, dword [edi + 4]
movzx eax, word [eax + ecx*4 + 4]
add eax, ebp
mov dword [esp + 0x64], eax
jmp 0x10033d7d
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x2c]
mov cl, byte [ecx]
cmp cl, 2
jne 0x10033dc8
cmp byte [eax + 4], 0x61
jne 0x10033dc8
cmp byte [eax + 5], 0x64
jne 0x10033dc8
cmp byte [eax + 6], 0x69
jne 0x10033dc8
test byte [esp + 0x2b], 0x88
je 0x10033dc8
mov eax, dword [esp + 0x34]
cmp byte [eax], 4
jne 0x10033dc8
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x10]
mov byte [ecx + 1], 7
mov byte [ebx + eax], 7
movzx ecx, word [edx + 4]
mov byte [ecx + ebp + 3], 0x61
jmp 0x10034120
cmp cl, 5
jne 0x10033de7
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + ebx*4 - 4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0x104]
je 0x10034120
mov edx, dword [esp + 0x34]
mov cl, byte [edx]
cmp cl, 3
je 0x10034120
cmp cl, 1
je 0x10034120
cmp cl, 4
jne 0x10033e20
movzx eax, word [esi + ebx*2 + 2]
mov edx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [edx + eax*4 + 4]
cmp byte [eax + ebp + 4], 0x69
je 0x10034120
cmp cl, 5
jne 0x10033e41
movzx eax, word [esi + ebx*2 + 2]
mov edx, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
cmp byte [eax + ebp + 7], 0x56
je 0x10034120
mov ecx, dword [esp + 0x18]
push 0
push ecx
push edi
call fcn.1001c0b0
add esp, 0xc
jmp 0x10034120
mov edx, dword [esp + 0x34]
cmp byte [edx], 3
mov dword [esp + 0x24], 0
jne 0x10033f4b
cmp word [esp + 0x18], 0
jbe 0x10033f4b
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 4
je 0x10033ea0
cmp al, 3
je 0x10033ea0
cmp al, 1
je 0x10033ea0
mov ecx, dword [esp + 0x18]
dec ecx
push ecx
push edi
call fcn.1001cda0
add esp, 8
test al, al
je 0x10033f4b
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov al, byte [edx + ebp + 3]
test al, al
mov esi, 1
mov dword [esp + 0x24], esi
mov byte [esp + 0x2b], al
jbe 0x1003408e
mov eax, dword [esp + 0x2c]
cmp byte [eax], 1
je 0x10033eea
mov ecx, dword [esp + 0x18]
dec ecx
push ecx
push edi
call fcn.1001cda0
add esp, 8
test al, al
je 0x10033ef1
or esi, 0xffffffff
mov dword [esp + 0x24], esi
test byte [esp + 0x2b], 3
je 0x10033f06
mov edx, dword [esp + 0x18]
push edx
push edi
call fcn.1002f2e0
add esp, 8
test si, si
je 0x10034120
mov ecx, dword [esp + 0x34]
mov al, byte [ecx]
cmp al, 3
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
mov byte [esp + 0x2a], al
jne 0x1003409c
movzx eax, word [edx + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
test byte [eax + ebp + 3], 3
jne 0x1003409c
mov esi, 1
jmp 0x100340fb
mov ecx, dword [esp + 0x18]
cmp cx, 1
jbe 0x10033f77
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 4
je 0x10033f63
cmp al, 3
jne 0x10033f77
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], 1
jne 0x10033f77
or esi, 0xffffffff
mov dword [esp + 0x24], esi
jmp 0x10033f0f
test cx, cx
jbe 0x10033fa6
mov eax, dword [esp + 0x2c]
cmp byte [eax], 1
je 0x10033f98
mov ecx, dword [esp + 0x18]
dec ecx
push ecx
push edi
call fcn.1001cda0
add esp, 8
test al, al
je 0x10033fa6
mov esi, 0xfffffffe
mov dword [esp + 0x24], esi
jmp 0x10033f0f
cmp word [esp + 0x18], 1
jbe 0x10034012
mov edx, dword [esp + 0x2c]
cmp byte [edx], 3
jne 0x10034012
movzx eax, word [esi + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov al, byte [edx + ebp + 4]
and al, 0x1c
cmp al, 0xc
jne 0x10034012
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], 4
jne 0x10033ff1
movzx eax, word [esi + ebx*2 - 4]
lea eax, [eax + eax*2]
movzx ecx, word [ecx + eax*4 + 4]
test byte [ecx + ebp + 2], 2
jne 0x10034006
mov edx, dword [esp + 0x18]
add edx, 0xfffffffe
push edx
push edi
call fcn.1001cda0
add esp, 8
test al, al
je 0x10034012
or esi, 0xffffffff
mov dword [esp + 0x24], esi
jmp 0x10033f0f
mov eax, dword [esp + 0x34]
cmp byte [eax], 3
jne 0x10034046
movzx eax, word [esi + ebx*2 + 2]
mov edx, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov cl, byte [eax + ebp + 3]
and cl, 3
cmp cl, 2
jb 0x10034046
mov esi, 1
mov dword [esp + 0x24], esi
jmp 0x10033f0f
cmp word [esp + 0x18], 0
jne 0x10034120
cmp word [edi + 0x22], 0
jne 0x10034120
mov edx, dword [esp + 0x50]
test byte [edx + 2], 2
je 0x10034120
movzx eax, word [esi + 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
mov edx, dword [ecx + eax*4 + 8]
movzx eax, byte [edx]
push eax
call fcn.100578a4
add esp, 4
test eax, eax
je 0x10034120
mov esi, 1
mov dword [esp + 0x24], esi
jmp 0x10033f0f
cmp word [esp + 0x18], 0
jbe 0x100340c1
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
jne 0x100340c1
movzx eax, word [edx + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
test byte [eax + ebp + 3], 3
je 0x100340f8
cmp si, 0xfffe
jne 0x100340ff
cmp byte [esp + 0x2a], 4
jne 0x100340f8
movzx eax, word [edx + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
test byte [eax + ebp + 3], 2
je 0x100340f8
mov ecx, dword [esp + 0x18]
push ecx
push edi
call fcn.1002f2e0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x1c]
add esp, 8
or esi, 0xffffffff
mov dword [esp + 0x24], esi
movsx eax, si
add eax, ebx
movzx eax, word [edx + eax*2]
lea edx, [eax + eax*2]
movzx eax, word [ecx + edx*4 + 4]
mov ecx, dword [esp + 0x30]
movzx edx, word [ecx + 4]
mov al, byte [eax + ebp + 3]
mov byte [edx + ebp + 3], al
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 5
jne 0x1003436a
mov edx, dword [esp + 0x30]
movzx eax, word [edx + 4]
mov cl, byte [eax + ebp + 7]
add eax, ebp
cmp cl, 0x53
jne 0x1003436a
cmp byte [eax + 8], 0x43
jne 0x1003436a
mov ecx, edx
mov edx, dword [ecx + 8]
mov ecx, 5
mov edi, str.stess
mov esi, edx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x1003436a
mov ecx, dword [esp + 0x38]
mov al, byte [ebx + ecx]
test al, al
mov edi, dword [esp + 0x18]
mov byte [esp + 0x2a], al
jne 0x100341d4
test di, di
jbe 0x100344b8
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + ebx*4 - 4]
mov eax, dword [0x1006be90]
cmp ecx, dword [eax + 0x54]
je 0x100341d4
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 8
jne 0x1003436a
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 2]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x20]
lea eax, [eax + ecx*4]
movzx ecx, word [eax + 4]
cmp byte [ecx + ebp + 5], 0x73
jne 0x1003436a
mov eax, dword [eax + 8]
cmp byte [eax + 1], 0x73
jne 0x1003436a
test di, di
mov cl, byte [edx + 5]
mov esi, 1
mov dword [esp + 0x24], esi
jbe 0x100341fe
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 - 2]
mov edx, dword [esp + 0x20]
lea eax, [eax + eax*2]
mov eax, dword [edx + eax*4 + 8]
mov al, byte [eax + 3]
jmp 0x10034200
xor al, al
cmp cl, al
je 0x1003420a
xor esi, esi
mov dword [esp + 0x24], esi
cmp byte [esp + 0x2a], 0x2c
je 0x10034235
cmp di, 1
jbe 0x1003423f
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + ebx*4 - 4]
mov edx, dword [0x1006be90]
cmp eax, dword [edx + 0x54]
jne 0x1003423f
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 2
jne 0x1003423f
mov dword [esp + 0x24], 1
jmp 0x10034249
cmp si, 1
jne 0x1003436a
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x10]
mov byte [ebx + eax], 4
movzx esi, word [edx + 4]
mov byte [esi + ebp + 1], 4
movzx esi, word [edx + 4]
mov byte [esi + ebp + 2], 0x10
cmp cl, 0x69
movzx ecx, word [edx + 4]
jne 0x10034277
mov byte [ecx + ebp + 3], 0x84
jmp 0x1003427c
mov byte [ecx + ebp + 3], 0x44
test di, di
movzx ecx, word [edx + 4]
mov byte [ecx + ebp + 4], 0x61
jbe 0x1003432f
mov ecx, dword [esp + 0x3c]
mov esi, dword [0x1006be90]
mov ecx, dword [ecx + ebx*4 - 4]
cmp ecx, dword [esi + 0x54]
jne 0x1003432f
mov byte [ebx + eax - 1], 8
mov eax, dword [esp + 0x79c]
movzx ecx, word [eax + 0xe4]
mov byte [ecx + ebp], 0
movzx ecx, word [eax + 0xe4]
mov byte [ecx + ebp + 1], 8
movzx ecx, word [eax + 0xe4]
mov byte [ecx + ebp + 2], 0
movzx ecx, word [eax + 0xe4]
mov byte [ecx + ebp + 6], 0x73
movzx ecx, word [eax + 0xe4]
mov esi, dword [esp + 0x20]
mov byte [ecx + ebp + 5], 0x61
movzx ecx, word [eax + 0xe4]
mov byte [ecx + ebp + 4], 0x36
movzx edx, word [edx + 4]
movzx ecx, word [eax + 0xe4]
mov dl, byte [edx + ebp + 3]
mov byte [ecx + ebp + 3], dl
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 - 2]
lea edx, [ecx + ecx*2]
mov cx, word [eax + 0xe4]
mov word [esi + edx*4 + 4], cx
add word [eax + 0xe4], 6
push str.stesso
lea edx, [esp + 0x298]
push 0xffffffffffffffff
push edx
call fcn.100022a0
mov ecx, dword [esp + 0x7a8]
mov edx, dword [ecx + 0x21c]
push 0xffffffffffffffff
lea eax, [esp + 0x2a4]
push eax
push edx
call fcn.1005f451
mov ecx, dword [esp + 0x54]
add esp, 0x18
mov dword [ecx + ebx*4], eax
mov eax, dword [esp + 0x18]
test ax, ax
jbe 0x100344b8
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 8
jne 0x100344b8
mov ecx, dword [esp + 0x30]
mov esi, dword [ecx + 8]
mov edi, 0x10062468
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x100344b8
dec eax
movzx ecx, ax
mov eax, dword [esp + 0x79c]
mov edx, dword [eax + 0x34]
cmp byte [ecx + edx], 2
jne 0x1003440d
mov edx, dword [eax + 0x38]
movzx ecx, word [edx + ecx*2]
mov edx, dword [eax + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
mov edx, dword [eax + 0x14]
cmp byte [ecx + edx + 4], 0x61
jne 0x1003440d
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 - 2]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
test byte [ecx + ebp + 3], 8
je 0x10034411
mov ecx, dword [esp + 0x30]
movzx esi, word [ecx + 4]
mov byte [esi + ebp + 3], 8
movzx esi, word [ecx + 4]
mov byte [esi + ebp + 4], 0x33
movzx ecx, word [ecx + 4]
mov byte [ecx + ebp + 5], 0x61
jmp 0x10034411
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 5
jne 0x100344bc
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 - 2]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
lea esi, [ecx + ebp]
mov cl, byte [esi + 6]
and cl, 6
cmp cl, 6
jne 0x100344bc
cmp byte [esi + 3], 0x36
je 0x100344bc
mov ecx, dword [eax + 0x34]
mov byte [ebx + ecx], 4
mov ecx, dword [eax + 0x38]
movzx ecx, word [ecx + ebx*2]
mov esi, dword [eax + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [esi + ecx*4 + 4]
mov esi, dword [eax + 0x14]
mov byte [ecx + esi + 1], 4
mov ecx, dword [eax + 0x38]
movzx ecx, word [ecx + ebx*2]
mov esi, dword [eax + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [esi + ecx*4 + 4]
mov esi, dword [eax + 0x14]
mov byte [ecx + esi + 2], 0
mov ecx, dword [eax + 0x38]
movzx ecx, word [ecx + ebx*2]
mov esi, dword [eax + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [esi + ecx*4 + 4]
mov esi, dword [eax + 0x14]
mov byte [ecx + esi + 3], 2
mov ecx, dword [eax + 0x38]
movzx ecx, word [ecx + ebx*2]
mov esi, dword [eax + 4]
mov eax, dword [eax + 0x14]
lea ecx, [ecx + ecx*2]
movzx ecx, word [esi + ecx*4 + 4]
mov byte [ecx + eax + 4], 0x70
jmp 0x100344bc
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x10]
cmp byte [ebx + esi], 5
jne 0x10034884
mov ecx, dword [esp + 0x30]
movzx esi, word [ecx + 4]
cmp byte [esi + ebp + 3], 0x35
jne 0x1003482d
lea eax, [esi + ebp + 8]
mov dword [esp + 0x4c], eax
mov al, byte [eax]
cmp al, 0x49
je 0x100344f3
cmp al, 0x43
jne 0x1003482d
mov al, byte [esi + ebp + 9]
test al, al
jne 0x1003482d
lea eax, [esi + ebp + 0xb]
mov dword [esp + 0x48], 0
lea edi, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10034510
sub eax, edi
mov dword [esp + 0x24], eax
movsx eax, ax
add eax, esi
cmp byte [eax + ebp + 8], 0x65
je 0x1003482d
mov esi, dword [esp + 0x18]
cmp si, 1
jbe 0x10034590
mov ecx, dword [esp + 0x2c]
mov al, byte [ecx]
cmp al, 3
jne 0x1003454c
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx - 2], 4
je 0x1003455b
cmp al, 4
jne 0x10034590
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 3
jne 0x10034590
mov edi, dword [esp + 0x14]
movzx eax, word [edi + ebx*2 - 2]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov cl, byte [eax + ebp + 3]
and cl, 0xfc
cmp cl, 0x44
jne 0x10034590
movzx eax, word [edi + ebx*2 - 4]
lea eax, [eax + eax*2]
movzx ecx, word [edx + eax*4 + 4]
cmp byte [ecx + ebp + 3], 0x44
je 0x1003462c
dec esi
test si, si
mov dword [esp + 0x24], esi
jl 0x10034634
mov edi, edi
mov ecx, dword [esp + 0x10]
movsx eax, si
mov cl, byte [eax + ecx]
cmp cl, 1
je 0x100345ef
cmp cl, 4
ja 0x100345ef
mov edi, dword [esp + 0x38]
cmp byte [eax + edi], 0
jne 0x100345ef
cmp cl, 3
jne 0x100345dd
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + eax*2]
lea eax, [eax + eax*2]
movzx ecx, word [edx + eax*4 + 4]
mov al, byte [ecx + ebp + 3]
and al, 0xfc
cmp al, 0x44
je 0x100345e9
dec esi
test si, si
jge 0x100345a0
mov dword [esp + 0x24], esi
jmp 0x10034634
mov dword [esp + 0x24], esi
jmp 0x1003462c
mov eax, dword [esp + 0x14]
movsx ecx, si
lea ecx, [eax + ecx*2]
movzx eax, word [ecx]
lea eax, [eax + eax*2]
movzx eax, word [edx + eax*4 + 4]
mov al, byte [eax + ebp + 3]
and al, 0xfc
cmp al, 0x44
mov dword [esp + 0x24], esi
jne 0x10034634
movzx eax, word [ecx + 2]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov al, byte [eax + ebp + 3]
and al, 0xfc
cmp al, 0x40
je 0x1003462c
cmp al, 0x44
jne 0x10034634
mov dword [esp + 0x48], 1
mov ecx, dword [esp + 0x34]
mov al, byte [ecx]
cmp al, 3
mov byte [esp + 0x2a], al
jne 0x10034663
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov cl, byte [eax + ebp + 3]
and cl, 0xfc
cmp cl, 0x44
je 0x100347b6
mov eax, dword [esp + 0x48]
test ax, ax
jne 0x100347b0
mov eax, dword [esp + 0x18]
dec eax
test ax, ax
mov dword [esp + 0x24], eax
jl 0x100346d7
mov ecx, dword [esp + 0x10]
movsx esi, ax
cmp byte [esi + ecx], 7
jne 0x10034695
test ax, ax
jle 0x10034695
dec eax
mov dword [esp + 0x24], eax
movsx eax, ax
cmp byte [eax + ecx], 5
jne 0x100346d7
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + eax*2]
lea eax, [eax + eax*2]
movzx ecx, word [edx + eax*4 + 4]
mov al, byte [ecx + ebp + 8]
add ecx, ebp
cmp al, 0x49
je 0x100346c0
cmp al, 0x43
je 0x100346c0
cmp al, 0x4e
jne 0x100346d7
lea esi, [ecx + 0xb]
mov edi, str.andare
mov ecx, 7
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x100347b6
mov esi, dword [esp + 0x18]
test si, si
jbe 0x1003482d
mov ecx, dword [esp + 0x2c]
mov cl, byte [ecx]
cmp cl, 5
jne 0x10034715
cmp byte [esp + 0x2a], 3
jne 0x10034715
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [edx + eax*4 + 4]
mov al, byte [eax + ebp + 3]
and al, 0xfc
cmp al, 0x44
je 0x100347b6
cmp cl, 6
jne 0x1003482d
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx ecx, word [edx + eax*4 + 4]
cmp byte [ecx + ebp + 3], 0x63
jne 0x1003482d
lea ecx, [esi - 2]
test cx, cx
mov esi, dword [esp + 0x10]
mov dword [esp + 0x24], ecx
jl 0x10034772
mov edi, dword [esp + 0x38]
mov edi, edi
movsx eax, cx
cmp byte [eax + edi], 0
jne 0x1003476e
mov al, byte [eax + esi]
cmp al, 7
je 0x10034768
cmp al, 3
je 0x10034768
cmp al, 4
jne 0x1003476e
dec ecx
test cx, cx
jge 0x10034750
mov dword [esp + 0x24], ecx
movsx eax, cx
lea ecx, [eax + 1]
lea edi, [ebx - 2]
cmp ecx, edi
jge 0x1003482d
mov cl, byte [eax + esi + 1]
cmp cl, 3
je 0x10034795
cmp cl, 4
jne 0x1003482d
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + eax*2 + 2]
lea eax, [eax + eax*2]
movzx ecx, word [edx + eax*4 + 4]
mov al, byte [ecx + ebp + 3]
and al, 0xc
cmp al, 4
jmp 0x100347b4
cmp ax, 1
jne 0x1003482d
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x30]
mov byte [ecx], 0x50
movzx eax, word [edx + 4]
mov ecx, dword [esp + 0x14]
mov byte [eax + ebp + 9], 1
xor eax, eax
mov ax, word [ecx + ebx*2]
mov dword [esp + 0x24], eax
movsx eax, ax
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + edx*4 + 8]
lea esi, [eax + edx*4]
push ecx
lea edx, [esp + 0x198]
push 0xffffffffffffffff
push edx
call fcn.100022a0
movzx eax, byte [esi]
mov edx, dword [esp + 0x7a8]
lea ecx, [esp + 0x1a0]
mov byte [esp + eax + 0x19f], 0x6f
mov eax, dword [edx + 0x21c]
push ecx
push eax
call fcn.1005f451
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x34]
add esp, 0x14
mov dword [ecx + ebx*4], eax
mov esi, dword [esp + 0x10]
cmp byte [ebx + esi], 5
jne 0x10034884
mov eax, dword [esp + 0x30]
movzx ecx, word [eax + 4]
lea eax, [ecx + ebp]
cmp byte [eax + 7], 0x56
jne 0x10034884
cmp byte [eax + 8], 0x50
jne 0x10034884
mov eax, dword [esp + 0x2c]
cmp byte [eax], 4
jne 0x10034884
mov ecx, dword [esp + 0x14]
lea eax, [ecx + ebx*2 - 2]
mov byte [ebx + esi - 1], 7
movzx ecx, word [eax]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
mov byte [ecx + ebp + 1], 7
movzx eax, word [eax]
lea eax, [eax + eax*2]
movzx ecx, word [edx + eax*4 + 4]
mov byte [ecx + ebp + 3], 0x61
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + ebx*4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0xb4]
jne 0x100348a6
mov edx, dword [esp + 0x30]
movzx eax, word [edx + 4]
mov byte [eax + ebp + 5], 0x74
cmp byte [ebx + esi], 5
jne case.default.0x10034b16
mov ecx, dword [esp + 0x30]
movzx edx, word [ecx + 4]
mov cl, byte [edx + ebp + 7]
cmp cl, 0x53
lea eax, [edx + ebp]
mov dword [esp + 0x50], eax
jne case.default.0x10034b16
cmp byte [eax + 8], 0x50
jne case.default.0x10034b16
cmp byte [eax + 0xa], 0x53
je case.default.0x10034b16
mov ecx, dword [esp + 0x18]
test cx, cx
jbe 0x10034928
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 5
je 0x10034928
cmp al, 7
jne 0x1003495b
cmp cx, 1
jbe 0x10034908
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx - 2], 3
je 0x1003495b
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 - 2]
mov esi, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
cmp byte [ecx + ebp + 3], 0x71
je 0x1003495f
mov ecx, dword [esp + 0x18]
cmp cx, 2
jbe case.default.0x10034b16
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 3], 3
jne case.default.0x10034b16
mov eax, edx
cmp byte [ebx + eax - 2], 4
jne case.default.0x10034b16
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 7
jne case.default.0x10034b16
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
xor eax, eax
cmp di, 1
mov ax, word [edx + ebx*2]
mov dword [esp + 0x24], eax
movsx eax, ax
lea eax, [eax + eax*2]
movzx ecx, byte [esi + eax*4]
mov edx, dword [esi + eax*4 + 8]
mov dl, byte [ecx + edx - 1]
mov ecx, dword [esp + 0x10]
lea eax, [esi + eax*4]
mov dword [esp + 0x40], eax
mov byte [esp + 0x60], dl
jbe 0x100349ce
mov al, byte [ebx + ecx - 2]
cmp al, 3
je 0x100349a4
cmp al, 8
jne 0x100349ce
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 7
je 0x10034dda
cmp al, 4
jne 0x100349ce
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax - 1], 0
jne 0x100349d2
cmp byte [ebx + eax - 2], 0
je 0x10034dda
jmp 0x100349d2
mov eax, dword [esp + 0x38]
cmp di, 2
jbe 0x100349f3
cmp byte [ebx + ecx - 3], 3
jne 0x100349f3
cmp byte [ebx + ecx - 2], 4
jne 0x100349f3
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 7
je 0x10034dda
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 6
je 0x10034aad
movzx ax, byte [ebx + eax - 1]
test ax, ax
je case.0x10034aa6.98
lea ecx, [edi - 1]
cmp di, 1
jbe 0x10034a55
mov eax, dword [esp + 0x2c]
cmp byte [eax], 6
jne 0x10034a51
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx eax, word [esi + eax*4 + 4]
cmp byte [eax + ebp + 3], 0x63
jne 0x10034a51
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 4
jne 0x10034a51
mov eax, dword [esp + 0x34]
cmp byte [eax], 1
jne 0x10034dda
mov edi, dword [esp + 0x18]
test cx, cx
jl case.0x10034aa6.98
movsx eax, cx
mov ecx, dword [esp + 0x10]
mov cl, byte [eax + ecx]
cmp cl, 3
je 0x10034a76
cmp cl, 4
jne case.0x10034aa6.98
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + eax*2]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
mov al, byte [ecx + ebp + 3]
and al, 0xfc
movzx cx, al
movzx eax, dl
add eax, 0xffffff9f
cmp eax, 0xe
ja case.0x10034aa6.98
movzx edx, byte [eax + 0x10038d30]
jmp dword [edx*4 + 0x10038d1c]
lea ecx, [edi - 2]
jmp 0x10034a12
cmp cx, 0x88
jmp 0x10034acd
cmp cx, 0x48
jmp 0x10034acd
cmp cx, 0x84
jmp 0x10034acd
cmp cx, 0x44
je case.0x10034aa6.98
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx - 1], 0x2c
jne case.default.0x10034b16
mov edx, dword [esp + 0x34]
cmp byte [edx], 3
jne case.default.0x10034b16
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 + 2]
mov esi, dword [esp + 0x20]
movzx eax, byte [eax + 0x10038d54]
lea edx, [ecx + ecx*2]
movzx ecx, word [esi + edx*4 + 4]
mov dl, byte [ecx + ebp + 3]
and dl, 0xfc
movzx cx, dl
jmp dword [eax*4 + 0x10038d40]
cmp cx, 0x88
je 0x10034dda
jmp case.default.0x10034b16
cmp cx, 0x48
je 0x10034dda
jmp case.default.0x10034b16
cmp cx, 0x84
je 0x10034dda
jmp case.default.0x10034b16
cmp cx, 0x44
je 0x10034dda
jmp case.default.0x10034b16
test di, di
jbe 0x10034b69
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 3
je 0x10034b72
mov edx, dword [esp + 0x34]
cmp byte [edx], 3
jne 0x10034ba8
mov eax, dword [esp + 0x50]
mov cl, byte [eax + 9]
test cl, cl
jne 0x10034dda
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x79c]
push ecx
push edx
push eax
call fcn.1001c390
mov esi, dword [esp + 0x2c]
add esp, 0xc
test ax, ax
jne 0x10034dda
mov edx, dword [esp + 0x18]
test dx, dx
jbe 0x10034bf2
mov ecx, dword [esp + 0x2c]
cmp byte [ecx], 8
jne 0x10034bef
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 2]
lea ecx, [eax + eax*2]
movzx eax, word [esi + ecx*4 + 4]
lea edi, [eax + ebp]
cmp byte [edi + 5], 0x61
jne 0x10034bef
mov ecx, dword [esp + 0x60]
push ecx
call fcn.1001cde0
mov cl, byte [edi + 3]
and cl, 0xfc
add esp, 4
cmp al, cl
je 0x10034dda
test dx, dx
je 0x10034cbc
test dx, dx
jbe 0x10034c13
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
cmp al, 1
je 0x10034cbc
cmp al, 2
je 0x10034cbc
cmp dx, 1
mov edi, dword [esp + 0x2c]
jbe 0x10034c4a
mov cl, byte [edi]
cmp cl, 1
je 0x10034cbc
mov eax, dword [esp + 0x10]
mov al, byte [ebx + eax - 2]
cmp al, 1
je 0x10034cbc
cmp cl, 2
je 0x10034cbc
cmp al, 2
je 0x10034cbc
cmp cl, 6
jne 0x10034c4a
cmp al, 4
je 0x10034cbc
test dx, dx
jbe 0x10034c6c
cmp byte [edi], 4
jne 0x10034c6c
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 - 2]
lea edx, [eax + eax*2]
movzx eax, word [esi + edx*4 + 4]
cmp byte [eax + ebp + 4], 0x69
je 0x10034cbc
cmp byte [edi], 8
jne case.default.0x10034b16
mov ecx, dword [esp + 0x14]
lea eax, [ecx + ebx*2 - 2]
movzx ecx, word [eax]
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0x20]
movzx edx, word [ecx + edx*4 + 4]
cmp byte [edx + ebp + 5], 0x74
jne case.default.0x10034b16
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x20]
mov byte [ecx + 1], 1
mov byte [ebx + edx - 1], 1
movzx eax, word [eax]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
mov byte [ecx + ebp + 2], 0
mov edx, dword [esp + 0x2c]
cmp byte [edx], 4
jne 0x10034d76
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 2
jne 0x10034d76
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 - 4]
lea edx, [eax + eax*2]
movzx eax, word [esi + edx*4 + 4]
cmp byte [eax + ebp + 4], 0x73
jne 0x10034d76
mov ecx, dword [esp + 0x60]
push ecx
call fcn.1001cde0
mov edx, dword [esp + 0x18]
movzx cx, al
movzx eax, word [edx + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx edx, word [esi + eax*4 + 4]
movzx ax, byte [edx + ebp + 3]
add esp, 4
cmp cx, ax
je 0x10034d68
mov edi, dword [esp + 0x18]
add edi, 0xfffffffd
test di, di
jl 0x10034d76
lea ecx, [ecx]
mov edx, dword [esp + 0x10]
movsx eax, di
cmp byte [eax + edx], 4
ja 0x10034d76
mov edx, dword [esp + 0x14]
movzx eax, word [edx + eax*2]
lea eax, [eax + eax*2]
movzx edx, word [esi + eax*4 + 4]
movzx ax, byte [edx + ebp + 3]
cmp ax, cx
je case.default.0x10034b16
mov esi, dword [esp + 0x20]
dec edi
test di, di
jge 0x10034d30
jmp 0x10034d76
cmp cx, 1
jne case.default.0x10034b16
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx + 1], 6
jne 0x10034da7
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
cmp byte [ecx + ebp + 3], 0x63
jne 0x10034da7
cmp byte [ebx + edx + 2], 4
jne 0x10034da7
cmp byte [ebx + edx + 3], 3
je 0x10034dda
cmp word [esp + 0x18], 1
jbe 0x10034fff
mov eax, dword [esp + 0x3c]
mov ecx, dword [0x1006be90]
mov eax, dword [eax + ebx*4 - 4]
cmp eax, dword [ecx + 0x10]
je 0x10034dcf
cmp eax, dword [ecx + 0x24]
jne 0x10034fff
cmp byte [ebx + edx - 2], 1
jne 0x10034fff
mov edx, dword [esp + 0x18]
cmp dx, 1
jbe 0x10034e32
mov ecx, dword [esp + 0x3c]
mov eax, dword [ecx + ebx*4 - 4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0x38]
jne 0x10034e32
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 2]
lea ecx, [eax + eax*2]
movzx eax, word [esi + ecx*4 + 4]
lea esi, [esi + ecx*4]
cmp byte [eax + ebp + 3], 0x48
jne 0x10034e32
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx - 2], 1
jne 0x10034e32
mov ecx, dword [esi + 8]
inc ecx
mov cx, word [ecx]
mov eax, 0x100628a4
cmp cx, word [eax]
je 0x10034f3a
mov eax, dword [esp + 0x79c]
mov ecx, dword [eax + 0x34]
mov al, byte [ecx + ebx - 1]
add ecx, ebx
cmp al, 3
lea esi, [edx + 1]
jne 0x10034e61
mov edi, dword [esp + 0x38]
cmp byte [ebx + edi - 1], 0
je 0x10034e5c
mov edi, dword [esp + 0x34]
cmp byte [edi], al
je 0x10034e61
lea esi, [edx - 1]
jmp 0x10034e89
cmp al, 7
jne 0x10034e89
cmp dx, 1
jbe 0x10034e76
cmp byte [ecx - 2], 3
jne 0x10034e76
lea esi, [edx - 2]
jmp 0x10034e89
cmp al, 7
jne 0x10034e89
cmp dx, 2
jbe 0x10034e89
cmp byte [ecx - 3], 3
jne 0x10034e89
lea esi, [edx - 3]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x79c]
push esi
push edx
push eax
call fcn.1001c2b0
add esp, 0xc
test ax, ax
jne 0x10034f30
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x30]
mov byte [ebx + ecx], 4
movzx edx, word [esi + 4]
mov byte [edx + ebp + 1], 4
movzx eax, word [esi + 4]
lea ecx, [eax + ebp]
mov al, byte [ecx + 9]
test al, al
jne 0x10034f09
mov eax, dword [esp + 0x40]
mov edx, dword [eax + 8]
movzx eax, byte [eax]
cmp byte [eax + edx - 1], 0x65
sete dl
lea edx, [edx*4 + 4]
mov byte [ecx + 3], dl
movzx eax, word [esi + 4]
mov byte [eax + ebp + 2], 0x40
mov eax, dword [esp + 0x3c]
add dword [eax + ebx*4], 0x60000
movzx ecx, word [esi + 4]
mov byte [ecx + ebp + 4], 0x61
jmp case.default.0x10034b16
mov edx, dword [esp + 0x60]
push edx
call fcn.1001cde0
mov byte [ecx + 3], al
movzx eax, word [esi + 4]
mov byte [eax + ebp + 2], 0x60
movzx ecx, word [esi + 4]
add esp, 4
mov byte [ecx + ebp + 4], 0x61
jmp case.default.0x10034b16
cmp ax, 1
jne case.default.0x10034b16
mov esi, dword [esp + 0x40]
movzx edx, byte [esi]
mov eax, dword [esi + 8]
cmp byte [edx + eax - 1], 0x65
jne case.default.0x10034b16
mov ecx, dword [esp + 0x30]
movzx edx, word [ecx + 4]
mov cl, byte [edx + ebp + 9]
cmp cl, 1
lea eax, [edx + ebp]
jne case.default.0x10034b16
add eax, 0xb
push eax
lea eax, [esp + 0x498]
push 0xffffffffffffffff
push eax
call fcn.100022a0
add esp, 0xc
push 0
push 5
push 0
push 0
push 0xffffffffffffffff
lea ecx, [esp + 0x6a8]
push ecx
lea edx, [esp + 0x4ac]
push edx
call fcn.1004c100
mov esi, dword [esi + 8]
lea eax, [esp + 0x694]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x10034fce
test cl, cl
je 0x10034fca
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x10034fce
add eax, 2
add esi, 2
test cl, cl
jne 0x10034fa6
xor eax, eax
jmp 0x10034fd3
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne case.default.0x10034b16
mov eax, dword [esp + 0x30]
movzx ecx, word [eax + 4]
mov byte [ecx + ebp + 3], 0x35
movzx edx, word [eax + 4]
mov byte [edx + ebp + 8], 0x49
movzx eax, word [eax + 4]
mov byte [eax + ebp + 9], 0
jmp case.default.0x10034b16
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x79c]
push ecx
push edx
call fcn.1002f2e0
mov esi, dword [esp + 0x38]
movzx eax, word [esi + 4]
lea ecx, [eax + ebp]
mov al, byte [ecx + 9]
add esp, 8
test al, al
mov eax, dword [esp + 0x40]
jne 0x10035060
mov edx, dword [eax + 8]
movzx eax, byte [eax]
cmp byte [eax + edx - 1], 0x65
sete dl
lea edx, [edx*4 + 4]
mov byte [ecx + 3], dl
movzx eax, word [esi + 4]
mov dl, byte [eax + ebp + 2]
lea eax, [eax + ebp + 2]
or dl, 0x40
mov byte [eax], dl
mov eax, dword [esp + 0x3c]
add dword [eax + ebx*4], 0x60000
jmp case.default.0x10034b16
movzx edx, byte [eax]
mov eax, dword [eax + 8]
movzx edx, byte [edx + eax - 1]
push edx
call fcn.1001cde0
mov byte [ecx + 3], al
movzx eax, word [esi + 4]
mov cl, byte [eax + ebp + 2]
lea eax, [eax + ebp + 2]
add esp, 4
or cl, 0x60
mov byte [eax], cl
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x79c]
inc eax
cmp ax, word [ecx + 0x26]
mov dword [esp + 0x18], eax
jbe 0x10032f50
mov dword [esp + 0x18], 0
lea ebx, [ebx]
mov edx, dword [esp + 0x18]
test dx, dx
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x10]
movzx ebx, dx
mov cx, word [eax + ebx*2]
movzx eax, cx
lea eax, [eax + eax*2]
lea esi, [esi + eax*4]
mov dword [esp + 0x2c], esi
lea eax, [ebx + edi - 1]
ja 0x100350e1
lea eax, [esp + 0x57]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x79c]
cmp dx, word [eax + 0x26]
jae 0x100350fc
lea edx, [ebx + edi + 1]
mov dword [esp + 0x34], edx
jmp 0x10035104
lea eax, [esp + 0x57]
mov dword [esp + 0x34], eax
cmp byte [ebx + edi], 8
jne 0x10035240
cmp byte [esi], 2
mov dword [esp + 0x24], ecx
jne 0x10035240
mov ecx, dword [esi + 8]
movzx edx, byte [ecx]
push edx
call fcn.10057750
mov ecx, dword [esi + 8]
movzx dx, byte [ecx + 1]
shl eax, 8
add esp, 4
add eax, edx
movzx eax, ax
cmp eax, 0x7369
jg 0x10035164
je 0x10035158
cmp eax, 0x6369
je 0x10035160
cmp eax, 0x6d69
je 0x1003515c
cmp eax, 0x7327
jne 0x10035172
mov dl, 0x39
jmp 0x1003517d
mov dl, 0x31
jmp 0x1003517d
mov dl, 0x34
jmp 0x1003517d
cmp eax, 0x7469
je 0x1003517b
cmp eax, 0x7669
je 0x10035177
or dl, 0xff
jmp 0x1003517d
mov dl, 0x35
jmp 0x1003517d
mov dl, 0x32
mov eax, dword [esp + 0x34]
mov al, byte [eax]
cmp al, 5
jne 0x100352db
cmp dl, 0xff
je 0x100352db
mov eax, dword [esp + 0x14]
mov cx, word [eax + ebx*2]
movsx eax, word [eax + ebx*2 + 2]
mov esi, dword [esp + 0x20]
lea eax, [eax + eax*2]
lea esi, [esi + eax*4 + 4]
movzx eax, word [esi]
lea edi, [eax + ebp]
mov al, byte [edi + 3]
cmp al, 0x38
jne 0x100351c5
cmp dl, 0x31
je 0x100351c3
cmp dl, 0x32
jne 0x100351c5
mov dl, 0x38
cmp al, dl
jne 0x100351eb
cmp byte [edi + 4], 0x65
jne 0x100351d5
cmp byte [edi + 7], 0x43
jne 0x100351eb
mov edx, dword [esp + 0x20]
movzx eax, cx
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov byte [eax + ebp + 6], 0x72
jmp 0x1003521e
cmp dl, 0x39
jne 0x10035240
cmp al, 0x33
je 0x100351f8
cmp al, 0x36
jne 0x10035240
movzx eax, cx
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
lea eax, [ecx + eax*4 + 4]
mov byte [edx + ebp + 6], 0x72
movzx ecx, word [esi]
movzx edx, word [eax]
mov al, byte [ecx + ebp + 3]
mov byte [edx + ebp + 4], al
movzx ecx, word [esi]
mov al, byte [ecx + ebp + 6]
test al, 0x10
lea ecx, [ecx + ebp + 6]
je 0x10035240
and al, 0xef
mov byte [ecx], al
movzx edx, word [esi]
mov cl, byte [edx + ebp + 9]
lea eax, [edx + ebp + 9]
inc cl
mov byte [eax], cl
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 5
jne 0x10035637
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
mov al, byte [ecx + ebp + 7]
cmp al, 0x56
lea edi, [ecx + ebp]
jne 0x100353a6
cmp byte [edi + 4], 0x74
jne 0x100353a6
mov dl, byte [edi + 6]
mov al, dl
and al, 0x81
cmp al, 1
jne 0x100353a6
test si, si
jbe 0x100353a6
lea ecx, [esi - 1]
test cx, cx
mov dword [esp + 0x24], ecx
jle 0x100353a6
jmp 0x100352a0
mov esi, dword [esp + 0x10]
movsx eax, cx
cmp byte [eax + esi], 5
jne 0x100352cc
mov esi, dword [esp + 0x14]
movzx eax, word [esi + eax*2]
mov esi, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [esi + eax*4 + 4]
cmp byte [eax + ebp + 7], 0x43
je 0x10035353
dec ecx
test cx, cx
jg 0x100352a0
mov dword [esp + 0x24], ecx
jmp 0x100353a2
cmp byte [ebx + edi + 2], 5
jne 0x10035240
mov ecx, dword [esp + 0x2c]
movzx edx, word [ecx + 4]
cmp byte [edx + ebp + 6], 0x72
je 0x10035240
mov ecx, dword [esp + 0x3c]
mov edx, dword [ecx + ebx*4 + 4]
mov ecx, dword [0x1006be90]
cmp edx, dword [ecx + 0x80]
je 0x10035334
cmp al, 8
jne 0x10035240
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
mov edx, dword [ecx + eax*4 + 8]
cmp byte [edx], 0x6c
jne 0x10035240
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x79c]
push eax
push esi
push ecx
call fcn.1001ce30
add esp, 0xc
jmp 0x10035244
test cx, cx
mov dword [esp + 0x24], ecx
jle 0x100353a2
movsx eax, cx
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
lea ecx, [ecx + ecx*2]
movzx ecx, word [esi + ecx*4 + 4]
cmp byte [ecx + ebp + 4], 0x65
jne 0x100353a2
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx - 1], 8
jne 0x10035399
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + eax*2 - 2]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
cmp byte [ecx + ebp + 6], 0x72
je 0x100353a2
and dl, 0xfe
or dl, 0x80
mov byte [edi + 6], dl
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 5
jne 0x10035637
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
lea eax, [ecx + ebp]
cmp byte [eax + 8], 0x46
mov dword [esp + 0x40], eax
jne 0x10035637
mov edx, eax
mov al, byte [edx + 9]
test al, al
jne 0x10035637
mov eax, edx
cmp byte [eax + 0xa], 0x53
jne 0x10035413
test si, si
jbe 0x100353f0
mov ecx, dword [esp + 0x30]
cmp byte [ecx], 1
je 0x10035413
cmp si, 1
jbe 0x10035637
mov edx, dword [esp + 0x30]
cmp byte [edx], 4
jne 0x10035637
mov eax, edx
cmp byte [eax - 1], 1
jne 0x10035637
xor edi, edi
test si, si
mov dword [esp + 0x24], edi
jne 0x10035486
mov ecx, dword [esp + 0x34]
mov al, byte [ecx]
cmp al, 1
mov edi, 1
mov dword [esp + 0x24], edi
je 0x10035444
mov edx, dword [esp + 0x40]
mov cl, byte [edx + 6]
and cl, 0x81
cmp cl, 0x80
je 0x1003544a
cmp al, 3
jne 0x1003544a
xor edi, edi
mov dword [esp + 0x24], edi
mov edx, dword [esp + 0x34]
mov cl, byte [edx]
cmp cl, 6
jne 0x100355b1
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx edx, word [eax + edx*4 + 4]
cmp byte [edx + ebp + 3], 0x63
je 0x100355b1
mov dword [esp + 0x24], 0
jmp 0x10035637
cmp si, 1
jbe 0x100354d1
mov edx, dword [esp + 0x30]
cmp byte [edx], 1
je 0x100354a0
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 1
jne 0x100354cd
mov ecx, dword [esp + 0x3c]
mov eax, dword [ecx + ebx*4 - 4]
mov edx, dword [0x1006be90]
cmp eax, dword [edx + 0xd8]
je 0x10035589
mov ecx, edx
cmp eax, dword [ecx + 0xdc]
je 0x10035589
jmp 0x10035580
cmp si, 1
jne 0x100354ea
mov edx, dword [esp + 0x30]
cmp byte [edx], 1
jne 0x10035529
mov edi, 1
mov dword [esp + 0x24], edi
jmp 0x10035592
cmp si, 1
jbe 0x10035589
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x79c]
dec esi
push esi
push eax
call fcn.1001cda0
add esp, 8
test al, al
jne 0x10035523
mov ecx, dword [esp + 0x79c]
push esi
push ecx
call fcn.1001cda0
add esp, 8
test al, al
je 0x1003554a
mov esi, dword [esp + 0x18]
jmp 0x10035580
mov edx, dword [esp + 0x79c]
push 0
push edx
call fcn.1001cda0
add esp, 8
test al, al
je 0x10035592
mov edi, 1
mov dword [esp + 0x24], edi
jmp 0x10035592
mov esi, dword [esp + 0x18]
cmp si, 1
jbe 0x10035589
mov eax, dword [esp + 0x30]
cmp byte [eax], 4
jne 0x10035589
mov edx, dword [esp + 0x79c]
lea ecx, [esi - 2]
push ecx
push edx
call fcn.1001cda0
add esp, 8
test al, al
jne 0x10035580
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 1
jne 0x10035589
mov edi, 1
mov dword [esp + 0x24], edi
test si, si
jbe 0x1003544a
mov ecx, dword [esp + 0x30]
mov al, byte [ecx]
cmp al, 8
je 0x100355a4
cmp al, 3
jne 0x1003544a
mov dword [esp + 0x24], 0
jmp 0x10035637
cmp cl, 7
jne 0x100355c0
mov dword [esp + 0x24], 0
jmp 0x10035637
cmp di, 1
jne 0x10035637
mov eax, dword [esp + 0x40]
and byte [eax + 2], 0x90
mov eax, dword [esp + 0x79c]
push esi
push eax
call fcn.1002f2e0
add esp, 8
test si, si
jbe 0x10035619
mov ecx, dword [esp + 0x30]
mov al, byte [ecx]
cmp al, 1
je 0x100355f2
cmp al, 4
jne 0x10035619
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
mov dl, byte [edx + ebp + 3]
mov byte [ecx + ebp + 3], dl
jmp 0x10035626
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
mov byte [ecx + ebp + 3], 0x88
movzx edx, word [eax + 4]
mov cl, byte [edx + ebp + 2]
lea eax, [edx + ebp + 2]
or cl, 1
mov byte [eax], cl
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 7
jne 0x1003571e
mov eax, dword [esp + 0x34]
cmp byte [eax], 6
jne 0x1003571e
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 2]
mov edi, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [edi + eax*4 + 4]
cmp byte [edx + ebp + 3], 0x63
jne 0x1003571e
mov dl, byte [ebx + ecx + 2]
cmp dl, 3
lea eax, [ebx + ecx + 2]
mov dword [esp + 0x4c], eax
jne 0x1003571e
mov al, byte [ebx + ecx + 3]
cmp al, 4
je 0x1003571e
cmp al, 7
je 0x1003571e
mov edx, dword [esp + 0x14]
push 0xffffffffffffffff
lea eax, [esp + 0x78]
push eax
movzx eax, word [edx + ebx*2 + 4]
mov edx, dword [esp + 0x7a4]
lea ecx, [esp + 0x70]
push ecx
push 0
lea eax, [eax + eax*2]
mov ecx, dword [edi + eax*4 + 8]
mov eax, dword [edx + 0x21c]
push 0xffffffffffffffff
push ecx
push eax
call fcn.1005f451
cmp dword [esp + 0x68], 0xf42400
je 0x1003571e
mov ecx, dword [esp + 0x79c]
mov edx, dword [ecx + 0x21c]
mov al, byte [edx + 0xc]
and al, 0xe0
cmp al, 0x60
jne 0x1003571e
mov ecx, dword [esp + 0x4c]
mov byte [ecx], 7
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 + 4]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
mov byte [eax + ebp + 1], 7
movzx eax, word [ecx + ebx*2 + 4]
lea ecx, [eax + eax*2]
movzx edx, word [edi + ecx*4 + 4]
mov byte [edx + ebp + 3], 0x61
cmp si, 1
jbe 0x10035843
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax], 5
jne 0x10035843
mov ecx, dword [esp + 0x2c]
movzx esi, word [ecx + 4]
mov cl, byte [esi + ebp + 3]
cmp cl, 0x32
lea eax, [esi + ebp + 3]
mov dword [esp + 0x4c], eax
jne 0x10035843
mov edi, dword [esp + 0x30]
cmp byte [edi], 8
je 0x10035782
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + ebx*4 - 4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0xc]
jne 0x10035843
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], 8
jne 0x10035843
cmp byte [esi + ebp + 8], 0x49
jne 0x10035843
mov al, byte [esi + ebp + 9]
test al, al
jne 0x10035843
lea eax, [esi + ebp + 0xb]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100357a0
sub eax, edx
mov dword [esp + 0x24], eax
movsx eax, ax
add eax, esi
cmp byte [eax + ebp + 8], 0x61
jne 0x10035843
mov ecx, dword [esp + 0x18]
mov al, byte [edi]
dec ecx
cmp al, 8
mov dword [esp + 0x24], ecx
jne 0x100357f3
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], 8
jne 0x100357f8
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx edx, word [eax + edx*4 + 4]
cmp byte [edx + ebp + 5], 0x70
jne 0x100357f8
dec ecx
mov dword [esp + 0x24], ecx
movsx eax, cx
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + eax*2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx ecx, word [eax + edx*4 + 4]
mov al, byte [ecx + ebp + 4]
cmp al, 0x31
lea esi, [ecx + ebp]
je 0x1003581e
cmp al, 0x33
jne 0x10035843
mov cl, byte [esi + 5]
cmp cl, 0x73
je 0x10035830
cmp cl, 0x75
je 0x10035830
cmp cl, 0x70
jne 0x10035843
mov edx, dword [esp + 0x4c]
mov byte [edx], al
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
mov byte [ecx + ebp + 8], 0x43
mov esi, dword [esp + 0x18]
test si, si
jbe 0x10035974
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 5
jne 0x10035906
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
mov al, byte [ecx + ebp + 3]
cmp al, 0x37
lea edi, [ecx + ebp]
je 0x10035879
cmp al, 0x38
jne 0x10035906
mov edx, dword [esp + 0x30]
mov cl, byte [edx]
cmp cl, 8
je 0x100358a1
mov eax, dword [esp + 0x3c]
mov edx, dword [eax + ebx*4 - 4]
mov eax, dword [0x1006be90]
cmp edx, dword [eax + 0xc]
jne 0x10035906
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], 8
jne 0x10035906
cmp byte [edi + 8], 0x43
jne 0x10035906
mov dl, byte [edi + 9]
test dl, dl
je 0x100358b3
cmp dl, 4
jne 0x10035906
cmp cl, 8
lea eax, [esi - 1]
mov dword [esp + 0x24], eax
je 0x100358c4
dec eax
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x14]
movsx eax, ax
movzx eax, word [ecx + eax*2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
lea esi, [eax + ebp]
mov al, byte [esi + 4]
cmp al, 0x31
je 0x100358ed
cmp al, 0x32
je 0x100358ed
cmp al, 0x33
jne 0x10035906
mov cl, byte [esi + 5]
cmp cl, 0x73
je 0x100358fa
cmp cl, 0x75
jne 0x10035906
cmp dl, 4
jne 0x10035903
cmp al, 3
je 0x10035906
mov byte [edi + 3], al
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 4
jne 0x10035db2
mov eax, dword [esp + 0x38]
mov cl, byte [ebx + eax]
test cl, cl
je 0x10035970
mov al, byte [ebx + eax - 1]
cmp al, 0x28
jne 0x1003594e
mov esi, dword [esp + 0x34]
cmp byte [esi], 3
je 0x10035937
cmp byte [ebx + edx + 2], 3
jne 0x1003594e
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x79c]
push esi
push edi
call fcn.1002f2e0
add esp, 8
jmp 0x1003597b
cmp al, 0x2c
jne 0x10035970
cmp cl, al
jne 0x10035970
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 3
je 0x10035a88
mov edx, dword [esp + 0x30]
cmp byte [edx], 3
je 0x10035a95
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x79c]
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax], 4
jne 0x10035db2
mov ecx, dword [esp + 0x38]
mov al, byte [ebx + ecx]
test al, al
mov byte [esp + 0x2a], al
je 0x100359a2
cmp si, word [edi + 0x26]
jne 0x10035db2
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
lea eax, [ecx + eax*4]
mov dword [esp + 0x5c], eax
mov al, byte [edx + ebp + 3]
mov byte [esp + 0x1f], al
movzx eax, al
mov ecx, eax
and ecx, 0xc
and eax, 0xc0
test si, si
mov dword [esp + 0x58], ecx
mov dword [esp + 0x60], eax
mov dword [esp + 0x24], 0
jbe 0x10035bd7
mov eax, dword [esp + 0x30]
mov al, byte [eax]
cmp al, 2
jne 0x10035b34
mov ecx, dword [esp + 0x34]
mov cl, byte [ecx]
cmp cl, 6
je 0x10035a30
cmp cl, al
je 0x10035a30
cmp si, word [edi + 0x26]
je 0x10035a30
cmp cl, 1
jne 0x10035b34
mov edx, dword [esp + 0x3c]
mov ecx, dword [edx + ebx*4]
mov edx, dword [0x1006be90]
cmp ecx, dword [edx + 0xf4]
je 0x10035b3a
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx + 2], 2
jne 0x10035aee
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 4]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
mov edi, dword [ecx + eax*4 + 8]
movzx eax, word [edx + ebx*2 - 2]
lea edx, [eax + eax*2]
mov esi, dword [ecx + edx*4 + 8]
nop
mov cl, byte [esi]
mov dl, byte [edi]
mov al, cl
cmp cl, dl
jne 0x10035acf
test al, al
je 0x10035a84
mov dl, byte [esi + 1]
mov cl, byte [edi + 1]
mov al, dl
cmp dl, cl
jne 0x10035acf
add esi, 2
add edi, 2
test al, al
jne 0x10035a60
xor eax, eax
jmp 0x10035ad4
mov eax, dword [esp + 0x30]
cmp byte [eax], 3
jne 0x10035937
mov edi, dword [esp + 0x79c]
mov ecx, dword [edi + 0x34]
movzx dx, byte [ecx + ebx + 1]
mov esi, dword [esp + 0x18]
push ebx
push edx
push edi
push esi
push edi
call fcn.1001be20
add esp, 0x14
cmp ax, 2
jne 0x1003597b
push esi
push edi
call fcn.1002f2e0
add esp, 8
jmp 0x1003597b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x10035aee
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax + 3], 4
jne 0x10035aee
cmp byte [ebx + eax + 4], 3
je 0x10035db2
mov dword [esp + 0x24], 1
mov ecx, dword [esp + 0x2c]
movzx edx, word [ecx + 4]
mov al, byte [edx + ebp + 4]
cmp al, 0x6e
je 0x10035d93
cmp al, 0x69
je 0x10035d93
cmp al, 0x70
je 0x10035d93
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x79c]
push eax
push ecx
call fcn.1002f2e0
add esp, 8
jmp 0x10035db2
mov edx, dword [0x1006be90]
cmp al, 1
je 0x10035b4b
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + ebx*4 - 4]
cmp ecx, dword [edx + 0x1c]
jne 0x10035b54
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 2
je 0x10035aee
cmp al, 1
jne 0x10035b77
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 6
jne 0x10035b77
mov ecx, dword [esp + 0x10]
mov cl, byte [ebx + ecx + 2]
cmp cl, 3
je 0x10035b77
cmp cl, 4
jne 0x10035aee
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + ebx*4 - 4]
cmp ecx, dword [edx + 0x58]
jne 0x10035b90
movsx ecx, word [edi + 0x2a]
cmp ebx, ecx
je 0x10035aee
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx - 1], 0x2c
jne 0x10035bba
cmp al, 3
jne 0x10035bba
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + ebx*4 + 4]
cmp ecx, dword [edx + 0x6c]
jne 0x10035bba
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx + 2], al
je 0x10035aee
cmp al, 1
jne 0x10035bdd
mov eax, dword [esp + 0x34]
cmp byte [eax], 6
jne 0x10035bdd
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx + 2], 4
je 0x10035bdd
jmp 0x10035aee
mov edx, dword [0x1006be90]
mov eax, 1
cmp si, ax
jbe 0x10035c22
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + ebx*4 - 4]
cmp ecx, dword [edx + 0x84]
jne 0x10035c22
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], al
jne 0x10035c22
mov ecx, dword [esp + 0x34]
mov cl, byte [ecx]
cmp cl, 3
je 0x10035c22
cmp cl, 4
je 0x10035c22
mov cl, byte [esp + 0x2a]
test cl, cl
jne 0x10035c22
mov dword [esp + 0x24], eax
jmp 0x10035af6
test si, si
jne 0x10035c5f
mov edx, dword [esp + 0x34]
cmp byte [edx], 8
jne 0x10035cd0
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + 2]
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0x20]
movzx edx, word [ecx + edx*4 + 4]
mov cl, byte [edx + ebp + 5]
cmp cl, 0x74
je 0x10035c56
cmp cl, 0x70
jne 0x10035cd0
mov dword [esp + 0x24], eax
jmp 0x10035af6
jbe 0x10035cd0
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 1], 5
jne 0x10035cd0
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 - 2]
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0x20]
movzx edx, word [ecx + edx*4 + 4]
test byte [edx + ebp + 6], 6
jne 0x10035cd0
mov cl, byte [ebx + eax + 1]
cmp cl, 1
je 0x10035c9b
cmp cl, 2
je 0x10035c9b
cmp cl, 6
jne 0x10035cd0
mov eax, dword [edi + 0x38]
movzx eax, word [eax + ebx*2]
mov edx, dword [edi + 4]
lea ecx, [eax + eax*2]
movsx eax, word [edx + ecx*4 + 2]
mov ecx, dword [edi + 0x10]
add eax, ecx
cmp byte [eax + 1], 5
jbe 0x10035db2
mov dl, byte [eax + 8]
and dl, 0xe0
cmp dl, 0xc0
jne 0x10035db2
jmp 0x10035aee
mov eax, dword [esp + 0x3c]
mov edx, dword [eax + ebx*4]
mov ecx, dword [0x1006be90]
cmp edx, dword [ecx + 0x20]
mov dword [esp + 0x4c], edx
jne 0x10035d11
test si, si
jbe 0x10035d04
mov eax, dword [esp + 0x38]
mov cl, byte [ebx + eax - 1]
test cl, cl
jne 0x10035d04
mov ecx, dword [esp + 0x30]
cmp byte [ecx], 3
je 0x10035d9e
mov eax, dword [esp + 0x34]
cmp byte [eax], 5
je 0x10035d9e
mov ecx, dword [esp + 0x2c]
movzx eax, word [ecx + 4]
mov al, byte [eax + ebp + 4]
cmp al, 0x69
mov byte [esp + 0x2b], al
jne 0x10035d4a
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 7
jne 0x10035d4a
mov edx, dword [esp + 0x3c]
mov ecx, dword [edx + ebx*4 + 4]
mov edx, dword [0x1006be90]
cmp ecx, dword [edx + 0x10]
je 0x10035d9e
cmp ecx, dword [edx + 0x24]
je 0x10035d9e
mov edx, dword [esp + 0x4c]
test si, si
mov ecx, dword [esp + 0x10]
jbe 0x10035d83
cmp byte [ebx + ecx - 1], 3
je 0x10035d80
cmp byte [ebx + ecx + 1], 3
je 0x10035d80
cmp al, 0x61
jne 0x10035d80
movzx eax, word [edi + 0x1e]
mov ecx, dword [esp + 0x5c]
add eax, dword [ecx + 8]
push eax
call sym.mshy32.dll_IsRomanNumber
add esp, 4
test eax, eax
jmp 0x10035ae8
test si, si
jne 0x10035fce
cmp byte [ecx + 1], 5
jne 0x10035db2
cmp al, 0x6e
jne 0x10035db2
mov edi, dword [esp + 0x79c]
mov esi, dword [esp + 0x18]
push 0
push esi
push edi
mov dword [esp + 0x30], 2
call fcn.1001c0b0
add esp, 0xc
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 3
jne 0x100361d1
mov eax, dword [esp + 0x34]
mov cl, byte [eax]
cmp cl, 7
je 0x10035dd4
cmp cl, 1
jne 0x100361d1
mov esi, dword [esp + 0x38]
cmp byte [ebx + esi], 0
jne 0x100361d1
cmp cl, 1
mov eax, ebx
je 0x10035e02
mov cl, byte [eax + esi + 1]
inc eax
test cl, cl
jne 0x10035e02
cmp byte [eax + edx + 1], 7
jne 0x10035e02
mov cl, byte [eax + esi + 1]
test cl, cl
jne 0x10035e02
inc eax
mov al, byte [eax + edx + 1]
cmp al, 1
je 0x10035e12
cmp al, 8
jne 0x100361d1
mov edi, dword [esp + 0x14]
movzx ecx, word [edi + ebx*2]
mov edx, dword [esp + 0x79c]
mov esi, dword [edx + 4]
mov edx, dword [edx + 0x10]
lea ecx, [ecx + ecx*2]
movsx ecx, word [esi + ecx*4 + 2]
lea esi, [edx + ecx]
mov dword [esp + 0x4c], ecx
mov cl, byte [esi + 3]
and cl, 0xe0
cmp cl, 0x80
mov eax, 3
jne 0x10035e4b
mov eax, 8
mov cl, byte [eax + esi]
mov dl, cl
and dl, 0xe0
cmp dl, 0xc0
jne 0x10035e72
movzx edx, byte [esi + 1]
cmp eax, edx
jge 0x10035ef2
and cl, 1
dec cl
neg cl
sbb ecx, ecx
inc ecx
lea eax, [eax + ecx*2 + 5]
movzx ecx, byte [esi + 1]
cmp eax, ecx
jge 0x10035ef2
cmp eax, 3
jle 0x10035ef2
mov cl, byte [eax + esi]
and cl, 0xe0
cmp cl, 0x20
jne 0x10035ef2
mov esi, dword [esp + 0x79c]
mov edx, dword [esi + 0x21c]
mov edi, dword [esp + 0x14]
mov byte [edx], 0
mov ecx, dword [esi + 0x34]
mov byte [ebx + ecx], 5
mov edx, dword [esi + 0x10]
mov ecx, dword [esp + 0x18]
add edx, eax
mov eax, dword [esp + 0x4c]
add eax, edx
xor edx, edx
mov dx, word [edi + ebx*2]
push ecx
push 0
push edx
push 0xffffffffffffffff
push eax
movzx eax, byte [eax]
and eax, 0xffffffe0
push eax
push esi
call fcn.100225d0
movzx ecx, word [edi + ebx*2]
mov di, word [esi + 0xe4]
mov edx, dword [esi + 4]
lea ecx, [ecx + ecx*2]
mov word [edx + ecx*4 + 4], di
mov edi, dword [esp + 0x30]
add esp, 0x1c
add word [esi + 0xe4], ax
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 7
jne 0x100361da
mov eax, dword [esp + 0x3c]
mov ecx, dword [0x1006be90]
mov eax, dword [eax + ebx*4]
cmp eax, dword [ecx + 0x10]
je 0x10035f1b
cmp eax, dword [ecx + 0x24]
jne 0x100361da
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx], 0
jne 0x100361da
mov eax, dword [esp + 0x34]
cmp byte [eax], 3
jne 0x100361da
movzx eax, word [edi + ebx*2]
mov esi, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx edx, word [esi + ecx*4 + 4]
lea eax, [esi + ecx*4 + 4]
movzx ecx, byte [edx + ebp]
mov edx, dword [esp + 0x79c]
mov dx, word [edx + 0xe4]
mov word [eax], dx
movzx eax, word [edi + ebx*2]
lea eax, [eax + eax*2]
movzx edx, word [esi + eax*4 + 4]
mov byte [edx + ebp], cl
movzx eax, word [edi + ebx*2]
mov edx, dword [esp + 0x10]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
mov byte [ecx + ebp + 1], 4
mov byte [ebx + edx], 4
movzx eax, word [edi + ebx*2]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
mov byte [ecx + ebp + 2], 0
movzx eax, word [edi + ebx*2]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
mov byte [ecx + ebp + 3], 2
movzx eax, word [edi + ebx*2]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
mov eax, dword [esp + 0x79c]
mov byte [ecx + ebp + 4], 0x6e
add word [eax + 0xe4], 5
jmp 0x100361de
cmp si, 1
jbe 0x100360dd
mov eax, dword [esp + 0x30]
cmp byte [eax], 6
jne 0x100360dd
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 - 2]
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + 0x20]
movzx eax, word [ecx + eax*4 + 4]
cmp byte [eax + ebp + 3], 0x63
jne 0x100360dd
mov ecx, dword [esp + 0x38]
mov al, byte [ebx + ecx - 1]
test al, al
jne 0x100360dd
mov eax, ecx
mov cl, byte [ebx + eax - 2]
test cl, cl
jne 0x100360dd
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx - 2], 3
jne 0x100360dd
mov eax, dword [esp + 0x34]
mov cl, byte [eax]
cmp cl, 4
je 0x100360dd
cmp cl, 3
je 0x100360dd
cmp cl, 6
je 0x100360dd
cmp edx, 0x989680
jae 0x10035db2
mov eax, 3
cmp word [esp + 0x18], ax
jb 0x1003607a
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx - 3], 4
je 0x10035db2
mov edx, dword [esp + 0x14]
movzx ecx, word [edx + ebx*2 - 4]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x58]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
movzx edx, byte [ecx + ebp + 3]
mov ecx, edx
and ecx, 0xc
cmp esi, ecx
jne 0x10035db2
mov ecx, dword [esp + 0x60]
and edx, 0xc0
cmp ecx, edx
je 0x10035aee
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 3], 2
jne 0x10035db2
cmp word [esp + 0x18], ax
jbe 0x10035db2
mov eax, edx
cmp byte [ebx + eax - 4], 4
jmp 0x10035ae8
test si, si
jbe 0x10035db2
mov ecx, dword [esp + 0x30]
cmp byte [ecx], 1
jne 0x10035db2
mov al, byte [esp + 0x2a]
test al, al
jne 0x10035db2
mov edx, dword [esp + 0x34]
cmp byte [edx], 4
jne 0x10035db2
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax + 2], 3
jne 0x10035db2
mov ecx, dword [esp + 0x38]
mov al, byte [ebx + ecx + 1]
test al, al
jne 0x10035db2
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
mov edx, dword [ecx + eax*4 + 8]
lea eax, [ecx + eax*4]
cmp byte [edx], 0x75
je 0x10035db2
movzx eax, word [eax + 4]
movzx eax, byte [eax + ebp + 3]
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + ebx*2 + 4]
mov edi, eax
and eax, 0xc0
mov edx, eax
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + 0x20]
movzx eax, word [ecx + eax*4 + 4]
mov al, byte [eax + ebp + 3]
movzx ecx, al
mov esi, ecx
and ecx, 0xc0
and edi, 0xc
and esi, 0xc
test edx, edx
mov dword [esp + 0x5c], ecx
jne 0x1003619b
xor al, byte [esp + 0x1f]
test al, 0xc
je 0x1003619b
mov edx, dword [esp + 0x5c]
cmp edi, esi
jne 0x100361a9
cmp edx, dword [esp + 0x5c]
je 0x10035db2
test esi, esi
je 0x10035db2
test edx, edx
je 0x10035db2
cmp byte [esp + 0x2b], 0x6e
mov dword [esp + 0x24], 1
jne 0x10035af6
jmp 0x10035d93
mov edi, dword [esp + 0x14]
jmp 0x10035ef6
mov esi, dword [esp + 0x20]
cmp byte [ebx + edx], 6
jne 0x10036273
movzx eax, word [edi + ebx*2]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
cmp byte [ecx + ebp + 3], 0x63
lea eax, [esi + eax*4]
jne 0x10036273
cmp byte [eax], 7
jne 0x10036273
mov eax, dword [eax + 8]
cmp byte [eax], 0x6e
jne 0x10036273
cmp byte [eax + 1], 0x65
jne 0x10036273
cmp word [esp + 0x18], 0
jbe 0x10036273
mov eax, dword [esp + 0x30]
cmp byte [eax], 5
jne 0x10036273
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 5
jne 0x10036273
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax], 0
jne 0x10036273
mov cl, byte [ebx + eax - 1]
test cl, cl
jne 0x10036273
movzx eax, word [edi + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx ecx, word [esi + eax*4 + 4]
lea eax, [ecx + ebp]
cmp byte [eax + 7], 0x43
je 0x10036259
test byte [eax + 6], 0x40
je 0x10036273
mov eax, dword [esp + 0x2c]
mov byte [ebx + edx], 7
movzx ecx, word [eax + 4]
mov byte [ecx + ebp + 1], 7
movzx eax, word [eax + 4]
mov byte [eax + ebp + 3], 0x61
cmp byte [ebx + edx], 4
jne 0x100367f0
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx], 0
jne 0x10036748
mov edx, dword [esp + 0x34]
cmp byte [edx], 4
jne 0x10036748
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
mov edx, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov al, byte [eax + ebp + 4]
cmp al, 0x71
mov byte [esp + 0x2b], al
je 0x100362d4
cmp al, 0x61
je 0x100362d4
cmp al, 0x6e
je 0x100362d4
mov ecx, dword [esp + 0x2c]
movzx edx, word [ecx + 4]
cmp byte [edx + ebp + 4], 0x6e
jne 0x10036748
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
lea edi, [ecx - 1]
test di, di
mov dword [esp + 0x24], edi
jl 0x1003630d
jmp 0x100362f0
movsx eax, di
cmp byte [eax + edx], 4
jne 0x10036309
mov esi, dword [esp + 0x38]
cmp byte [eax + esi], 0
jne 0x10036309
dec edi
test di, di
jge 0x100362f0
mov dword [esp + 0x24], edi
test cx, cx
jne 0x1003635c
xor edi, edi
mov dword [esp + 0x24], edi
movsx eax, di
cmp byte [eax + edx], 3
jne 0x10036337
mov ecx, dword [esp + 0x38]
cmp byte [eax + ecx], 0
je 0x10036748
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
test cx, cx
jbe 0x10036341
inc edi
mov dword [esp + 0x24], edi
mov esi, dword [esp + 0x79c]
movzx esi, word [esi + 0x26]
add ecx, 2
movsx eax, cx
cmp eax, esi
jg 0x100363e4
jmp 0x100363c7
jbe 0x10036318
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + ebx*4]
mov esi, dword [0x1006be90]
cmp eax, dword [esi + 0x10]
je 0x10036375
cmp eax, dword [esi + 0x24]
jne 0x10036318
cmp byte [ebx + edx - 1], 1
jne 0x10036318
mov eax, dword [esp + 0x79c]
mov ecx, dword [eax + 0x38]
movzx ecx, word [ecx + ebx*2]
lea edx, [ecx + ecx*2]
mov ecx, dword [eax + 4]
movzx edx, word [ecx + edx*4 + 4]
mov ecx, dword [eax + 0x14]
mov byte [edx + ecx + 1], 7
mov edx, dword [eax + 0x34]
mov byte [ebx + edx], 7
mov ecx, dword [eax + 0x38]
movzx ecx, word [ecx + ebx*2]
lea edx, [ecx + ecx*2]
mov ecx, dword [eax + 4]
movzx edx, word [ecx + edx*4 + 4]
mov eax, dword [eax + 0x14]
mov byte [edx + eax + 3], 0x71
jmp 0x10036748
mov edx, dword [esp + 0x10]
cmp byte [eax + edx], 4
jne 0x100363e4
mov edx, dword [esp + 0x38]
cmp byte [eax + edx - 1], 0
jne 0x100363e0
inc ecx
movsx eax, cx
cmp eax, esi
jle 0x100363c3
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x38]
movsx eax, cx
cmp byte [eax + esi - 1], 0x2c
jne 0x10036400
cmp byte [eax + edx + 1], 3
jne 0x10036400
cmp byte [eax + edx], 4
jne 0x10036400
inc ecx
movsx eax, cx
cmp byte [eax + edx], 3
je 0x10036748
mov al, byte [esp + 0x2b]
dec ecx
cmp al, 0x6e
mov dword [esp + 0x48], ecx
jne 0x10036457
mov edx, dword [esp + 0x2c]
movzx eax, word [edx + 4]
cmp byte [eax + ebp + 4], 0x6e
je 0x10036457
movsx ecx, cx
movsx edx, di
sub ecx, edx
cmp ecx, 1
jne 0x10036748
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x79c]
push 0
inc eax
push eax
push ecx
call fcn.1001c0b0
add esp, 0xc
jmp 0x10036748
movzx eax, di
movsx edx, cx
cmp eax, edx
mov esi, edi
mov edi, dword [esp + 0x20]
mov dword [esp + 0x44], esi
jg 0x10036494
mov ecx, dword [esp + 0x14]
nop
movzx eax, word [ecx + eax*2]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
mov al, byte [eax + ebp + 4]
cmp al, 0x71
je 0x10036490
cmp al, 0x61
je 0x10036490
inc esi
movzx eax, si
cmp eax, edx
jle 0x10036470
mov dword [esp + 0x44], esi
mov eax, dword [esp + 0x44]
movzx esi, ax
mov ecx, edx
sub ecx, esi
jne 0x1003663e
mov eax, dword [esp + 0x30]
cmp byte [eax], 6
jne 0x10036521
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx ecx, word [edi + eax*4 + 4]
cmp byte [ecx + ebp + 3], 0x63
lea eax, [edi + eax*4]
jne 0x10036521
cmp byte [eax], 2
ja 0x10036521
mov eax, dword [esp + 0x3c]
mov ecx, dword [0x1006be90]
mov eax, dword [eax + ebx*4]
cmp eax, dword [ecx + 0x10]
je 0x100365da
cmp eax, dword [ecx + 0x24]
je 0x100365da
mov esi, dword [esp + 0x2c]
movzx ecx, word [esi + 4]
cmp byte [ecx + ebp + 4], 0x71
jne 0x10036521
mov ax, word [esi + 2]
add ax, 3
movzx ecx, ax
mov eax, dword [esp + 0x79c]
mov eax, dword [eax + 0x10]
mov cl, byte [ecx + eax + 5]
and cl, 0xe0
cmp cl, 7
je 0x100365de
mov ecx, dword [esp + 0x10]
cmp byte [edx + ecx + 1], 6
jne 0x10036579
cmp word [esp + 0x18], 0
je 0x10036540
mov al, byte [ebx + ecx - 1]
cmp al, 5
je 0x10036579
cmp al, 7
je 0x10036579
mov eax, dword [esp + 0x14]
movzx eax, word [eax + edx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
cmp byte [eax + ebp + 3], 0x63
jne 0x10036579
cmp byte [edx + ecx + 2], 4
jne 0x10036579
mov eax, dword [esp + 0x38]
cmp byte [edx + eax + 2], 0
jne 0x10036579
cmp byte [edx + ecx + 3], 3
je 0x10036748
mov edi, dword [esp + 0x20]
movsx ecx, word [esp + 0x24]
sub edx, ecx
cmp edx, 1
jne 0x10036635
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ecx*2]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
lea esi, [eax + ebp]
cmp byte [esi + 4], 0x6e
jne 0x100365fd
mov al, byte [esi + 3]
and al, 0xc
cmp al, 4
jne 0x100365fd
cmp word [esp + 0x18], 0
je 0x100365be
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 1], 2
je 0x100365fd
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x79c]
push 0
push ecx
push edx
call fcn.1001c0b0
add esp, 0xc
jmp 0x10036748
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x10]
mov byte [ebx + edx], 7
movzx eax, word [esi + 4]
mov byte [eax + ebp + 1], 7
movzx ecx, word [esi + 4]
mov byte [ecx + ebp + 3], 0x71
jmp 0x10036748
cmp edx, 1
jne 0x10036635
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ecx*2]
lea ecx, [eax + eax*2]
movzx edx, word [edi + ecx*4 + 4]
cmp byte [edx + ebp + 4], 0x69
jne 0x10036635
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x79c]
push 0
push eax
push ecx
call fcn.1001c0b0
add esp, 0xc
jmp 0x10036748
mov edx, dword [esp + 0x48]
jmp 0x10036737
cmp esi, edx
mov byte [esp + 0x94], 0
mov byte [esp + 0x95], 1
mov dword [esp + 0x40], eax
jg 0x1003670a
mov ecx, dword [esp + 0x79c]
mov edi, dword [ecx + 0x10]
mov eax, esi
jmp 0x10036670
mov edx, dword [esp + 0x14]
movzx ecx, word [edx + eax*2]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
mov cx, word [edx + ecx*4 + 2]
add cx, 3
movzx ecx, cx
lea edx, [ecx + edi]
mov cl, byte [edx]
and cl, 0xe0
sub eax, esi
cmp cl, 0x80
jne 0x100366aa
test byte [edx + 2], 0x10
je 0x100366b9
mov byte [esp + eax + 0x94], 0x70
jmp 0x100366c1
cmp cl, 0xc0
jne 0x100366b9
mov byte [esp + eax + 0x94], 0x73
jmp 0x100366c1
mov byte [esp + eax + 0x94], 0x64
mov eax, dword [esp + 0x40]
movsx ecx, word [esp + 0x48]
inc eax
mov dword [esp + 0x40], eax
movzx eax, ax
cmp eax, ecx
jle 0x10036670
mov cl, byte [esp + 0x94]
cmp cl, 0x73
je 0x10036733
cmp cl, 0x64
mov al, byte [esp + 0x95]
jne 0x100366f2
cmp al, 0x70
je 0x10036733
cmp al, 0x73
je 0x10036723
cmp cl, 0x70
jne 0x100366ff
cmp al, 0x64
je 0x10036723
cmp cl, al
jne 0x1003670a
mov edx, dword [esp + 0x44]
inc edx
jmp 0x10036737
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x79c]
push 0
push ecx
push edx
call fcn.1001c0b0
add esp, 0xc
jmp 0x10036748
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x79c]
inc eax
push eax
push ecx
jmp 0x10036740
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x79c]
push edx
push eax
call fcn.1002f2e0
add esp, 8
mov esi, dword [esp + 0x10]
cmp byte [ebx + esi], 4
jne 0x100367f0
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 4
jne 0x100367f0
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax], 0
jne 0x100367f0
mov cl, byte [ebx + eax + 1]
test cl, cl
jne 0x100367f0
mov al, byte [ebx + esi + 2]
cmp al, 3
je 0x100367f0
mov edx, dword [esp + 0x2c]
movzx ecx, word [edx + 4]
cmp byte [ecx + ebp + 4], 0x71
jne 0x100367f0
cmp al, 8
je 0x100367f0
mov edx, dword [esp + 0x18]
test dx, dx
jbe 0x1003685a
mov eax, dword [esp + 0x30]
cmp byte [eax], 1
je 0x100367de
lea eax, [edx - 1]
movzx ecx, ax
mov eax, dword [esp + 0x79c]
mov esi, dword [eax + 0x34]
cmp byte [ecx + esi], 2
jne 0x100367f0
mov esi, dword [eax + 0x38]
movzx ecx, word [esi + ecx*2]
mov esi, dword [eax + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [esi + ecx*4 + 4]
mov esi, dword [eax + 0x14]
cmp byte [ecx + esi + 4], 0x61
jne 0x100367f0
jmp 0x100367e5
mov eax, dword [esp + 0x79c]
inc edx
push edx
push eax
call fcn.1002f2e0
add esp, 8
mov edi, dword [esp + 0x18]
test di, di
mov esi, dword [esp + 0x10]
jbe 0x1003685a
cmp byte [ebx + esi], 3
jne 0x1003685a
mov eax, dword [esp + 0x2c]
movzx edx, word [eax + 4]
cmp byte [edx + ebp + 3], 1
jne 0x1003685a
mov eax, dword [eax + 8]
movzx ecx, byte [eax]
push ecx
call fcn.10057918
add esp, 4
test eax, eax
je 0x1003685a
mov edx, dword [esp + 0x34]
cmp byte [edx], 4
jne 0x1003685a
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax], 0
jne 0x1003685a
cmp byte [ebx + esi + 2], 3
je 0x1003685a
mov ecx, dword [esp + 0x30]
cmp byte [ecx], 3
je 0x1003685a
mov edx, dword [esp + 0x79c]
inc edi
push edi
push edx
call fcn.1002f2e0
add esp, 8
cmp byte [ebx + esi], 4
jne 0x10036c84
mov eax, dword [esp + 0x34]
mov al, byte [eax]
cmp al, 3
mov byte [esp + 0x1f], al
je 0x10036a5f
mov ecx, dword [esp + 0x2c]
movzx edx, word [ecx + 4]
mov al, byte [edx + ebp + 4]
cmp al, 0x69
mov byte [esp + 0x2b], al
je 0x10036a5f
cmp al, 0x70
je 0x10036a5f
cmp word [esp + 0x18], 0
jbe 0x10036a5f
mov eax, dword [esp + 0x30]
mov dl, byte [eax]
cmp dl, 3
je 0x10036a5f
mov eax, ecx
movzx ecx, byte [eax]
mov edi, dword [eax + 8]
dec ecx
mov esi, str.qual
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x10036a5f
cmp byte [esp + 0x1f], 6
jne 0x10036919
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx + 2], 1
je 0x10036919
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx ecx, word [eax + ecx*4 + 4]
cmp byte [ecx + ebp + 3], 0x63
mov eax, dword [esp + 0x79c]
jne 0x10036920
mov ecx, dword [eax + 0x3c]
mov cl, byte [ebx + ecx]
cmp cl, 0x2c
je 0x10036920
cmp cl, 0x3b
je 0x10036920
cmp cl, 0x3a
jne 0x10036a5f
jmp 0x10036920
mov eax, dword [esp + 0x79c]
cmp dl, 1
mov esi, dword [esp + 0x18]
je 0x100369c8
mov edi, dword [eax + 0x34]
lea ecx, [esi - 1]
movzx ecx, cx
cmp byte [ecx + edi], 2
jne 0x10036958
mov edi, dword [eax + 0x38]
movzx ecx, word [edi + ecx*2]
mov edi, dword [eax + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edi + ecx*4 + 4]
mov edi, dword [eax + 0x14]
cmp byte [ecx + edi + 4], 0x61
je 0x100369c8
cmp dl, 2
jne 0x10036964
cmp byte [esp + 0x1f], 7
je 0x100369c8
cmp byte [esp + 0x1f], 5
jne 0x10036a5f
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx], 0
jne 0x10036a5f
xor edi, edi
cmp dl, 4
jne 0x100369a2
cmp si, 1
jbe 0x100369a2
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], 3
jne 0x100369a2
mov dl, byte [ebx + ecx - 2]
test dl, dl
jne 0x100369a2
mov edi, 1
mov ecx, dword [esp + 0x2c]
mov dx, word [ecx + 2]
add dx, 3
movzx ecx, dx
mov edx, dword [eax + 0x10]
test byte [ecx + edx], 2
je 0x10036a5f
test edi, edi
jne 0x10036a5f
jmp 0x100369da
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx + 2], 3
je 0x10036a18
cmp byte [esp + 0x2b], 0x6e
jne 0x100369f3
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x79c]
push 0
push eax
push ecx
call fcn.1001c0b0
add esp, 0xc
jmp 0x10036a5f
cmp byte [esp + 0x1f], 5
jne 0x10036a4a
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
cmp byte [edx + ebp + 8], 0x46
je 0x10036a5f
jmp 0x10036a4a
mov edx, dword [eax + 0x34]
lea ecx, [esi + 1]
movzx ecx, cx
cmp byte [ecx + edx], 2
jne 0x10036a43
mov edx, dword [eax + 0x38]
movzx ecx, word [edx + ecx*2]
mov edx, dword [eax + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
mov edx, dword [eax + 0x14]
cmp byte [ecx + edx + 4], 0x61
je 0x10036a4a
cmp byte [esp + 0x1f], 5
jne 0x10036a5f
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x79c]
push eax
push ecx
call fcn.1002f2e0
add esp, 8
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 4
jne 0x10036c84
mov eax, dword [esp + 0x34]
cmp byte [eax], 3
je 0x10036c84
cmp word [esp + 0x18], 1
jbe 0x10036c84
mov ecx, dword [esp + 0x30]
mov al, byte [ecx]
cmp al, 5
mov byte [esp + 0x2a], al
je 0x10036c84
cmp al, 7
je 0x10036c84
cmp al, 3
je 0x10036c84
mov dl, byte [ebx + edx - 2]
cmp dl, 4
je 0x10036c84
mov eax, dword [esp + 0x10]
mov cl, byte [ebx + eax + 2]
cmp cl, 4
jne 0x10036ad0
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax], 0x2c
jne 0x10036c84
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2]
mov esi, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [esi + eax*4 + 4]
lea edi, [eax + ebp]
mov al, byte [edi + 4]
cmp al, 0x63
mov dword [esp + 0x4c], edi
je 0x10036afa
cmp al, 0x71
jne 0x10036c84
cmp cl, 7
je 0x10036c84
cmp byte [esp + 0x2a], 4
jne 0x10036b62
cmp dl, 3
jne 0x10036b62
mov ecx, dword [esp + 0x79c]
mov edx, dword [ecx + 0x38]
mov esi, dword [ecx + 4]
mov edi, dword [ecx + 0x14]
movzx ecx, word [edx + ebx*2 - 2]
lea eax, [edx + ebx*2]
movzx eax, word [eax]
lea ecx, [ecx + ecx*2]
movzx edx, word [esi + ecx*4 + 4]
xor ecx, ecx
mov cl, byte [edx + edi + 3]
lea edx, [eax + eax*2]
movzx eax, word [esi + edx*4 + 4]
and ecx, 0xffffffcc
push ecx
xor ecx, ecx
mov cl, byte [eax + edi + 3]
and ecx, 0xffffffcc
push ecx
call fcn.1001de40
add esp, 8
test eax, eax
jne 0x10036c84
mov edi, dword [esp + 0x4c]
mov edx, dword [esp + 0x30]
mov al, byte [edx]
cmp al, 2
mov byte [esp + 0x2a], al
jne 0x10036b87
mov eax, dword [esp + 0x38]
mov al, byte [ebx + eax]
cmp al, 0x2c
je 0x10036c6f
cmp al, 0x3b
je 0x10036c6f
mov ecx, dword [esp + 0x79c]
mov edx, dword [ecx + 0x30]
mov ecx, dword [0x1006be90]
mov esi, dword [ecx + 0x6c]
mov eax, dword [edx + ebx*4 - 4]
cmp eax, esi
lea edx, [edx + ebx*4]
mov dword [esp + 0x4c], esi
je 0x10036bae
cmp eax, dword [ecx + 0x70]
jne 0x10036c0e
mov esi, dword [esp + 0x14]
movzx eax, word [esi + ebx*2 - 4]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov al, byte [eax + ebp + 3]
xor al, byte [edi + 3]
test al, 0xc
jne 0x10036c0a
movzx eax, word [esi + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx ecx, word [ecx + eax*4 + 4]
cmp byte [ecx + ebp + 3], 0x63
jne 0x10036c0a
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 3
jne 0x10036c0a
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 6
jne 0x10036c0a
cmp word [esp + 0x18], 3
jb 0x10036c6f
mov eax, dword [esp + 0x38]
mov cl, byte [ebx + eax - 3]
test cl, cl
je 0x10036c6f
mov esi, dword [esp + 0x4c]
cmp byte [esp + 0x2a], 6
jne 0x10036c84
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
cmp byte [eax + ebp + 3], 0x73
jne 0x10036c84
mov eax, dword [edx + 4]
cmp eax, esi
je 0x10036c43
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0x70]
jne 0x10036c84
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx + 2], 3
jne 0x10036c84
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 4]
mov edx, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov cl, byte [eax + ebp + 3]
xor cl, byte [edi + 3]
test cl, 0xc
jne 0x10036c84
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x79c]
push edx
push eax
call fcn.1002f2e0
add esp, 8
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 3
mov edi, dword [esp + 0x20]
jne 0x10036e09
mov edx, dword [esp + 0x30]
cmp byte [edx], 6
mov edx, dword [esp + 0x14]
jne 0x10036e0d
movzx eax, word [edx + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
cmp byte [eax + ebp + 3], 0x63
jne 0x10036e0d
mov eax, dword [esp + 0x18]
cmp ax, 1
jbe 0x10036e0d
cmp byte [ebx + ecx - 2], 4
jne 0x10036e0d
cmp ax, 3
jbe 0x10036cec
cmp byte [ebx + ecx - 3], 4
jne 0x10036cec
cmp byte [ebx + ecx - 4], 3
je 0x10036d01
cmp ax, 2
jbe 0x10036e0d
cmp byte [ebx + ecx - 3], 3
jne 0x10036e0d
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx], 0
mov esi, dword [esp + 0x79c]
je 0x10036d2e
cmp ax, word [esi + 0x26]
je 0x10036d2e
mov eax, dword [esp + 0x34]
mov al, byte [eax]
cmp al, 8
je 0x10036d2e
cmp al, 7
je 0x10036d2e
cmp al, 5
jne 0x10036e14
mov ecx, dword [esi + 0x38]
movzx eax, word [ecx + ebx*2]
mov ecx, dword [esi + 4]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 2]
mov ecx, dword [esi + 0x10]
add eax, ecx
cmp byte [eax], 0x45
jne 0x10036e14
mov al, byte [eax + 3]
mov cl, al
and cl, 0xe0
cmp cl, 0xc0
jne 0x10036e14
test al, 2
je 0x10036e14
movzx eax, word [edx + ebx*2]
lea edx, [eax + eax*2]
movzx ecx, word [edi + edx*4 + 4]
movzx ecx, byte [ecx + ebp]
lea eax, [edi + edx*4 + 4]
mov dx, word [esi + 0xe4]
mov word [eax], dx
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
mov byte [eax + ebp], cl
movzx eax, word [edx + ebx*2]
lea ecx, [eax + eax*2]
movzx eax, word [edi + ecx*4 + 4]
mov ecx, dword [esp + 0x10]
mov byte [eax + ebp + 1], 4
mov byte [ebx + ecx], 4
movzx eax, word [edx + ebx*2]
lea eax, [eax + eax*2]
movzx ecx, word [edi + eax*4 + 4]
mov byte [ecx + ebp + 2], 0
mov eax, dword [esi + 0x38]
movzx eax, word [eax + ebx*2]
lea ecx, [eax + eax*2]
mov eax, dword [esi + 4]
movzx ecx, word [eax + ecx*4 + 4]
mov eax, dword [esi + 0x14]
mov cl, byte [ecx + eax + 3]
movzx eax, word [edx + ebx*2]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
and cl, 0xcc
mov byte [eax + ebp + 3], cl
movzx eax, word [edx + ebx*2]
lea ecx, [eax + eax*2]
movzx eax, word [edi + ecx*4 + 4]
mov byte [eax + ebp + 4], 0x6e
add word [esi + 0xe4], 5
jmp 0x10036e14
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x79c]
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 1
jne 0x10037024
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + ebx*4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0x14]
je 0x10036e40
cmp eax, dword [ecx + 0xa0]
jne 0x10037024
mov ecx, dword [esp + 0x2c]
movzx eax, word [ecx + 4]
movzx cx, byte [eax + ebp + 3]
mov eax, dword [esp + 0x34]
mov word [esp + 0x40], cx
mov cl, byte [eax]
cmp cl, 5
jne 0x10036e76
movzx eax, word [edx + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
cmp byte [eax + ebp + 8], 0x50
jne 0x10036ff7
cmp cl, 8
jne 0x10036e93
movzx eax, word [edx + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
cmp byte [eax + ebp + 5], 0x70
je 0x10036ff7
cmp word [esp + 0x18], 0
jbe 0x10036f24
mov eax, dword [esp + 0x30]
cmp byte [eax], 1
jne 0x10036ec4
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax], 0
jne 0x10036ff7
cmp cl, 3
je 0x10036fc4
jmp 0x10036ff7
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + 0x34]
dec eax
movzx eax, ax
cmp byte [eax + ecx], 2
jne 0x10036ef5
mov ecx, dword [esi + 0x38]
movzx eax, word [ecx + eax*2]
mov ecx, dword [esi + 4]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov ecx, dword [esi + 0x14]
cmp byte [eax + ecx + 4], 0x61
je 0x10036ff7
mov eax, dword [esp + 0x30]
cmp byte [eax], 5
jne 0x10036f24
movzx eax, word [edx + ebx*2 - 2]
lea ecx, [eax + eax*2]
movzx eax, word [edi + ecx*4 + 4]
cmp byte [eax + ebp + 8], 0x50
je 0x10036f24
mov ecx, dword [esp + 0x34]
mov al, byte [ecx]
cmp al, 4
je 0x10036f24
cmp al, 3
jne 0x10036ff7
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + ebx*4 + 4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0x1c]
je 0x10036ff7
cmp eax, dword [ecx + 0x70]
jne 0x10036fc4
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx + 2], 4
jne 0x10036fc4
movzx eax, word [edx + ebx*2 + 4]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
cmp byte [eax + ebp + 4], 0x63
jne 0x10036fc4
movzx eax, word [esi + 0xe4]
mov byte [eax + ebp + 1], 4
mov byte [ebx + ecx], 4
movzx ecx, word [esi + 0xe4]
mov byte [ecx + ebp], 1
movzx eax, word [esi + 0xe4]
mov byte [eax + ebp + 2], 0
movzx ecx, word [esi + 0xe4]
mov eax, dword [esp + 0x2c]
mov byte [ecx + ebp + 4], 0x63
movzx ecx, word [eax + 4]
movzx eax, word [esi + 0xe4]
mov cl, byte [ecx + ebp + 3]
mov byte [eax + ebp + 3], cl
mov ax, word [esi + 0xe4]
mov ecx, dword [esp + 0x2c]
mov word [ecx + 4], ax
add word [esi + 0xe4], 5
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
cmp byte [ecx + ebp + 3], 0x88
jne 0x10037024
mov eax, dword [esp + 0x34]
cmp byte [eax], 4
jne 0x10037024
mov ecx, dword [esp + 0x10]
mov al, byte [ebx + ecx + 2]
cmp al, 3
je 0x10037024
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx + 1], 0
jne 0x10036ff7
cmp al, 4
je 0x10037024
mov edx, dword [esp + 0x18]
push 0
push edx
push esi
call fcn.1001c0b0
mov eax, dword [esp + 0x38]
movzx ecx, word [eax + 4]
mov dl, byte [esp + 0x4c]
mov byte [ecx + ebp + 3], dl
movzx eax, word [eax + 4]
mov edx, dword [esp + 0x20]
add esp, 0xc
mov byte [eax + ebp + 4], 0x33
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 6
jne 0x10037e77
mov eax, dword [esp + 0x2c]
cmp byte [eax], 3
jne 0x10037e77
cmp word [esp + 0x18], 0
jbe 0x10037e77
mov ecx, dword [esp + 0x3c]
mov eax, dword [ecx + ebx*4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0x1c]
jne 0x10037e77
mov eax, dword [esp + 0x30]
mov al, byte [eax]
cmp al, 6
mov byte [esp + 0x2a], al
je 0x10037e77
lea eax, [ebx - 1]
xor ecx, ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x18]
cmp ax, 1
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x5c], 0xffffffff
mov dword [esp + 0x58], ecx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x48], ecx
jbe 0x10037192
cmp byte [esp + 0x2a], 3
mov ecx, dword [esp + 0x38]
jne 0x100370c1
cmp byte [ebx + ecx - 2], 0x2c
jne 0x100370c1
mov dword [esp + 0x48], 0
jmp 0x100378fc
cmp byte [ebx + ecx - 1], 0x2c
jne 0x10037192
cmp byte [ebx + ecx - 2], 0x2c
je 0x10037192
cmp byte [esp + 0x2a], 5
je 0x10037192
cmp ax, 2
jbe 0x10037e77
mov ecx, dword [esp + 0x38]
cmp byte [ebx + ecx - 3], 0x2c
jne 0x10037106
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 3], 5
je 0x10037e77
mov edi, dword [esp + 0x18]
dec edi
movsx eax, di
lea ecx, [ebx - 6]
cmp eax, ecx
mov dword [esp + 0x24], edi
jl 0x10037900
lea ecx, [ecx]
test di, di
jl 0x10037148
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx], 1
je 0x10037155
push edi
push esi
call fcn.1001cda0
add esp, 8
test al, al
jne 0x10037151
dec edi
movsx eax, di
lea ecx, [ebx - 6]
cmp eax, ecx
jge 0x10037120
mov dword [esp + 0x24], edi
jmp 0x10037900
mov ecx, dword [esp + 0x10]
cmp di, 1
movsx eax, di
mov dword [esp + 0x24], edi
mov dword [esp + 0x48], 0xa
mov dword [esp + 0x40], eax
jle 0x10037900
cmp byte [eax + ecx - 2], 1
jne 0x10037900
cmp byte [eax + ecx - 1], 3
jne 0x10037900
dec eax
mov dword [esp + 0x40], eax
jmp 0x10037900
cmp ax, word [esi + 0x26]
mov byte [esp + 0x2b], 0
mov byte [esp + 0x1f], 0
jae 0x100371a7
mov byte [esp + 0x2b], 1
cmp ax, 1
jbe 0x1003724d
mov ecx, dword [esi + 0x34]
add ecx, ebx
cmp byte [ecx - 1], 3
mov dword [esp + 0x64], ecx
jne 0x1003724d
mov eax, dword [esi + 0x38]
movzx eax, word [eax + ebx*2 - 2]
mov ecx, dword [esi + 4]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov ecx, dword [esi + 0x14]
mov al, byte [eax + ecx + 4]
and al, 0x1c
cmp al, 0xc
je 0x10037249
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 6
je 0x100371ff
mov eax, dword [esp + 0x38]
mov al, byte [ebx + eax - 2]
cmp al, 0x3a
je 0x100371ff
cmp al, 0x3b
jne 0x10037249
movzx eax, word [edx + ebx*2 - 4]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
cmp byte [eax + ebp + 3], 0x63
jne 0x10037244
cmp word [esp + 0x18], 2
jbe 0x10037244
mov edx, dword [esp + 0x64]
cmp byte [edx - 3], 3
jne 0x10037244
mov eax, dword [esi + 0x38]
movzx eax, word [eax + ebx*2 - 6]
lea edx, [eax + eax*2]
mov eax, dword [esi + 4]
movzx eax, word [eax + edx*4 + 4]
mov cl, byte [eax + ecx + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x10037249
mov byte [esp + 0x1f], 2
mov eax, dword [esp + 0x18]
lea ecx, [eax - 1]
movsx eax, cx
lea edx, [ebx - 6]
cmp eax, edx
mov dword [esp + 0x24], ecx
jl 0x100378e6
add ecx, 2
mov dword [esp + 0x64], ecx
lea esp, [esp]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
movzx di, byte [eax + edx]
cmp byte [eax + ecx], 0
jne 0x10037754
cmp di, 6
jne 0x100372ee
cmp byte [esp + 0x1f], 2
jb 0x10037360
mov edx, dword [esp + 0x3c]
mov ecx, dword [edx + eax*4]
mov edx, dword [0x1006be90]
cmp ecx, dword [edx + 0x6c]
je 0x100372b3
cmp ecx, dword [edx + 0x78]
jne 0x10037360
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x6c], ecx
movzx ecx, word [edx + ecx*2]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
xor edx, edx
mov dl, byte [ecx + ebp + 3]
mov dword [esp + 0x60], 1
mov byte [esp + 0x1f], 0
and edx, 0xc0
mov dword [esp + 0x58], edx
jmp 0x10037360
cmp di, 8
jne 0x10037356
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0x20]
movzx edx, word [ecx + edx*4 + 4]
cmp byte [edx + ebp + 5], 0x76
jne 0x1003732d
cmp word [esp + 0x24], 0
jle 0x10037360
mov ecx, dword [esp + 0x3c]
mov edx, dword [ecx + eax*4 - 4]
mov ecx, dword [0x1006be90]
cmp edx, dword [ecx + 0xa4]
je 0x10037360
mov eax, dword [esp + 0x24]
movsx edx, ax
lea ecx, [ebx - 2]
cmp edx, ecx
jge 0x10037344
test ax, ax
jne 0x10037754
add byte [esp + 0x1f], 2
mov dword [esp + 0x48], 0x64
jmp 0x10037754
cmp di, 1
je 0x10037785
mov edx, dword [esi + 0x34]
mov cl, byte [edx + eax]
add edx, eax
cmp cl, 3
mov dword [esp + 0x44], edx
jne 0x100373cd
mov ecx, dword [esi + 0x38]
movzx ecx, word [ecx + eax*2]
lea edx, [ecx + ecx*2]
mov ecx, dword [esi + 4]
movzx edx, word [ecx + edx*4 + 4]
mov ecx, dword [esi + 0x14]
mov dl, byte [edx + ecx + 4]
and dl, 0x1c
cmp dl, 0xc
je 0x100373c9
cmp word [esp + 0x24], 0
jle 0x100373c9
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx - 1], 2
jne 0x10037785
mov edx, dword [esp + 0x14]
movzx ecx, word [edx + eax*2 - 2]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
cmp byte [ecx + ebp + 4], 0x61
je 0x10037785
mov edx, dword [esp + 0x44]
cmp di, 4
jne 0x100374b1
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + eax*4]
mov edi, dword [0x1006be90]
cmp ecx, dword [edi + 0x10]
je 0x1003783e
cmp ecx, dword [edi + 0x24]
je 0x1003783e
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
mov edi, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edi + ecx*4 + 4]
lea edi, [ecx + ebp]
cmp byte [edi + 4], 0x71
je 0x1003783e
cmp byte [edx + 1], 3
jne 0x10037443
mov edx, dword [esi + 0x38]
movzx ecx, word [edx + eax*2 + 2]
mov edx, dword [esi + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
mov edx, dword [esi + 0x14]
mov cl, byte [ecx + edx + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x10037482
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx + 1], 4
jne 0x1003783e
cmp byte [edx + 2], 3
jne 0x1003783e
mov edx, dword [esi + 0x38]
movzx eax, word [edx + eax*2 + 4]
mov ecx, dword [esi + 4]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov eax, dword [esi + 0x14]
mov cl, byte [edx + eax + 4]
and cl, 0x1c
cmp cl, 0xc
je 0x1003783e
mov dl, byte [edi + 3]
mov al, byte [esp + 0x1f]
and dl, 0xc
inc al
cmp al, 1
movzx cx, dl
mov byte [esp + 0x1f], al
mov word [esp + 0x48], cx
jbe 0x1003783e
movsx eax, word [esp + 0x24]
mov dword [esp + 0x40], eax
jmp 0x10037754
cmp di, 2
jne 0x10037649
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
mov edi, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edi + ecx*4 + 4]
mov cl, byte [ecx + ebp + 4]
cmp cl, 0x61
jne 0x100374f7
inc byte [esp + 0x1f]
mov ecx, dword [esp + 0x4c]
inc ecx
cmp ecx, 2
mov dword [esp + 0x4c], ecx
je 0x1003786f
mov dword [esp + 0x70], eax
jmp 0x1003783e
cmp cl, 0x73
jne 0x1003783e
mov ecx, ebx
sub ecx, eax
cmp ecx, 3
jle 0x10037521
cmp ecx, 4
jne 0x1003783e
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx + 2], 7
jne 0x1003783e
cmp byte [edx + 1], 3
jne 0x1003754d
mov edi, dword [esi + 0x38]
movzx ecx, word [edi + eax*2 + 2]
mov edx, dword [esi + 4]
lea ecx, [ecx + ecx*2]
movzx edx, word [edx + ecx*4 + 4]
mov ecx, dword [esi + 0x14]
mov dl, byte [edx + ecx + 4]
and dl, 0x1c
cmp dl, 0xc
jne 0x1003757d
mov edx, dword [esp + 0x44]
cmp byte [edx + 2], 3
jne 0x1003783e
mov edi, dword [esi + 0x38]
movzx ecx, word [edi + eax*2 + 4]
mov edx, dword [esi + 4]
lea ecx, [ecx + ecx*2]
movzx edx, word [edx + ecx*4 + 4]
mov ecx, dword [esi + 0x14]
mov dl, byte [edx + ecx + 4]
and dl, 0x1c
cmp dl, 0xc
je 0x1003783e
mov edx, dword [esp + 0x44]
cmp byte [edx + 1], 3
jne 0x100375ad
movzx ecx, word [edi + eax*2 + 2]
lea edx, [ecx + ecx*2]
mov ecx, dword [esi + 4]
movzx edx, word [ecx + edx*4 + 4]
mov ecx, dword [esi + 0x14]
mov dl, byte [edx + ecx + 4]
and dl, 0x1c
cmp dl, 0xc
je 0x100375ad
mov edx, dword [esp + 0x64]
dec edx
jmp 0x100375b1
mov edx, dword [esp + 0x64]
cmp word [esp + 0x24], 0
mov dword [esp + 0x48], edx
jle 0x10037844
mov edx, dword [esp + 0x44]
cmp byte [edx - 1], 3
jne 0x100375e7
movzx eax, word [edi + eax*2 - 2]
lea edx, [eax + eax*2]
mov eax, dword [esi + 4]
movzx eax, word [eax + edx*4 + 4]
mov cl, byte [eax + ecx + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x10037610
movsx edx, word [esp + 0x48]
mov eax, dword [esp + 0x14]
movzx eax, word [eax + edx*2]
mov edx, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov cl, byte [eax + ebp + 3]
and cl, 0xc
cmp cl, 4
jne 0x1003783e
movsx ecx, word [esp + 0x48]
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ecx*2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx edx, word [eax + edx*4 + 4]
mov al, byte [edx + ebp + 3]
and al, 0xc
cmp al, 4
mov byte [esp + 0x1f], 2
jne 0x1003789b
mov dword [esp + 0x48], 4
jmp 0x10037754
cmp di, 6
jne 0x10037673
mov edx, dword [esp + 0x14]
movzx eax, word [edx + eax*2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
cmp byte [edx + ebp + 3], 0x63
jne 0x10037754
jmp 0x1003783e
cmp di, 7
je 0x10037754
cmp di, 5
jne 0x1003783e
cmp byte [esp + 0x1f], 1
jne 0x100376ee
movsx eax, word [esp + 0x24]
mov ecx, dword [esi + 0x34]
lea edi, [ecx + eax]
cmp byte [edi + 1], 3
jne 0x100376c1
mov edx, dword [esi + 0x38]
movzx ecx, word [edx + eax*2 + 2]
mov edx, dword [esi + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
mov edx, dword [esi + 0x14]
mov cl, byte [ecx + edx + 4]
and cl, 0x1c
cmp cl, 0xc
jne 0x100376e9
cmp byte [edi + 2], 3
jne 0x100376ee
mov edx, dword [esi + 0x38]
movzx eax, word [edx + eax*2 + 4]
mov ecx, dword [esi + 4]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov eax, dword [esi + 0x14]
mov cl, byte [edx + eax + 4]
and cl, 0x1c
cmp cl, 0xc
je 0x100376ee
mov byte [esp + 0x1f], 2
movsx edx, word [esp + 0x24]
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax + edx*4]
mov eax, dword [0x1006be90]
cmp ecx, dword [eax + 0x108]
jne 0x10037754
mov ecx, dword [esp + 0x10]
cmp byte [edx + ecx + 1], 1
jne 0x10037754
mov eax, ecx
mov ecx, dword [esp + 0x5c]
cmp byte [ecx + eax], 3
jne 0x10037754
mov eax, dword [esi + 0x38]
movzx edx, word [eax + edx*2 + 2]
mov ecx, dword [esi + 4]
lea edx, [edx + edx*2]
mov edx, dword [ecx + edx*4 + 8]
cmp byte [edx], 0x75
je 0x10037754
mov edx, dword [esp + 0x5c]
movzx eax, word [eax + edx*2]
mov edx, dword [esi + 0x14]
lea eax, [eax + eax*2]
movzx ecx, word [ecx + eax*4 + 4]
test byte [ecx + edx + 4], 0x20
je 0x10037754
mov byte [esp + 0x1f], 0
cmp word [esp + 0x60], 1
jne 0x100378e6
cmp byte [esp + 0x1f], 2
jae 0x100378b9
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x60], 0
mov byte [esp + 0x1f], 2
mov dword [esp + 0x40], eax
jmp 0x100378e6
lea ecx, [ebx - 1]
cmp eax, ecx
jne 0x100377c1
cmp word [esp + 0x18], 1
jbe 0x100377c1
cmp di, 3
jne 0x100377c1
mov ecx, dword [esp + 0x3c]
mov edx, dword [0x1006be90]
mov ecx, dword [ecx + ebx*4 - 8]
cmp ecx, dword [edx + 0x10]
je 0x100377b2
cmp ecx, dword [edx + 0x24]
jne 0x100377c1
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx + 1], 5
jne 0x1003783e
mov dl, byte [esp + 0x1f]
inc dl
cmp word [esp + 0x48], 0
mov byte [esp + 0x1f], dl
je 0x100377db
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x14]
movzx ecx, word [edx + eax*2]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
mov dl, byte [ecx + ebp + 3]
and dl, 0xc
cmp word [esp + 0x24], 0
movzx cx, dl
mov word [esp + 0x48], cx
mov dword [esp + 0x40], eax
jle 0x10037844
mov edx, dword [esp + 0x10]
cmp byte [eax + edx - 1], 4
jne 0x1003783e
mov ecx, edx
cmp byte [eax + ecx + 1], 4
jne 0x1003783e
mov ecx, dword [esp + 0x24]
cmp cx, 1
jle 0x10037838
mov edx, dword [esp + 0x38]
cmp byte [eax + edx - 1], 0
jne 0x1003783a
cmp cx, 1
jne 0x1003783e
inc byte [esp + 0x1f]
cmp word [esp + 0x24], 0
je 0x10037754
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x64]
dec eax
mov dword [esp + 0x24], eax
movsx eax, ax
dec edi
lea ecx, [ebx - 6]
cmp eax, ecx
mov dword [esp + 0x64], edi
jge 0x10037270
jmp 0x10037754
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x70]
movzx eax, word [edx + ecx*2]
lea eax, [eax + eax*2]
movzx edx, word [edi + eax*4 + 4]
mov al, byte [edx + ebp + 3]
and al, 0xc
movzx dx, al
mov word [esp + 0x48], dx
mov dword [esp + 0x40], ecx
jmp 0x10037754
mov edx, dword [esp + 0x10]
cmp byte [ecx + edx - 1], 1
je 0x10037754
movsx eax, word [esp + 0x24]
dec eax
mov dword [esp + 0x40], eax
jmp 0x10037754
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x40]
movzx eax, word [ecx + edx*2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov ecx, dword [esp + 0x58]
xor eax, eax
mov al, byte [edx + ebp + 3]
and eax, 0xc0
add ecx, eax
mov dword [esp + 0x58], ecx
cmp byte [esp + 0x2b], 1
jne 0x10037e77
cmp byte [esp + 0x1f], 1
jbe 0x10037e77
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0x30]
cmp byte [ecx], 7
mov dword [esp + 0x44], 1
je 0x10037936
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov al, byte [edx + ebp + 3]
cmp al, 0x88
je 0x10037936
test al, al
jne 0x10037a47
movsx eax, di
mov ecx, ebx
sub ecx, eax
cmp ecx, 2
je 0x1003797a
cmp word [esp + 0x18], 1
jbe 0x100379fd
mov edx, dword [esi + 0x34]
cmp byte [edx + ebx - 2], 3
jne 0x100379a7
mov eax, dword [esi + 0x38]
movzx eax, word [eax + ebx*2 - 4]
mov edx, dword [esi + 4]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov ecx, dword [esi + 0x14]
mov dl, byte [eax + ecx + 4]
and dl, 0x1c
cmp dl, 0xc
je 0x100379a7
mov ecx, dword [esp + 0x3c]
mov edx, dword [ecx + ebx*4 - 4]
mov ecx, dword [0x1006be90]
mov eax, 9
lea ecx, [ecx]
cmp edx, dword [ecx + eax*4]
je 0x1003799d
inc eax
cmp eax, 0xc
jle 0x10037990
jmp 0x100379ad
mov dword [esp + 0x44], 0
jmp 0x100379ad
mov ecx, dword [0x1006be90]
cmp word [esp + 0x18], 1
jbe 0x10037a03
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], 2
jne 0x10037a03
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 4]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx edx, word [eax + edx*4 + 4]
cmp byte [edx + ebp + 4], 0x73
jne 0x10037a03
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + ebx*4 - 4]
cmp eax, dword [ecx + 0x34]
je 0x100379f3
cmp eax, dword [ecx + 0x24]
je 0x100379f3
cmp eax, dword [ecx + 0x10]
jne 0x10037a03
mov dword [esp + 0x44], 0
jmp 0x10037a03
mov ecx, dword [0x1006be90]
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + ebx*4 - 4]
cmp eax, dword [ecx + 0x48]
je 0x10037e77
cmp word [esp + 0x18], 2
jbe 0x10037a3b
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 2
jne 0x10037a3b
mov al, byte [ebx + eax - 3]
cmp al, 4
je 0x10037e77
cmp al, 5
je 0x10037e77
cmp word [esp + 0x44], 1
jne 0x10037e77
movzx ecx, word [esi + 0x26]
lea eax, [ebx + 1]
cmp eax, ecx
mov dword [esp + 0x24], 0
jg 0x10037b21
mov edi, edi
mov ecx, dword [esp + 0x10]
mov dl, byte [eax + ecx]
cmp dl, 5
je 0x10037b21
cmp dl, 7
je 0x10037a9c
cmp dl, 8
jne 0x10037aa7
mov ecx, dword [esp + 0x14]
movzx ecx, word [ecx + eax*2]
mov edi, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edi + ecx*4 + 4]
mov cl, byte [ecx + ebp + 5]
cmp cl, 0x74
je 0x10037a9c
cmp cl, 0x70
jne 0x10037aa7
mov ecx, dword [esp + 0x10]
cmp byte [eax + ecx + 1], 5
je 0x10037b0c
mov ecx, dword [esi + 0x34]
cmp byte [eax + ecx], 4
jne 0x10037ad3
lea ecx, [ebx + 1]
cmp eax, ecx
jne 0x10037ad3
mov ecx, dword [esi + 0x38]
movzx ecx, word [ecx + eax*2]
mov edi, dword [esi + 4]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edi + ecx*4 + 4]
mov edi, dword [esi + 0x14]
cmp byte [ecx + edi + 4], 0x71
je 0x10037b19
mov ecx, dword [esi + 0x3c]
cmp byte [eax + ecx], 0
jne 0x10037b0c
cmp dl, 2
je 0x10037b0c
cmp dl, 6
je 0x10037b0c
cmp dl, 4
jne 0x10037afd
lea ecx, [ebx + 1]
cmp eax, ecx
jne 0x10037afd
mov edx, dword [esp + 0x10]
cmp byte [eax + edx + 1], 5
je 0x10037b0c
movzx ecx, word [esi + 0x26]
inc eax
cmp eax, ecx
jle 0x10037a60
jmp 0x10037b21
mov dword [esp + 0x24], 1
jmp 0x10037c2a
mov dword [esp + 0x44], 0
lea ecx, [ebx + 1]
cmp eax, ecx
jle 0x10037c2a
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x40]
movzx ecx, word [edx + ecx*2]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
cmp byte [ecx + ebp + 7], 0x43
jne 0x10037b7b
movzx edi, word [esi + 0x26]
lea edx, [eax + 1]
movsx ecx, dx
cmp ecx, edi
jg 0x10037b7b
lea esp, [esp]
mov edi, dword [esp + 0x10]
cmp byte [ecx + edi], 5
je 0x10037b78
movzx edi, word [esi + 0x26]
inc edx
movsx ecx, dx
cmp ecx, edi
jle 0x10037b60
jmp 0x10037b7b
movsx eax, dx
mov edx, dword [esp + 0x14]
movzx ecx, word [edx + eax*2]
mov edx, dword [esp + 0x20]
lea ecx, [ecx + ecx*2]
movzx ecx, word [edx + ecx*4 + 4]
mov cl, byte [ecx + ebp + 6]
mov dl, cl
and dl, 0x81
movzx dx, dl
cmp dx, 0x80
mov dword [esp + 0x24], edx
jne 0x10037bb3
and cl, 6
cmp cl, 6
jne 0x10037e77
mov edx, dword [esp + 0x10]
inc eax
movzx ecx, ax
cmp byte [ecx + edx], 7
mov dword [esp + 0x24], 1
jne 0x10037bca
inc eax
mov edi, dword [esp + 0x38]
movzx ecx, ax
cmp byte [ecx + edi], 0
je 0x10037bdf
mov dword [esp + 0x24], 2
cmp byte [ecx + edx], 2
jne 0x10037c04
mov edi, dword [esp + 0x38]
inc eax
movzx ecx, ax
cmp byte [ecx + edi], 0
je 0x10037bf7
inc dword [esp + 0x24]
mov cl, byte [ecx + edx]
cmp cl, 3
je 0x10037be5
cmp cl, 4
jmp 0x10037be3
movzx eax, ax
mov al, byte [eax + edx]
cmp al, 1
je 0x10037c1a
cmp al, 8
je 0x10037c1a
cmp al, 4
je 0x10037c1a
cmp al, 3
jne 0x10037c1e
dec dword [esp + 0x24]
cmp word [esp + 0x24], 0
je 0x10037e77
cmp word [esp + 0x44], 1
jne 0x10037e77
mov ecx, dword [esp + 0x10]
mov byte [ebx + ecx], 8
movzx edx, word [esi + 0xe4]
mov byte [edx + ebp], 1
movzx eax, word [esi + 0xe4]
mov byte [eax + ebp + 1], 8
movzx ecx, word [esi + 0xe4]
mov eax, dword [esp + 0x48]
cmp ax, 0x64
mov byte [ecx + ebp + 2], 0
movzx edx, word [esi + 0xe4]
mov byte [edx + ebp + 6], 0x6e
jne 0x10037cc9
mov eax, dword [esp + 0x30]
cmp byte [eax], 8
jne 0x10037d63
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 - 2]
mov edi, dword [esp + 0x20]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
movzx edx, word [esi + 0xe4]
mov al, byte [eax + ebp + 4]
mov byte [edx + ebp + 4], al
movzx eax, word [ecx + ebx*2 - 2]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
movzx edx, word [esi + 0xe4]
mov al, byte [eax + ebp + 3]
mov byte [edx + ebp + 3], al
jmp 0x10037dbe
test ax, ax
jne 0x10037d63
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 - 2]
mov edi, dword [esp + 0x20]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
mov dl, byte [eax + ebp + 3]
mov al, dl
and al, 0xc
movzx ax, al
test ax, ax
mov byte [esp + 0x2b], dl
jne 0x10037d52
mov edx, dword [esp + 0x30]
cmp byte [edx], 3
jne 0x10037d4e
mov edx, dword [esp + 0x10]
mov dl, byte [ebx + edx - 2]
cmp dl, 4
je 0x10037d17
cmp dl, 1
jne 0x10037d4e
movzx eax, word [ecx + ebx*2 - 4]
lea eax, [eax + eax*2]
movzx edx, word [edi + eax*4 + 4]
mov al, byte [edx + ebp + 3]
movzx edx, word [esi + 0xe4]
and al, 0xfc
mov byte [edx + ebp + 3], al
movzx eax, word [ecx + ebx*2 - 4]
lea eax, [eax + eax*2]
movzx edx, word [edi + eax*4 + 4]
mov al, byte [edx + ebp + 3]
and al, 0xc
movzx ax, al
jmp 0x10037d9e
mov dl, byte [esp + 0x2b]
movzx ecx, word [esi + 0xe4]
mov byte [ecx + ebp + 3], dl
mov ecx, dword [esp + 0x14]
jmp 0x10037d9e
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + edx*2]
mov edi, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [edi + eax*4 + 4]
mov al, byte [edx + ebp + 3]
movzx edx, word [esi + 0xe4]
and al, 0xfc
mov byte [edx + ebp + 3], al
movzx eax, word [esi + 0xe4]
mov dl, byte [eax + ebp + 3]
and dl, 0xc
movzx ax, dl
cmp ax, 4
jne 0x10037db2
movzx eax, word [esi + 0xe4]
mov byte [eax + ebp + 4], 0x36
jmp 0x10037dbe
movzx edx, word [esi + 0xe4]
mov byte [edx + ebp + 4], 0x33
cmp word [esp + 0x60], 1
jne 0x10037e54
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
inc eax
mov dword [esp + 0x24], eax
movsx eax, ax
cmp byte [eax + edx], 7
jne 0x10037de4
inc dword [esp + 0x24]
movsx eax, word [esp + 0x24]
cmp byte [eax + edx], 5
jne 0x10037e06
movzx eax, word [ecx + eax*2]
lea ecx, [eax + eax*2]
movzx edx, word [edi + ecx*4 + 4]
movzx ax, byte [edx + ebp + 3]
mov word [esp + 0x24], ax
cmp word [esp + 0x24], 0x36
jne 0x10037e54
cmp dword [esp + 0x58], 0x80
jne 0x10037e31
movzx ecx, word [esi + 0xe4]
mov dl, byte [ecx + ebp + 3]
lea eax, [ecx + ebp + 3]
and dl, 3
add dl, 0x44
mov byte [eax], dl
jmp 0x10037e48
movzx eax, word [esi + 0xe4]
mov cl, byte [eax + ebp + 3]
lea eax, [eax + ebp + 3]
and cl, 3
sub cl, 0x7c
mov byte [eax], cl
movzx edx, word [esi + 0xe4]
mov byte [edx + ebp + 4], 0x36
movzx eax, word [esi + 0xe4]
mov edx, dword [esp + 0x2c]
mov byte [eax + ebp + 5], 0x61
mov cx, word [esi + 0xe4]
mov word [edx + 4], cx
add word [esi + 0xe4], 7
mov edi, dword [esp + 0x10]
cmp byte [ebx + edi], 8
mov edx, dword [esp + 0x2c]
jne 0x10037f49
cmp byte [edx], 3
jne 0x10037f49
cmp word [esp + 0x18], 0
jbe 0x10037f49
mov ecx, dword [edx + 8]
mov cx, word [ecx]
mov eax, 0x10062898
cmp cx, word [eax]
jne 0x10037f49
mov eax, dword [esp + 0x30]
cmp byte [eax], 1
je 0x10037eec
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + 0x34]
dec eax
movzx eax, ax
cmp byte [eax + ecx], 2
jne 0x10037f49
mov ecx, dword [esi + 0x38]
movzx eax, word [ecx + eax*2]
mov ecx, dword [esi + 4]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov ecx, dword [esi + 0x14]
cmp byte [eax + ecx + 4], 0x61
jne 0x10037f49
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
lea edi, [eax + ebx*2 - 2]
movzx eax, word [edi]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
test byte [eax + ebp + 3], 8
je 0x10037f13
movzx eax, word [edx + 4]
mov byte [eax + ebp + 4], 0x33
movzx eax, word [edi]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
test byte [eax + ebp + 3], 4
je 0x10037f2e
movzx eax, word [edx + 4]
mov byte [eax + ebp + 4], 0x36
movzx eax, word [edi]
mov edi, dword [esp + 0x10]
lea eax, [eax + eax*2]
movzx ecx, word [ecx + eax*4 + 4]
movzx eax, word [edx + 4]
mov cl, byte [ecx + ebp + 3]
mov byte [eax + ebp + 3], cl
cmp byte [ebx + edi], 5
jne 0x10037f79
movzx edx, word [edx + 4]
mov cl, byte [edx + ebp + 8]
cmp cl, 0x50
lea eax, [edx + ebp]
jne 0x10037f79
cmp byte [eax + 9], 1
jne 0x10037f79
cmp byte [eax + 0xa], 0x53
jne 0x10037f79
mov eax, dword [esp + 0x18]
push eax
push esi
call fcn.1001caa0
add esp, 8
cmp byte [ebx + edi], 2
jne 0x10038141
cmp word [esp + 0x18], 0
jbe 0x10038141
mov ecx, dword [esp + 0x30]
cmp byte [ecx], 3
jne 0x10038141
mov edx, dword [esp + 0x34]
cmp byte [edx], 4
jne 0x10038141
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
lea eax, [ecx + ebp]
cmp byte [eax + 4], 0x61
jne 0x10038141
mov edx, dword [esp + 0x38]
mov cl, byte [ebx + edx + 1]
test cl, cl
jne 0x10038141
cmp byte [eax + 5], 0x64
jne 0x10038141
cmp byte [eax + 6], 0x69
jne 0x10038141
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax + 2], 3
jne 0x10038141
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 + 2]
movzx ecx, word [ecx + ebx*2 + 4]
mov edx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [edx + eax*4 + 4]
mov al, byte [eax + ebp + 3]
lea ecx, [ecx + ecx*2]
movzx edx, word [edx + ecx*4 + 4]
mov cl, byte [edx + ebp + 3]
cmp al, cl
je 0x10038141
mov dl, al
and dl, 0xc0
movzx dx, dl
mov word [esp + 0x48], dx
mov dl, cl
and dl, 0xc0
movzx dx, dl
movzx edi, dx
mov dword [esp + 0x4c], edx
movsx edx, word [esp + 0x48]
cmp edx, edi
je 0x10038050
add edi, edx
cmp edi, edx
jne 0x1003807b
and cl, 0xc
and al, 0xc
movzx cx, cl
movzx ax, al
movzx eax, ax
movsx edx, cx
cmp eax, edx
mov dword [esp + 0x24], ecx
je 0x10038141
add edx, eax
cmp edx, eax
je 0x10038141
jmp 0x1003807f
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 2]
mov edi, dword [esp + 0x20]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
mov al, byte [eax + ebp + 3]
xor edx, edx
mov dl, al
and edx, 0xc
cmp cx, dx
jne 0x10038141
and al, 0xc0
movzx ax, al
cmp word [esp + 0x4c], ax
jne 0x10038141
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + 2]
mov ecx, dword [esi + 0x10]
lea edx, [eax + eax*2]
mov ax, word [edi + edx*4 + 2]
add ax, 3
movzx eax, ax
mov cl, byte [eax + ecx]
mov al, cl
and al, 0xe0
cmp al, 0x80
je 0x100380e7
cmp al, 0xc0
jne 0x10038141
test cl, 2
je 0x10038141
mov edx, dword [esp + 0x18]
inc edx
push edx
push esi
call fcn.1002f2e0
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
mov byte [ebx + eax + 2], 4
movzx eax, word [ecx + ebx*2 + 4]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
mov byte [eax + ebp + 1], 4
movzx eax, word [ecx + ebx*2 + 4]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
mov dl, byte [eax + ebp + 2]
lea eax, [eax + ebp + 2]
add esp, 8
and dl, 0xf7
mov byte [eax], dl
movzx eax, word [ecx + ebx*2 + 4]
lea ecx, [eax + eax*2]
movzx edx, word [edi + ecx*4 + 4]
mov byte [edx + ebp + 4], 0x71
mov edx, dword [esp + 0x18]
cmp dx, 2
jbe 0x1003820d
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax], 3
jne 0x1003820d
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + ebx*4 - 4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0x1c]
jne 0x1003820d
mov eax, dword [esp + 0x30]
cmp byte [eax - 1], 4
jne 0x1003820d
mov eax, dword [esp + 0x3c]
mov eax, dword [eax + ebx*4 - 0xc]
cmp eax, dword [ecx + 0x10]
je 0x10038197
cmp eax, dword [ecx + 0x24]
jne 0x1003820d
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2]
mov edi, dword [esp + 0x20]
lea edx, [eax + eax*2]
mov ax, word [edi + edx*4 + 2]
mov edx, dword [esi + 0x10]
add ax, 3
movzx eax, ax
mov al, byte [eax + edx]
mov dl, al
and dl, 0xe0
cmp dl, 0xc0
jne 0x10038209
test al, 2
je 0x10038209
mov eax, dword [esp + 0x10]
mov byte [ebx + eax], 4
movzx eax, word [ecx + ebx*2]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
mov byte [eax + ebp + 1], 4
movzx eax, word [ecx + ebx*2]
lea edx, [eax + eax*2]
movzx eax, word [edi + edx*4 + 4]
mov dl, byte [eax + ebp + 2]
lea eax, [eax + ebp + 2]
and dl, 0xf7
mov byte [eax], dl
movzx eax, word [ecx + ebx*2]
lea ecx, [eax + eax*2]
movzx edx, word [edi + ecx*4 + 4]
mov byte [edx + ebp + 4], 0x71
mov edx, dword [esp + 0x18]
test dx, dx
jbe 0x10038304
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 8
jne 0x10038304
mov eax, dword [esp + 0x30]
cmp byte [eax], 1
je 0x10038260
mov edi, dword [esi + 0x34]
lea eax, [edx - 1]
movzx eax, ax
cmp byte [eax + edi], 2
jne 0x10038304
mov edi, dword [esi + 0x38]
movzx eax, word [edi + eax*2]
mov edi, dword [esi + 4]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
mov edi, dword [esi + 0x14]
cmp byte [eax + edi + 4], 0x61
jne 0x10038304
mov eax, dword [esp + 0x34]
cmp byte [eax], 4
jne 0x10038304
cmp byte [ebx + ecx + 2], 3
jne 0x10038304
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 8]
cmp byte [eax], 0x63
je 0x10038304
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x2c]
mov byte [ebx + ecx], 4
movzx eax, word [edx + 4]
mov ecx, dword [esp + 0x14]
mov byte [eax + ebp + 1], 4
xor eax, eax
mov ax, word [ecx + ebx*2]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x24], eax
movsx eax, ax
lea eax, [eax + eax*2]
mov esi, dword [ecx + eax*4 + 8]
lea ecx, [ecx + eax*4]
movzx eax, byte [ecx]
movzx eax, byte [eax + esi - 1]
push eax
call fcn.1001cde0
movzx esi, word [edx + 4]
mov byte [esi + ebp + 3], al
mov esi, dword [ecx + 8]
add esp, 4
mov edi, 0x10062468
mov ecx, 5
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x100382f0
movzx ecx, word [edx + 4]
mov byte [ecx + ebp + 3], al
movzx edx, word [edx + 4]
mov esi, dword [esp + 0x79c]
mov byte [edx + ebp + 4], 0x70
mov edx, dword [esp + 0x18]
test dx, dx
mov byte [esp + 0x50], 0xff
jbe 0x10038377
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 8]
cmp byte [ecx], 0x71
jne 0x10038377
cmp byte [eax], 5
jne 0x10038377
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax], 4
jne 0x10038377
mov eax, dword [esp + 0x30]
cmp byte [eax], 1
je 0x1003835d
mov edi, dword [esi + 0x34]
lea eax, [edx - 1]
movzx eax, ax
cmp byte [eax + edi], 2
jne 0x10038377
mov edi, dword [esi + 0x38]
movzx eax, word [edi + eax*2]
mov edi, dword [esi + 4]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
mov edi, dword [esi + 0x14]
cmp byte [eax + edi + 4], 0x61
jne 0x10038377
mov ecx, dword [ecx]
mov eax, str.qual
cmp ecx, dword [eax]
jne 0x10038377
push 0xff
push edx
push esi
call fcn.1001c0b0
add esp, 0xc
mov edx, dword [esp + 0x34]
mov cl, byte [edx]
cmp cl, 3
mov byte [esp + 0x1f], cl
je 0x10038533
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax], 4
jne 0x10038a13
mov edx, dword [esp + 0x2c]
movzx eax, word [edx + 4]
mov dl, byte [eax + ebp + 2]
add eax, ebp
cmp dl, 0x80
jae 0x10038533
mov al, byte [eax + 4]
cmp al, 0x71
mov byte [esp + 0x2b], al
je 0x10038533
cmp al, 0x61
je 0x10038533
mov eax, dword [esp + 0x18]
test ax, ax
jbe 0x10038533
cmp cl, 6
je 0x10038533
mov ecx, dword [esp + 0x30]
mov cl, byte [ecx]
cmp cl, 1
mov byte [esp + 0x2a], cl
je 0x1003843f
mov edx, dword [esi + 0x34]
dec eax
movzx eax, ax
cmp byte [eax + edx], 2
jne 0x10038414
mov edx, dword [esi + 0x38]
movzx eax, word [edx + eax*2]
mov edx, dword [esi + 4]
lea eax, [eax + eax*2]
movzx eax, word [edx + eax*4 + 4]
mov edx, dword [esi + 0x14]
cmp byte [eax + edx + 4], 0x61
je 0x1003843f
cmp cl, 7
jne 0x10038533
mov edi, dword [esp + 0x14]
movzx eax, word [edi + ebx*2 - 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
cmp byte [edx + ebp + 3], 0x71
je 0x10038533
jmp 0x10038447
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x14]
mov al, byte [esp + 0x1f]
xor edx, edx
cmp al, 5
mov byte [esp + 0x50], dl
jne 0x10038469
movzx eax, word [edi + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
cmp byte [eax + ebp + 8], 0x46
jne 0x10038494
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax + 2], 5
jne 0x10038499
cmp byte [esp + 0x1f], 8
jne 0x10038499
movzx eax, word [edi + ebx*2 + 2]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov al, byte [eax + ebp + 5]
cmp al, 0x70
je 0x10038494
cmp al, 0x74
jne 0x10038499
mov edx, 1
mov eax, dword [esp + 0x38]
mov al, byte [ebx + eax]
cmp al, 0x3a
je 0x100384d7
cmp al, 0x3b
je 0x100384d7
cmp al, 0x2c
je 0x100384d7
mov ax, word [esp + 0x18]
cmp ax, word [esi + 0x26]
je 0x100384d7
mov cl, byte [esp + 0x2b]
cmp cl, 0x70
je 0x100384c5
cmp cl, 0x6e
jne 0x10038533
test edx, edx
je 0x10038533
mov al, byte [esp + 0x2a]
cmp al, 1
je 0x1003850e
cmp al, 2
jne 0x10038533
jmp 0x1003850e
cmp byte [esp + 0x2a], 7
jne 0x1003850a
cmp word [esp + 0x18], 1
jbe 0x1003850a
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx - 2], 5
jne 0x1003850a
movzx eax, word [edi + ebx*2 - 4]
lea eax, [eax + eax*2]
movzx ecx, word [ecx + eax*4 + 4]
mov dl, byte [ecx + ebp + 6]
and dl, 6
cmp dl, 6
je 0x10038533
mov cl, byte [esp + 0x2b]
cmp cl, 0x63
je 0x10038525
mov eax, dword [esp + 0x18]
push 0
push eax
push esi
call fcn.1001c0b0
add esp, 0xc
jmp 0x10038533
mov ecx, dword [esp + 0x18]
push ecx
push esi
call fcn.1002f2e0
add esp, 8
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 4
jne 0x10038a13
mov eax, dword [esp + 0x2c]
movzx ecx, word [eax + 4]
mov al, byte [ecx + ebp + 2]
cmp al, 0x80
lea edi, [ecx + ebp]
jae 0x10038808
cmp byte [edi + 4], 0x6e
jne 0x10038808
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + ebx*4]
mov ecx, dword [0x1006be90]
cmp eax, dword [ecx + 0xf4]
je 0x10038808
mov edx, ecx
cmp eax, dword [edx + 0x10]
je 0x10038679
mov ecx, edx
cmp eax, dword [ecx + 0x24]
je 0x10038679
lea ecx, [ebx - 1]
test ecx, ecx
jl 0x10038679
lea esp, [esp]
mov edx, dword [esp + 0x10]
mov al, byte [ecx + edx]
cmp al, 5
je 0x100385bf
cmp al, 2
je 0x100385b7
cmp al, 7
jne 0x10038679
dec ecx
jns 0x100385a0
jmp 0x10038679
mov al, byte [edi + 3]
and al, 0xfc
cmp al, 0x88
jne 0x10038604
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax - 1], 0x2c
jne 0x100385dc
mov eax, dword [esp + 0x34]
cmp byte [eax], 3
jne 0x100385ea
mov eax, dword [esp + 0x34]
mov al, byte [eax]
cmp al, 4
je 0x100385ea
cmp al, 7
jne 0x10038604
mov ecx, dword [esp + 0x2c]
mov byte [edi + 1], 7
mov byte [ebx + edx], 7
movzx edx, word [ecx + 4]
mov byte [edx + ebp + 3], 0x71
jmp 0x10038679
mov eax, dword [esp + 0x34]
mov dl, byte [eax]
cmp dl, 3
je 0x10038679
cmp dl, 4
je 0x10038679
cmp dl, 8
je 0x10038679
mov edi, dword [esp + 0x14]
movzx eax, word [edi + ecx*2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov al, byte [eax + ebp + 6]
and al, 6
cmp al, 6
je 0x10038679
mov eax, dword [esp + 0x30]
cmp byte [eax], 2
jne 0x10038654
movzx eax, word [edi + ebx*2 - 2]
lea eax, [eax + eax*2]
movzx ecx, word [ecx + eax*4 + 4]
cmp byte [ecx + ebp + 4], 0x73
je 0x10038664
cmp dl, 2
jne 0x10038679
movzx edx, word [edi + ebx*2 + 2]
mov dword [esp + 0x4c], edx
jmp 0x10038679
mov eax, dword [esp + 0x18]
push 0
push eax
push esi
mov byte [esp + 0x5c], 0
call fcn.1001c0b0
add esp, 0xc
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx], 4
jne 0x10038a13
mov edi, dword [esp + 0x18]
test di, di
jbe 0x10038808
mov edx, dword [esp + 0x30]
cmp byte [edx], 2
mov edx, dword [esp + 0x14]
jne 0x100386d8
mov eax, dword [esp + 0x34]
cmp byte [eax], 4
jne 0x100386d8
movzx eax, word [edx + ebx*2 + 2]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx ecx, word [eax + ecx*4 + 4]
cmp byte [ecx + ebp + 4], 0x69
jne 0x100386d8
push 0
push edi
push esi
mov byte [esp + 0x5c], 0
call fcn.1001c0b0
add esp, 0xc
jmp 0x1003880c
mov eax, dword [esp + 0x30]
cmp byte [eax], 3
je 0x10038702
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 8
jne 0x10038702
movzx eax, word [edx + ebx*2 + 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
cmp byte [eax + ebp + 5], 0x74
je 0x100386c2
cmp di, 1
jbe 0x10038756
mov ecx, dword [esp + 0x30]
cmp byte [ecx], 6
jne 0x10038756
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 4
je 0x10038756
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 8
jne 0x10038756
movzx eax, word [edx + ebx*2 + 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [ecx + eax*4 + 4]
mov al, byte [eax + ebp + 5]
cmp al, 0x70
je 0x10038742
cmp al, 0x74
jne 0x10038756
mov ecx, dword [esp + 0x50]
push ecx
push edi
push esi
call fcn.1001c0b0
add esp, 0xc
jmp 0x1003880c
mov eax, dword [esp + 0x30]
cmp byte [eax], 3
jne 0x10038958
mov ecx, dword [esp + 0x34]
mov cl, byte [ecx]
cmp cl, 4
je 0x10038932
mov eax, dword [esp + 0x38]
cmp byte [ebx + eax], 0
jne 0x10038932
cmp cl, 3
je 0x10038932
cmp di, 1
jbe 0x1003879a
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 2], 1
jne 0x100387b9
movzx eax, word [edx + ebx*2 - 2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx edx, word [eax + edx*4 + 4]
mov al, byte [edx + ebp + 4]
and al, 0x1c
cmp al, 0xc
jne 0x1003892e
mov edx, dword [esp + 0x3c]
mov eax, dword [edx + ebx*4]
mov edx, dword [0x1006be90]
cmp eax, dword [edx + 0xf4]
jne 0x100386c2
cmp cl, 1
jne 0x100386c2
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
mov edx, dword [esp + 0x20]
lea ecx, [eax + eax*2]
movzx eax, word [edx + ecx*4 + 4]
mov ecx, dword [esp + 0x2c]
movzx edx, word [ecx + 4]
mov al, byte [eax + ebp + 3]
xor al, byte [edx + ebp + 3]
test al, 0xfd
jne 0x100386c2
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax], 4
jne 0x10038a13
mov ecx, dword [esp + 0x2c]
movzx edx, word [ecx + 4]
cmp byte [edx + ebp + 4], 0x69
jne 0x10038856
test di, di
jbe 0x10038856
mov eax, dword [esp + 0x38]
mov al, byte [ebx + eax - 1]
cmp al, 0x2c
je 0x1003883e
cmp al, 0x3b
jne 0x10038856
mov ecx, dword [esp + 0x34]
cmp byte [ecx], 6
jne 0x10038856
mov edx, dword [esp + 0x50]
push edx
push edi
push esi
call fcn.1001c0b0
add esp, 0xc
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax], 4
jne 0x10038a13
test di, di
jbe 0x10038a13
mov ecx, dword [esp + 0x2c]
movzx edx, word [ecx + 4]
cmp byte [edx + ebp + 4], 0x69
jne 0x10038a13
mov eax, ecx
mov ecx, dword [eax + 8]
mov dl, byte [ecx]
cmp dl, 0x73
je 0x10038a13
mov eax, dword [esp + 0x30]
mov cl, byte [eax]
cmp cl, 3
je 0x100388a0
cmp cl, 8
jne 0x100388c1
mov eax, dword [esp + 0x34]
mov al, byte [eax]
cmp al, 3
je 0x100388c1
cmp al, 4
jne 0x100389c8
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax + 2], 3
jne 0x100389c8
cmp cl, 6
jne 0x100388dc
mov eax, dword [esp + 0x34]
mov al, byte [eax]
cmp al, 2
je 0x100389c8
cmp al, 5
je 0x100389c8
mov eax, dword [esp + 0x34]
cmp byte [eax], 8
jne 0x10038912
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
mov edi, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx eax, word [edi + eax*4 + 4]
mov al, byte [eax + ebp + 5]
cmp al, 0x74
je 0x100389c4
cmp al, 0x70
je 0x100389c4
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x38]
mov al, byte [ebx + eax]
test al, al
je 0x10038a13
cmp al, 0x22
je 0x10038a13
jmp 0x100389c8
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 - 2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx edx, word [eax + edx*4 + 4]
test byte [edx + ebp + 2], 1
je 0x10038958
cmp cl, 3
je 0x10038958
cmp cl, 8
jne 0x100386c2
mov eax, dword [esp + 0x30]
cmp byte [eax], 1
je 0x10038994
mov ecx, dword [esi + 0x34]
lea eax, [edi - 1]
movzx eax, ax
cmp byte [eax + ecx], 2
jne 0x10038808
mov edx, dword [esi + 0x38]
movzx eax, word [edx + eax*2]
mov ecx, dword [esi + 4]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov eax, dword [esi + 0x14]
cmp byte [edx + eax + 4], 0x61
jne 0x10038808
mov ecx, dword [esi + 0x3c]
mov al, byte [ebx + ecx]
cmp al, 0x2c
je 0x100389b3
cmp al, 0x3b
je 0x100389b3
cmp al, 0x3a
je 0x100389b3
mov edx, dword [esp + 0x34]
cmp byte [edx], 1
jne 0x10038808
push 0
push edi
push esi
call fcn.1001c0b0
add esp, 0xc
jmp 0x1003880c
mov edi, dword [esp + 0x18]
cmp cl, 8
jne 0x10038a07
mov ecx, dword [esp + 0x38]
mov al, byte [ebx + ecx - 1]
test al, al
jne 0x10038a07
cmp dl, 0x6d
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 - 2]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx ecx, word [eax + ecx*4 + 4]
movzx eax, byte [ecx + ebp + 5]
jne 0x10038a07
cmp eax, 0x73
je 0x10038a13
cmp eax, 0x75
je 0x10038a13
cmp eax, 0x76
je 0x10038a13
push 0
push edi
push esi
call fcn.1001c0b0
add esp, 0xc
mov edx, dword [esp + 0x10]
cmp byte [ebx + edx], 6
jne 0x10038baf
mov eax, dword [0x1006be90]
mov ecx, dword [esp + 0x3c]
mov eax, dword [eax + 0x54]
cmp dword [ecx + ebx*4], eax
jne 0x10038baf
mov edx, dword [esp + 0x34]
mov cl, byte [edx]
cmp cl, 4
mov byte [esp + 0x1f], cl
je 0x10038a4e
cmp cl, 8
jne 0x10038be0
mov eax, dword [esp + 0x14]
movzx eax, word [eax + ebx*2 + 2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
lea eax, [eax + edx*4]
cmp byte [eax], 6
jne 0x10038aab
mov esi, dword [eax + 8]
mov ecx, 5
mov edi, str.stess
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x10038aa7
mov ecx, dword [eax + 8]
mov cl, byte [ecx + 5]
cmp cl, 0x61
je 0x10038c77
cmp cl, 0x6f
je 0x10038c77
mov ecx, dword [esp + 0x79c]
movzx edx, word [ecx + 0x26]
sub edx, ebx
cmp edx, 3
jle 0x10038c77
mov cl, byte [esp + 0x1f]
cmp cl, 8
jne 0x10038bd9
movzx eax, word [eax + 4]
cmp byte [eax + ebp + 5], 0x74
jne 0x10038bd9
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx + 2], 5
jne 0x10038ba8
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 4]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
lea ecx, [ecx + eax*4]
movzx ax, byte [edx + ebp + 3]
add edx, ebp
cmp ax, 0x33
je 0x10038b25
cmp ax, 0x36
je 0x10038b25
cmp ax, 0x37
je 0x10038b25
cmp ax, 0x31
jne 0x10038ba8
mov esi, dword [ecx + 8]
mov edi, str.sono
mov ecx, 5
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x10038ba8
cmp byte [edx + 8], 0x43
jne 0x10038b72
cmp byte [edx + 9], 4
jne 0x10038b72
lea edi, [ebx - 1]
test edi, edi
jl 0x10038ba8
mov esi, dword [esp + 0x79c]
nop
mov ecx, dword [esp + 0x10]
cmp byte [edi + ecx], 6
je 0x10038b5d
push edi
push esi
call fcn.1001cd70
add esp, 8
test al, al
jne 0x10038baf
dec edi
jns 0x10038b40
jmp 0x10038baf
mov edx, dword [0x1006be90]
mov eax, dword [edx + 0x54]
mov ecx, dword [esp + 0x3c]
cmp dword [ecx + edi*4], eax
jmp 0x10038c71
cmp word [esp + 0x18], 0
je 0x10038ba8
mov edx, dword [esp + 0x38]
cmp byte [ebx + edx - 1], 0x2c
je 0x10038ba8
mov eax, dword [esp + 0x30]
cmp byte [eax], 6
jne 0x10038c77
mov ecx, dword [esp + 0x3c]
mov edx, dword [ecx + ebx*4 - 4]
mov eax, dword [0x1006be90]
cmp edx, dword [eax + 0x58]
jne 0x10038c77
mov esi, dword [esp + 0x79c]
mov eax, dword [esp + 0x18]
inc eax
cmp ax, word [esi + 0x26]
mov dword [esp + 0x18], eax
jbe 0x100350b0
mov ecx, dword [esp + 0x794]
pop edi
pop esi
pop ebp
pop ebx
call fcn.10057644
add esp, 0x788
ret
mov esi, dword [esp + 0x79c]
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 + 2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
mov cl, byte [eax + edx*4]
cmp cl, 2
lea eax, [eax + edx*4]
jne 0x10038baf
mov eax, dword [eax + 8]
cmp byte [eax], 0x6e
jne 0x10038baf
cmp byte [eax + 1], 0x65
jne 0x10038baf
mov ecx, dword [esp + 0x10]
cmp byte [ebx + ecx + 2], 5
jne 0x10038c3f
mov edx, dword [esp + 0x14]
movzx eax, word [edx + ebx*2 + 4]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
mov cl, byte [edx + ebp + 0xb]
cmp cl, 0x61
lea eax, [edx + ebp]
jne 0x10038c3f
cmp byte [eax + 7], 0x43
jbe 0x10038baf
cmp word [esp + 0x18], 0
jbe 0x10038c77
mov eax, dword [esp + 0x10]
cmp byte [ebx + eax - 1], 5
jne 0x10038c77
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx + ebx*2 - 2]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx ecx, word [eax + edx*4 + 4]
mov al, byte [ecx + ebp + 8]
cmp al, 0x46
je 0x10038c77
cmp al, 0x50
jne 0x10038baf
mov esi, dword [esp + 0x79c]
mov edx, dword [esp + 0x10]
mov byte [ebx + edx], 8
movzx eax, word [esi + 0xe4]
mov byte [eax + ebp], 0
movzx ecx, word [esi + 0xe4]
mov byte [ecx + ebp + 1], 8
movzx edx, word [esi + 0xe4]
mov byte [edx + ebp + 2], 0
movzx eax, word [esi + 0xe4]
mov edx, dword [esp + 0x14]
mov byte [eax + ebp + 6], 0x73
movzx ecx, word [esi + 0xe4]
mov byte [ecx + ebp + 3], 8
movzx eax, word [edx + ebx*2 + 4]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
movzx edx, word [ecx + eax*4 + 4]
movzx eax, word [esi + 0xe4]
mov cl, byte [edx + ebp + 3]
mov byte [eax + ebp + 4], cl
movzx edx, word [esi + 0xe4]
mov byte [edx + ebp + 5], 0x70
movzx eax, word [esi + 0xe4]
mov edx, dword [esp + 0x2c]
mov byte [eax + ebp + 6], 0x72
mov cx, word [esi + 0xe4]
mov word [edx + 4], cx
add word [esi + 0xe4], 7
jmp 0x10038baf