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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x218
mov esi, esp
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
mov edi, 0
mov ebx, dword [0x101537c8]
mov dword [esi + 0x20c], eax
mov eax, dword [0x101537c4]
sub edi, 1
mov dword [esi + 0x208], eax
mov eax, ebx
add eax, edi
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete al
mov edi, dword [esi + 0x208]
cmp edi, 0xa
setl ah
mov bl, al
and bl, ah
xor al, ah
or bl, al
test bl, 1
mov dword [esi + 0x204], edx
mov dword [esi + 0x200], ecx
jne 0x10019e06
jmp 0x1001ecc3
mov eax, 0
mov ecx, 0x28
lea edx, [0x10140d74]
mov edi, 4
mov dword [esi + 0x1fc], eax
mov eax, edi
mov dword [esi + 0x1f8], edi
mov dword [esi + 0x1f4], ecx
mov dword [esi + 0x1f0], edx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1ec], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1e8], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1e4], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1e0], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1dc], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1d8], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1d4], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1d0], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1cc], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1c8], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1c4], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1c0], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1bc], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, 0x28
mov dword [esi + 0x1b8], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1b4], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1b0], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1ac], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1a8], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1a4], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1f8]
mov dword [esi + 0x1a0], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x1ec]
mov edx, dword [esi + 0x20c]
mov dword [ecx], edx
mov edi, dword [esi + 0x1e8]
mov ebx, dword [esi + 0x200]
mov dword [edi], ebx
mov ecx, dword [esi + 0x1e4]
mov edx, dword [esi + 0x204]
mov dword [ecx], edx
mov ecx, dword [esi + 0x1dc]
mov byte [ecx], 0
mov ecx, dword [esi + 0x1e4]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x1d8]
mov dword [edx], ecx
mov ecx, dword [esi + 0x1cc]
mov byte [ecx], 0
mov ecx, dword [esi + 0x1c8]
mov edx, dword [esi + 0x1f0]
mov dword [ecx], edx
mov ecx, dword [esi + 0x1b8]
mov byte [ecx], 0
mov ecx, dword [esi + 0x1b4]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
mov dword [esi + 0x19c], eax
call fcn.10020350
add esp, 0xc
mov eax, dword [esi + 0x1e0]
mov byte [eax], 0x10
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xe0a28970
sub edi, 1
sub edi, 0xe0a28970
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete al
cmp edx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
jne 0x1001a0cb
jmp 0x1001ecc3
jmp 0x1001a0d0
mov eax, dword [esi + 0x1e0]
cmp byte [eax], 0
je 0x1001a80b
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x69cc073a
sub edi, 1
sub edi, 0x69cc073a
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001a155
jmp 0x1001ee34
mov al, 1
mov ecx, 0
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
mov ebx, edi
add ebx, 1
mov dword [edx], ebx
mov ah, byte [edi]
mov edi, dword [esi + 0x1dc]
mov byte [edi], ah
movzx ebx, ah
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov dword [esi + 0x198], ecx
mov ecx, edx
mov dword [esi + 0x194], edx
mov edx, dword [esi + 0x198]
add ecx, edx
mov edx, dword [esi + 0x194]
imul edx, ecx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov byte [esi + 0x193], al
mov al, dl
and al, 1
mov byte [esi + 0x192], al
mov al, byte [esi + 0x193]
and cl, al
or dh, ah
mov ah, byte [esi + 0x192]
or ah, cl
xor dh, ah
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
mov dword [esi + 0x18c], ebx
jne 0x1001a21a
jmp 0x1001ee34
mov eax, dword [esi + 0x18c]
sub eax, 0xef
mov dword [esi + 0x188], eax
jg 0x1001a2da
jmp 0x1001a236
mov eax, dword [esi + 0x18c]
sub eax, 0x63
mov dword [esi + 0x184], eax
jg 0x1001a289
jmp 0x1001a250
mov eax, dword [esi + 0x18c]
add eax, 0xffffffda
mov ecx, eax
sub ecx, 0x18
mov dword [esi + 0x180], eax
mov dword [esi + 0x17c], ecx
ja 0x1001a729
mov eax, 0x1010101
mov ecx, dword [esi + 0x180]
bt eax, ecx
jb 0x1001a4f0
jmp 0x1001a729
mov eax, dword [esi + 0x18c]
add eax, 0xffffff9c
sub eax, 2
mov dword [esi + 0x178], eax
jb 0x1001a4f0
jmp 0x1001a2a6
mov eax, dword [esi + 0x18c]
sub eax, 0x66
mov dword [esi + 0x174], eax
je 0x1001a57e
jmp 0x1001a2c0
mov eax, dword [esi + 0x18c]
sub eax, 0x67
mov dword [esi + 0x170], eax
je 0x1001a692
jmp 0x1001a729
mov eax, dword [esi + 0x18c]
sub eax, 0xf0
mov dword [esi + 0x16c], eax
je 0x1001a4b2
jmp 0x1001a2f6
mov eax, dword [esi + 0x18c]
sub eax, 0xf2
mov dword [esi + 0x168], eax
je 0x1001a3bc
jmp 0x1001a312
mov eax, dword [esi + 0x18c]
sub eax, 0xf3
mov dword [esi + 0x164], eax
jne 0x1001a729
jmp 0x1001a32e
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1dc]
mov dl, byte [ecx]
mov edi, dword [esi + 0x1b4]
mov byte [edi + 5], dl
mov ebx, dword [esi + 0x1cc]
movzx ecx, byte [ebx]
mov edx, ecx
xor edx, 0xffffffff
mov edi, eax
xor edi, 0x10
xor eax, 0xbda44800
mov ebx, edx
and ebx, 0xbda44800
and ecx, eax
mov dword [esi + 0x160], eax
mov eax, edi
and eax, 0xbda44800
mov dword [esi + 0x15c], eax
mov eax, dword [esi + 0x160]
and eax, 0x10
or ebx, ecx
mov ecx, dword [esi + 0x15c]
or ecx, eax
xor ebx, ecx
or edx, edi
xor edx, 0xffffffff
mov eax, dword [esi + 0x160]
or eax, 0xbda44800
and edx, eax
or ebx, edx
mov al, bl
mov ecx, dword [esi + 0x1cc]
mov byte [ecx], al
jmp 0x1001a7ee
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xd0aa8656
sub edi, 1
sub edi, 0xd0aa8656
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001a432
jmp 0x1001ee55
mov eax, dword [esi + 0x1dc]
mov cl, byte [eax]
mov edx, dword [esi + 0x1b4]
mov byte [edx + 5], cl
mov edi, dword [esi + 0x1cc]
movzx ebx, byte [edi]
mov eax, ebx
and eax, 8
xor ebx, 8
or eax, ebx
mov cl, al
mov byte [edi], cl
mov eax, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, eax
add ecx, 0xb714c0be
sub ecx, 1
sub ecx, 0xb714c0be
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
cmp ebx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
jne 0x1001a4ad
jmp 0x1001ee55
jmp 0x1001a7ee
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x8000
xor ecx, 0x8000
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
mov edi, edx
and edi, 1
xor edx, 1
or edi, edx
mov edx, edi
mov bl, dl
mov byte [ecx], bl
jmp 0x1001a7ee
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1dc]
mov dl, byte [ecx]
mov edi, dword [esi + 0x1b4]
mov byte [edi + 6], dl
mov ebx, dword [esi + 0x1cc]
movzx ecx, byte [ebx]
mov edx, ecx
xor edx, 0xffffffff
mov edi, eax
xor edi, 0x20
xor eax, 0xe382f508
mov ebx, edx
and ebx, 0xe382f508
and ecx, eax
mov dword [esi + 0x158], eax
mov eax, edi
and eax, 0xe382f508
mov dword [esi + 0x154], eax
mov eax, dword [esi + 0x158]
and eax, 0x20
or ebx, ecx
mov ecx, dword [esi + 0x154]
or ecx, eax
xor ebx, ecx
or edx, edi
xor edx, 0xffffffff
mov eax, dword [esi + 0x158]
or eax, 0xe382f508
and edx, eax
or ebx, edx
mov al, bl
mov ecx, dword [esi + 0x1cc]
mov byte [ecx], al
jmp 0x1001a7ee
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 0x10000
mov ecx, eax
xor ecx, 0x8915f886
mov dword [esi + 0x150], eax
mov eax, edi
and eax, 0x8915f886
and edx, ecx
mov dword [esi + 0x14c], eax
mov eax, ebx
and eax, 0x8915f886
mov dword [esi + 0x148], eax
mov eax, ecx
and eax, 0x10000
mov dword [esi + 0x144], eax
mov eax, dword [esi + 0x14c]
or eax, edx
mov edx, dword [esi + 0x148]
mov dword [esi + 0x140], eax
mov eax, dword [esi + 0x144]
or edx, eax
mov eax, dword [esi + 0x140]
xor eax, edx
or edi, ebx
xor edi, 0xffffffff
or ecx, 0x8915f886
and edi, ecx
or eax, edi
mov ecx, dword [esi + 0x1b4]
mov dword [ecx], eax
mov eax, dword [esi + 0x1cc]
movzx edx, byte [eax]
mov edi, edx
xor edi, 0xffffffff
mov ebx, dword [esi + 0x150]
xor ebx, 2
mov eax, dword [esi + 0x150]
xor eax, 0x78952bb6
mov ecx, edi
and ecx, 0x78952bb6
and edx, eax
mov dword [esi + 0x13c], eax
mov eax, ebx
and eax, 0x78952bb6
mov dword [esi + 0x138], eax
mov eax, dword [esi + 0x13c]
and eax, 2
or ecx, edx
mov edx, dword [esi + 0x138]
or edx, eax
xor ecx, edx
or edi, ebx
xor edi, 0xffffffff
mov eax, dword [esi + 0x13c]
or eax, 0x78952bb6
and edi, eax
or ecx, edi
mov al, cl
mov ecx, dword [esi + 0x1cc]
mov byte [ecx], al
jmp 0x1001a7ee
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 0x20000
xor edx, 0x20000
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1cc]
movzx edi, byte [edx]
mov ebx, edi
xor ebx, 0xffffffff
mov ecx, eax
xor ecx, 4
xor eax, 0x20d2cec0
mov edx, ebx
and edx, 0x20d2cec0
and edi, eax
mov dword [esi + 0x134], eax
mov eax, ecx
and eax, 0x20d2cec0
mov dword [esi + 0x130], eax
mov eax, dword [esi + 0x134]
and eax, 4
or edx, edi
mov edi, dword [esi + 0x130]
or edi, eax
xor edx, edi
or ebx, ecx
xor ebx, 0xffffffff
mov eax, dword [esi + 0x134]
or eax, 0x20d2cec0
and ebx, eax
or edx, ebx
mov al, dl
mov ecx, dword [esi + 0x1cc]
mov byte [ecx], al
jmp 0x1001a7ee
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001a773
jmp 0x1001ee87
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x3115b902
sub edi, 1
add edi, 0x3115b902
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001a7e9
jmp 0x1001ee87
jmp 0x1001a810
jmp 0x1001a7f3
mov eax, dword [esi + 0x1e0]
mov cl, byte [eax]
sub cl, 0x46
add cl, 0xff
add cl, 0x46
mov byte [eax], cl
jmp 0x1001a0d0
jmp 0x1001a810
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0xce262892
sub edi, 1
add edi, 0xce262892
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001a886
jmp 0x1001ee8c
mov al, 1
mov ecx, dword [esi + 0x1cc]
cmp byte [ecx], 0
setne dl
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, edi
add ecx, 0xcd76e8a3
sub ecx, 1
sub ecx, 0xcd76e8a3
imul edi, ecx
and edi, 1
cmp edi, 0
sete ah
cmp ebx, 0xa
setl dh
mov cl, ah
xor cl, 1
mov ch, dh
xor ch, 1
xor al, 0
mov bl, cl
and bl, 0
and ah, al
mov bh, ch
and bh, 0
and dh, al
or bl, ah
or bh, dh
xor bl, bh
or cl, ch
xor cl, 1
or al, 0
and cl, al
or bl, cl
test bl, 1
mov byte [esi + 0x12f], dl
jne 0x1001a90e
jmp 0x1001ee8c
mov al, byte [esi + 0x12f]
test al, 1
jne 0x1001aa05
jmp 0x1001a921
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x68156860
sub edi, 1
sub edi, 0x68156860
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001a997
jmp 0x1001ee91
mov eax, 0
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
mov edi, edx
and edi, 0x80
xor edx, 0x80
or edi, edx
mov edx, edi
mov bl, dl
mov byte [ecx], bl
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub eax, 1
mov ecx, edx
add ecx, eax
imul edx, ecx
and edx, 1
cmp edx, 0
sete bl
cmp edi, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001aa00
jmp 0x1001ee91
jmp 0x1001ab0a
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x4178456a
sub edx, 1
add edx, 0x4178456a
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001aa52
jmp 0x1001eeb3
mov al, 1
mov ecx, 0xffffffff
mov edx, dword [esi + 0x1cc]
movzx edi, byte [edx]
xor edi, 0xffffffff
mov ebx, ecx
xor ebx, 7
xor ecx, 0x31350dbf
or edi, ebx
or ecx, 0x31350dbf
xor edi, 0xffffffff
and edi, ecx
shl edi, 0x13
mov ecx, dword [esi + 0x1b4]
mov dword [ecx], edi
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, edi
sub ecx, 0xb8e9461f
sub ecx, 1
add ecx, 0xb8e9461f
imul edi, ecx
and edi, 1
cmp edi, 0
sete ah
cmp ebx, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001ab05
jmp 0x1001eeb3
jmp 0x1001ab0a
mov eax, dword [esi + 0x1dc]
mov cl, byte [eax]
mov edx, dword [esi + 0x1b4]
mov byte [edx + 7], cl
movzx edi, cl
cmp edi, 0xf
jne 0x1001ac58
mov eax, dword [esi + 0x1d8]
mov ecx, dword [eax]
mov edx, ecx
inc edx
mov dword [eax], edx
movzx ecx, byte [ecx]
mov edx, ecx
mov bl, dl
mov edx, ecx
sub edx, 0xc7
mov edi, dword [esi + 0x1dc]
mov byte [edi], bl
mov eax, dword [esi + 0x1b4]
mov byte [eax + 8], bl
mov dword [esi + 0x128], ecx
mov dword [esi + 0x124], edx
je 0x1001ab97
jmp 0x1001ab6e
mov eax, dword [esi + 0x128]
sub eax, 0x3f
mov dword [esi + 0x120], eax
jne 0x1001ac43
jmp 0x1001ab88
mov eax, dword [esi + 0x1b4]
mov byte [eax + 4], 4
jmp 0x1001e82d
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xade26e03
sub edx, 1
sub edx, 0xade26e03
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001abe4
jmp 0x1001eedc
mov eax, dword [esi + 0x1b4]
mov byte [eax + 4], 5
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x33d1e280
sub edi, 1
sub edi, 0x33d1e280
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001ac3e
jmp 0x1001eedc
jmp 0x1001e82d
mov eax, dword [esi + 0x1c8]
mov ecx, dword [eax]
add ecx, 0x4a
mov dword [eax], ecx
jmp 0x1001af8e
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x7c2913e2
sub edi, 1
sub edi, 0x7c2913e2
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001acce
jmp 0x1001eeeb
mov eax, 0
mov ecx, dword [esi + 0x1dc]
movzx edx, byte [ecx]
cmp edx, 0xa0
setge bl
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub eax, 1
mov ecx, edx
add ecx, eax
imul edx, ecx
and edx, 1
cmp edx, 0
sete bh
cmp edi, 0xa
setl al
mov ah, bh
and ah, al
xor bh, al
or ah, bh
test ah, 1
mov byte [esi + 0x11f], bl
jne 0x1001ad31
jmp 0x1001eeeb
mov al, byte [esi + 0x11f]
test al, 1
jne 0x1001ad44
jmp 0x1001af89
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x6be09580
sub edx, 1
sub edx, 0x6be09580
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001ad91
jmp 0x1001eef0
mov al, 1
mov ecx, dword [esi + 0x1dc]
movzx edx, byte [ecx]
cmp edx, 0xa3
setle ah
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
add ebx, 0x596b4ce2
sub ebx, 1
sub ebx, 0x596b4ce2
imul edx, ebx
and edx, 1
cmp edx, 0
sete cl
cmp edi, 0xa
setl ch
mov dl, cl
xor dl, 1
mov dh, ch
xor dh, 1
xor al, 0
mov bl, dl
and bl, 0
and cl, al
mov bh, dh
and bh, 0
and ch, al
or bl, cl
or bh, ch
xor bl, bh
or dl, dh
xor dl, 1
or al, 0
and dl, al
or bl, dl
test bl, 1
mov byte [esi + 0x11e], ah
jne 0x1001ae1f
jmp 0x1001eef0
mov al, byte [esi + 0x11e]
test al, 1
jne 0x1001ae32
jmp 0x1001af89
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor eax, 4
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
je 0x1001ae79
mov eax, dword [esi + 0x1cc]
movzx ecx, byte [eax]
mov edx, ecx
and edx, 2
xor ecx, 2
or edx, ecx
mov bl, dl
mov byte [eax], bl
jmp 0x1001ae98
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor eax, 0xfffffffd
mov edi, edx
xor edi, eax
and edi, edx
mov eax, edi
mov bl, al
mov byte [ecx], bl
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xf5786824
sub edi, 1
sub edi, 0xf5786824
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001af0e
jmp 0x1001eef5
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x2735e25d
sub edi, 1
sub edi, 0x2735e25d
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001af84
jmp 0x1001eef5
jmp 0x1001af89
jmp 0x1001af8e
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x9b425a6b
sub edx, 1
sub edx, 0x9b425a6b
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001afdb
jmp 0x1001eefa
mov al, 1
mov ecx, 0
mov edx, 4
mov edi, dword [esi + 0x1dc]
mov ah, byte [edi]
mov ebx, dword [esi + 0x1d0]
mov byte [ebx], ah
movzx edi, byte [ebx]
mov byte [esi + 0x11d], al
mov eax, edi
mov dword [esi + 0x118], edx
cdq
mov edi, dword [esi + 0x118]
idiv edi
mov edx, dword [esi + 0x1c8]
mov edx, dword [edx]
movzx eax, byte [edx + eax]
movzx edx, byte [ebx]
mov dword [esi + 0x114], eax
mov eax, edx
cdq
idiv edi
mov eax, dword [esi + 0x114]
sub eax, 0x87d3ba23
add eax, edx
mov edx, dword [esi + 0x1c8]
mov edx, dword [edx]
mov al, byte [edx + eax - 0x782c45dd]
mov edx, dword [esi + 0x1d4]
mov byte [edx], al
movzx eax, byte [edx]
cmp eax, 0xff
sete al
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
mov dh, byte [esi + 0x11d]
xor dh, 0
mov bl, ch
and bl, 0
and ah, dh
mov bh, dl
and bh, 0
and cl, dh
or bl, ah
or bh, cl
xor bl, bh
or ch, dl
xor ch, 1
or dh, 0
and ch, dh
or bl, ch
test bl, 1
mov byte [esi + 0x113], al
jne 0x1001b0d2
jmp 0x1001eefa
mov al, byte [esi + 0x113]
test al, 1
jne 0x1001b0e5
jmp 0x1001b20d
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 0x3000000
xor edx, 0x3000000
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1d4]
mov byte [edx], 0
mov edi, dword [esi + 0x1d0]
movzx ebx, byte [edi]
xor eax, 0xfffffffd
mov ecx, ebx
xor ecx, eax
and ecx, ebx
cmp ecx, 0x24
jne 0x1001b208
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x348f1880
sub edx, 1
sub edx, 0x348f1880
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001b17a
jmp 0x1001ef62
mov al, 1
mov ecx, dword [esi + 0x1d4]
mov dl, byte [ecx]
sub dl, 0x42
add dl, 1
add dl, 0x42
mov byte [ecx], dl
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, edi
add ecx, 0x6391bb0c
sub ecx, 1
sub ecx, 0x6391bb0c
imul edi, ecx
and edi, 1
cmp edi, 0
sete dl
cmp ebx, 0xa
setl ah
mov dh, dl
xor dh, 1
mov cl, ah
xor cl, 1
xor al, 1
mov ch, dh
and ch, 1
and dl, al
mov bl, cl
and bl, 1
and ah, al
or ch, dl
or bl, ah
xor ch, bl
or dh, cl
xor dh, 1
or al, 1
and dh, al
or ch, dh
test ch, 1
jne 0x1001b203
jmp 0x1001ef62
jmp 0x1001b208
jmp 0x1001e82d
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x1c72b15d
sub edx, 1
add edx, 0x1c72b15d
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001b25a
jmp 0x1001ef7a
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1e0]
mov byte [ecx], 0
mov edx, dword [esi + 0x1d4]
movzx edi, byte [edx]
xor eax, 0x80
mov ebx, edi
xor ebx, eax
and ebx, edi
cmp ebx, 0
setne al
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, edi
sub ecx, 0x74ba4f95
sub ecx, 1
add ecx, 0x74ba4f95
imul edi, ecx
and edi, 1
cmp edi, 0
sete ah
cmp ebx, 0xa
setl cl
mov ch, ah
and ch, cl
xor ah, cl
or ch, ah
test ch, 1
mov byte [esi + 0x112], al
jne 0x1001b2dc
jmp 0x1001ef7a
mov al, byte [esi + 0x112]
test al, 1
jne 0x1001b2ef
jmp 0x1001b358
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1c8]
mov edx, dword [ecx]
mov edi, dword [esi + 0x1d4]
movzx ebx, byte [edi]
xor ebx, 0xffffffff
mov ecx, eax
xor ecx, 0x7f
xor eax, 0x51ebbda5
or ebx, ecx
or eax, 0x51ebbda5
xor ebx, 0xffffffff
and ebx, eax
mov di, word [edx + ebx]
mov eax, dword [esi + 0x1b0]
mov word [eax], di
mov di, word [eax]
mov ax, di
mov ecx, dword [esi + 0x1d4]
mov byte [ecx], al
mov edx, dword [esi + 0x1b0]
movzx ebx, word [edx]
sar ebx, 8
mov al, bl
mov ebx, dword [esi + 0x1e0]
mov byte [ebx], al
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001b3a2
jmp 0x1001ef88
mov eax, dword [esi + 0x1b4]
cmp byte [eax + 8], 0
setne cl
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
sub ebx, 0x93f3c672
sub ebx, 1
add ebx, 0x93f3c672
imul edx, ebx
and edx, 1
cmp edx, 0
sete ch
cmp edi, 0xa
setl al
mov ah, ch
and ah, al
xor ch, al
or ah, ch
test ah, 1
mov byte [esi + 0x111], cl
jne 0x1001b406
jmp 0x1001ef88
mov al, byte [esi + 0x111]
test al, 1
jne 0x1001b419
jmp 0x1001b67f
mov eax, 0
mov ecx, 4
lea edx, [0x10140d74]
add edx, 0x14d
mov edi, dword [esi + 0x1c8]
mov dword [edi], edx
mov edx, dword [esi + 0x1d0]
movzx ebx, byte [edx]
mov dword [esi + 0x10c], eax
mov eax, ebx
cdq
idiv ecx
mov edx, dword [edi]
movzx eax, byte [edx + eax]
mov edx, dword [esi + 0x1d0]
movzx ebx, byte [edx]
mov dword [esi + 0x108], eax
mov eax, ebx
cdq
idiv ecx
mov eax, dword [esi + 0x10c]
mov ecx, dword [esi + 0x108]
sub eax, ecx
mov ebx, dword [esi + 0x10c]
sub ebx, edx
add eax, ebx
mov edx, dword [esi + 0x10c]
sub edx, eax
mov eax, dword [edi]
movzx eax, byte [eax + edx]
mov edx, dword [esi + 0x1cc]
movzx ebx, byte [edx]
xor ebx, 0xffffffff
mov ecx, eax
xor ecx, ebx
and ecx, eax
cmp ecx, 0
je 0x1001b5b7
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x5b0ea281
sub edi, 1
add edi, 0x5b0ea281
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001b522
jmp 0x1001ef8d
mov al, 1
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 0x3000000
xor edx, 0x3000000
or edi, edx
mov dword [ecx], edi
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
sub ebx, 0x7c57e4de
sub ebx, 1
add ebx, 0x7c57e4de
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 0
mov dh, ch
and dh, 0
and ah, al
mov bl, dl
and bl, 0
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 0
and ch, al
or dh, ch
test dh, 1
jne 0x1001b5b2
jmp 0x1001ef8d
jmp 0x1001e82d
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xf67bd9b1
sub edx, 1
sub edx, 0xf67bd9b1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001b604
jmp 0x1001efac
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x1471b723
sub edi, 1
add edi, 0x1471b723
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001b67a
jmp 0x1001efac
jmp 0x1001b67f
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1d4]
movzx edx, byte [ecx]
xor eax, 1
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
je 0x1001de19
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 1
xor edx, 1
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
mov ebx, edi
add ebx, 1
mov dword [edx], ebx
mov cl, byte [edi]
mov edi, dword [esi + 0x1dc]
mov byte [edi], cl
mov ebx, dword [esi + 0x1b4]
mov byte [ebx + 9], cl
movzx ecx, byte [edi]
sar ecx, 6
mov edx, dword [esi + 0x1c4]
mov byte [edx], cl
mov byte [ebx + 0xa], cl
movzx ecx, byte [edi]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 7
mov edi, eax
xor edi, 0xe1912a0e
or ecx, edx
or edi, 0xe1912a0e
xor ecx, 0xffffffff
and ecx, edi
mov edx, dword [esi + 0x1bc]
mov byte [edx], cl
mov byte [ebx + 0xc], cl
mov edi, dword [esi + 0x1dc]
movzx ecx, byte [edi]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0x3f
xor eax, 0xdfdd4009
or ecx, edx
or eax, 0xdfdd4009
xor ecx, 0xffffffff
and ecx, eax
sar ecx, 3
mov al, cl
mov ecx, dword [esi + 0x1c0]
mov byte [ecx], al
mov byte [ebx + 0xb], al
mov edx, dword [esi + 0x1e0]
cmp byte [edx], 0
je 0x1001b88e
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x1fd98016
sub edx, 1
add edx, 0x1fd98016
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001b7c4
jmp 0x1001efb1
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1e0]
movzx edx, byte [ecx]
mov edi, dword [esi + 0x1c0]
movzx ecx, byte [edi]
shl edx, cl
xor edx, 0xffffffff
mov ebx, eax
xor ebx, 0x80
xor eax, 0xfdb74fc6
or edx, ebx
or eax, 0xfdb74fc6
xor edx, 0xffffffff
and edx, eax
cmp edx, 0
setne cl
mov eax, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov ebx, eax
sub ebx, 0xdf8d9b01
sub ebx, 1
add ebx, 0xdf8d9b01
imul eax, ebx
and eax, 1
cmp eax, 0
sete ch
cmp edx, 0xa
setl al
mov ah, ch
and ah, al
xor ch, al
or ah, ch
test ah, 1
mov byte [esi + 0x107], cl
jne 0x1001b85c
jmp 0x1001efb1
mov al, byte [esi + 0x107]
test al, 1
jne 0x1001b86f
jmp 0x1001b88e
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x3000000
xor ecx, 0x3000000
or edx, ecx
mov dword [eax], edx
jmp 0x1001e82d
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001b8d8
jmp 0x1001efb6
mov al, 1
mov ecx, 0
mov edx, dword [esi + 0x1b4]
cmp byte [edx + 8], 0
setne ah
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub ecx, 1
mov edx, edi
add edx, ecx
imul edi, edx
and edi, 1
cmp edi, 0
sete cl
cmp ebx, 0xa
setl ch
mov dl, cl
xor dl, 1
mov dh, ch
xor dh, 1
xor al, 0
mov bl, dl
and bl, 0
and cl, al
mov bh, dh
and bh, 0
and ch, al
or bl, cl
or bh, ch
xor bl, bh
or dl, dh
xor dl, 1
or al, 0
and dl, al
or bl, dl
test bl, 1
mov byte [esi + 0x106], ah
jne 0x1001b95c
jmp 0x1001efb6
mov al, byte [esi + 0x106]
test al, 1
jne 0x1001bc3e
jmp 0x1001b96f
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001b9e0
jmp 0x1001efbb
mov eax, 0
mov ecx, dword [esi + 0x1d0]
movzx edx, byte [ecx]
cmp edx, 0xd9
setge bl
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub eax, 1
mov ecx, edx
add ecx, eax
imul edx, ecx
and edx, 1
cmp edx, 0
sete bh
cmp edi, 0xa
setl al
mov ah, bh
and ah, al
xor bh, al
or ah, bh
test ah, 1
mov byte [esi + 0x105], bl
jne 0x1001ba43
jmp 0x1001efbb
mov al, byte [esi + 0x105]
test al, 1
jne 0x1001ba56
jmp 0x1001bc3e
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xf4ffe095
sub edx, 1
sub edx, 0xf4ffe095
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001baa3
jmp 0x1001efc0
mov al, 1
mov ecx, dword [esi + 0x1d0]
movzx edx, byte [ecx]
cmp edx, 0xdf
setle ah
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
add ebx, 0xd693ab9
sub ebx, 1
sub ebx, 0xd693ab9
imul edx, ebx
and edx, 1
cmp edx, 0
sete cl
cmp edi, 0xa
setl ch
mov dl, cl
xor dl, 1
mov dh, ch
xor dh, 1
xor al, 0
mov bl, dl
and bl, 0
and cl, al
mov bh, dh
and bh, 0
and ch, al
or bl, cl
or bh, ch
xor bl, bh
or dl, dh
xor dl, 1
or al, 0
and dl, al
or bl, dl
test bl, 1
mov byte [esi + 0x104], ah
jne 0x1001bb31
jmp 0x1001efc0
mov al, byte [esi + 0x104]
test al, 1
jne 0x1001bb44
jmp 0x1001bc3e
mov eax, 0
mov ecx, dword [esi + 0x1d0]
movzx edx, byte [ecx]
sub eax, 0xd9
add edx, eax
mov bl, dl
mov eax, dword [esi + 0x1ac]
mov byte [eax], bl
mov edx, dword [esi + 0x1c4]
movzx edi, byte [edx]
cmp edi, 3
jne 0x1001bbc4
lea eax, [0x10140d74]
add eax, 0x115
mov ecx, dword [esi + 0x1ac]
movzx edx, byte [ecx]
shl edx, 3
add eax, edx
mov edx, dword [esi + 0x1c8]
mov dword [edx], eax
mov eax, dword [esi + 0x1c0]
movzx edi, byte [eax]
mov ebx, dword [edx]
movzx edi, byte [ebx + edi]
mov ebx, dword [esi + 0x1bc]
movzx ecx, byte [ebx]
shl edi, cl
mov eax, edi
mov cl, al
mov eax, dword [esi + 0x1ac]
mov byte [eax], cl
jmp 0x1001bbf5
lea eax, [0x10140d74]
add eax, 0x10e
mov ecx, dword [esi + 0x1c8]
mov dword [ecx], eax
mov eax, dword [esi + 0x1ac]
movzx edx, byte [eax]
mov edi, dword [ecx]
movzx edx, byte [edi + edx]
mov edi, dword [esi + 0x1c0]
movzx ecx, byte [edi]
shl edx, cl
mov cl, dl
mov byte [eax], cl
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1ac]
movzx edx, byte [ecx]
xor eax, 0x80
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
je 0x1001bc39
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x3000000
xor ecx, 0x3000000
or edx, ecx
mov dword [eax], edx
jmp 0x1001e82d
jmp 0x1001bc3e
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor eax, 1
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
je 0x1001c19f
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x500dccc6
sub edi, 1
sub edi, 0x500dccc6
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001bcd9
jmp 0x1001efc5
mov al, 1
mov ecx, 0
mov edx, dword [esi + 0x1c4]
movzx edi, byte [edx]
cmp edi, 3
sete ah
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub ecx, 1
mov edx, edi
add edx, ecx
imul edi, edx
and edi, 1
cmp edi, 0
sete cl
cmp ebx, 0xa
setl ch
mov dl, cl
xor dl, 1
mov dh, ch
xor dh, 1
xor al, 0
mov bl, dl
and bl, 0
and cl, al
mov bh, dh
and bh, 0
and ch, al
or bl, cl
or bh, ch
xor bl, bh
or dl, dh
xor dl, 1
or al, 0
and dl, al
or bl, dl
test bl, 1
mov byte [esi + 0x103], ah
jne 0x1001bd62
jmp 0x1001efc5
mov al, byte [esi + 0x103]
test al, 1
jne 0x1001bd75
jmp 0x1001bd94
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x9000000
xor ecx, 0x9000000
or edx, ecx
mov dword [eax], edx
jmp 0x1001e82d
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001be05
jmp 0x1001efca
mov al, 1
mov ecx, dword [esi + 0x1d0]
mov dl, byte [ecx]
mov edi, dword [esi + 0x1a4]
mov byte [edi], dl
mov ebx, dword [esi + 0x1b4]
cmp byte [ebx + 8], 0
setne dl
mov ecx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, ecx
add ebx, 0x8dc75779
sub ebx, 1
sub ebx, 0x8dc75779
imul ecx, ebx
and ecx, 1
cmp ecx, 0
sete ah
cmp edi, 0xa
setl dh
mov cl, ah
xor cl, 1
mov ch, dh
xor ch, 1
xor al, 0
mov bl, cl
and bl, 0
and ah, al
mov bh, ch
and bh, 0
and dh, al
or bl, ah
or bh, dh
xor bl, bh
or cl, ch
xor cl, 1
or al, 0
and cl, al
or bl, cl
test bl, 1
mov byte [esi + 0x102], dl
jne 0x1001be9e
jmp 0x1001efca
mov al, byte [esi + 0x102]
test al, 1
jne 0x1001beb1
jmp 0x1001bedd
lea eax, [0x10140d74]
add eax, 0x1d7
mov ecx, dword [esi + 0x1c8]
mov dword [ecx], eax
mov eax, dword [ecx]
add eax, 0x1e9
add eax, 0xfffffe29
mov edx, dword [esi + 0x1a8]
mov dword [edx], eax
jmp 0x1001bf2a
mov eax, 0xffffffff
lea ecx, [0x10140d74]
add ecx, 0x1bf
mov edx, dword [esi + 0x1c8]
mov dword [edx], ecx
mov ecx, dword [edx]
add ecx, 0x1d7
add ecx, 0xfffffe41
mov edi, dword [esi + 0x1a8]
mov dword [edi], ecx
mov ecx, dword [esi + 0x1a4]
movzx ebx, byte [ecx]
xor eax, 0xfffffffe
mov ecx, ebx
xor ecx, eax
and ecx, ebx
mov al, cl
mov ecx, dword [esi + 0x1a4]
mov byte [ecx], al
jmp 0x1001bf2f
mov eax, dword [esi + 0x1c8]
mov ecx, dword [eax]
mov edx, dword [esi + 0x1a8]
cmp ecx, dword [edx]
je 0x1001c058
mov eax, dword [esi + 0x1c8]
mov ecx, dword [eax]
mov edx, ecx
add edx, 1
mov dword [eax], edx
movzx ecx, byte [ecx]
mov edx, dword [esi + 0x1a4]
movzx edi, byte [edx]
cmp ecx, edi
jne 0x1001bfa7
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1c8]
mov edx, dword [ecx]
movzx edx, byte [edx]
mov edi, dword [esi + 0x1c0]
movzx ecx, byte [edi]
shl edx, cl
xor eax, 0x80
mov ebx, edx
xor ebx, eax
and ebx, edx
cmp ebx, 0
jne 0x1001bfa2
jmp 0x1001c0d2
jmp 0x1001c058
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xe58e557a
sub edx, 1
add edx, 0xe58e557a
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001bff4
jmp 0x1001efdf
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001c03e
jmp 0x1001efdf
jmp 0x1001c043
mov eax, dword [esi + 0x1c8]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x1001bf2f
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 0x9000000
xor eax, 0x59316a6c
mov ecx, edi
and ecx, 0x59316a6c
and edx, eax
mov dword [esi + 0xfc], eax
mov eax, ebx
and eax, 0x59316a6c
mov dword [esi + 0xf8], eax
mov eax, dword [esi + 0xfc]
and eax, 0x9000000
or ecx, edx
mov edx, dword [esi + 0xf8]
or edx, eax
xor ecx, edx
or edi, ebx
xor edi, 0xffffffff
mov eax, dword [esi + 0xfc]
or eax, 0x59316a6c
and edi, eax
or ecx, edi
mov eax, dword [esi + 0x1b4]
mov dword [eax], ecx
jmp 0x1001e82d
jmp 0x1001c0d7
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0xa9b18794
sub edi, 1
add edi, 0xa9b18794
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001c14d
jmp 0x1001efe4
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x5932b54e
sub edx, 1
add edx, 0x5932b54e
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001c19a
jmp 0x1001efe4
jmp 0x1001c19f
mov eax, dword [esi + 0x1b4]
cmp byte [eax + 8], 0
je 0x1001c418
mov eax, dword [esi + 0x1d0]
movzx ecx, byte [eax]
add ecx, 0xffffffe0
mov edx, ecx
sub edx, 3
mov dword [esi + 0xf4], ecx
mov dword [esi + 0xf0], edx
ja 0x1001c358
mov eax, dword [esi + 0xf4]
mov ecx, dword [eax*4 + 0x10106c60]
jmp ecx
mov eax, dword [esi + 0x1c4]
mov byte [eax], 3
mov ecx, dword [esi + 0x1c0]
movzx edx, byte [ecx]
cmp edx, 4
jg 0x1001c214
mov eax, dword [esi + 0x1c0]
movzx ecx, byte [eax]
cmp ecx, 1
jne 0x1001c219
jmp 0x1001d1b2
jmp 0x1001d22c
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001c28f
jmp 0x1001efe9
mov al, 1
mov ecx, dword [esi + 0x1c4]
mov byte [ecx], 3
mov edx, dword [esi + 0x1c0]
movzx edi, byte [edx]
cmp edi, 4
sete ah
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, edi
sub ecx, 0xaf77aada
sub ecx, 1
add ecx, 0xaf77aada
imul edi, ecx
and edi, 1
cmp edi, 0
sete cl
cmp ebx, 0xa
setl ch
mov dl, cl
xor dl, 1
mov dh, ch
xor dh, 1
xor al, 0
mov bl, dl
and bl, 0
and cl, al
mov bh, dh
and bh, 0
and ch, al
or bl, cl
or bh, ch
xor bl, bh
or dl, dh
xor dl, 1
or al, 0
and dl, al
or bl, dl
test bl, 1
mov byte [esi + 0xef], ah
jne 0x1001c326
jmp 0x1001efe9
mov al, byte [esi + 0xef]
test al, 1
jne 0x1001c34e
jmp 0x1001c339
mov eax, dword [esi + 0x1c0]
movzx ecx, byte [eax]
cmp ecx, 5
jne 0x1001c353
jmp 0x1001d1b2
jmp 0x1001d22c
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001c3c9
jmp 0x1001eff7
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001c413
jmp 0x1001eff7
jmp 0x1001c7ad
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001c462
jmp 0x1001effc
mov eax, dword [esi + 0x1d0]
movzx ecx, byte [eax]
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
sub ebx, 0x7befc6d1
sub ebx, 1
add ebx, 0x7befc6d1
imul edx, ebx
and edx, 1
cmp edx, 0
sete al
cmp edi, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov dword [esi + 0xe8], ecx
jne 0x1001c4c2
jmp 0x1001effc
mov eax, dword [esi + 0xe8]
sub eax, 0x8e
mov dword [esi + 0xe4], eax
je 0x1001c5d9
jmp 0x1001c4de
mov eax, dword [esi + 0xe8]
sub eax, 0x8c
mov dword [esi + 0xe0], eax
jne 0x1001c7a8
jmp 0x1001c4fa
mov eax, dword [esi + 0x1c0]
movzx ecx, byte [eax]
cmp ecx, 5
jle 0x1001c514
jmp 0x1001d1b2
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001c55e
jmp 0x1001f001
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xf8b2cd79
sub edi, 1
sub edi, 0xf8b2cd79
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001c5d4
jmp 0x1001f001
jmp 0x1001d22c
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001c64a
jmp 0x1001f006
mov eax, dword [esi + 0x1c0]
movzx ecx, byte [eax]
cmp ecx, 1
sete dl
mov ecx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, ecx
add ebx, 0x5e5d9bbf
sub ebx, 1
sub ebx, 0x5e5d9bbf
imul ecx, ebx
and ecx, 1
cmp ecx, 0
sete dh
cmp edi, 0xa
setl al
mov ah, dh
and ah, al
xor dh, al
or ah, dh
test ah, 1
mov byte [esi + 0xdf], dl
jne 0x1001c6b3
jmp 0x1001f006
mov al, byte [esi + 0xdf]
test al, 1
jne 0x1001c6db
jmp 0x1001c6c6
mov eax, dword [esi + 0x1c0]
movzx ecx, byte [eax]
cmp ecx, 5
jle 0x1001c7a3
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xfd5a18aa
sub edi, 1
sub edi, 0xfd5a18aa
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001c751
jmp 0x1001f00b
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x707bb39f
sub edx, 1
add edx, 0x707bb39f
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001c79e
jmp 0x1001f00b
jmp 0x1001d1b2
jmp 0x1001d22c
jmp 0x1001c7ad
mov eax, dword [esi + 0x1c4]
movzx ecx, byte [eax]
cmp ecx, 3
jne 0x1001cd5f
mov eax, dword [esi + 0x1b4]
cmp byte [eax + 8], 0
je 0x1001c7fe
lea eax, [0x10140d74]
add eax, 0x1f8
mov ecx, dword [esi + 0x1c8]
mov dword [ecx], eax
mov eax, dword [ecx]
add eax, 0x222
add eax, 0xfffffe08
mov edx, dword [esi + 0x1a0]
mov dword [edx], eax
jmp 0x1001c8ee
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x11c7a1a
sub edi, 1
add edi, 0x11c7a1a
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001c874
jmp 0x1001f010
mov eax, 0
lea ecx, [0x10140d74]
add ecx, 0x1e9
mov edx, dword [esi + 0x1c8]
mov dword [edx], ecx
mov ecx, dword [edx]
add ecx, 0x1f8
add ecx, 0xfffffe17
mov edi, dword [esi + 0x1a0]
mov dword [edi], ecx
mov ecx, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub eax, 1
mov edx, ecx
add edx, eax
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete al
cmp ebx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
jne 0x1001c8e9
jmp 0x1001f010
jmp 0x1001c8ee
jmp 0x1001c8f3
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0xff0d0b79
sub edi, 1
add edi, 0xff0d0b79
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001c969
jmp 0x1001f03c
mov eax, 0
mov ecx, dword [esi + 0x1c8]
mov edx, dword [ecx]
mov edi, dword [esi + 0x1a0]
cmp edx, dword [edi]
setne bl
mov edx, dword [0x101537c8]
mov ecx, dword [0x101537c4]
sub eax, 1
mov edi, edx
add edi, eax
imul edx, edi
and edx, 1
cmp edx, 0
sete bh
cmp ecx, 0xa
setl al
mov ah, bh
and ah, al
xor bh, al
or ah, bh
test ah, 1
mov byte [esi + 0xde], bl
jne 0x1001c9cd
jmp 0x1001f03c
mov al, byte [esi + 0xde]
test al, 1
jne 0x1001c9e0
jmp 0x1001cc97
mov eax, dword [esi + 0x1c8]
mov ecx, dword [eax]
mov edx, ecx
add edx, 1
mov dword [eax], edx
movzx ecx, byte [ecx]
mov edx, dword [esi + 0x1d0]
movzx edi, byte [edx]
cmp ecx, edi
jne 0x1001cbba
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x7365a3f3
sub edi, 1
sub edi, 0x7365a3f3
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001ca7c
jmp 0x1001f041
mov al, 1
mov ecx, 0
mov edx, 0xffffffff
mov edi, dword [esi + 0x1c8]
mov ebx, dword [edi]
mov edi, ebx
add edi, 1
mov byte [esi + 0xdd], al
mov eax, dword [esi + 0x1c8]
mov dword [eax], edi
movzx edi, byte [ebx]
mov ebx, dword [esi + 0x1cc]
movzx eax, byte [ebx]
xor edi, 0xffffffff
xor eax, 0xffffffff
xor edx, 0x7d017cfd
or edi, eax
or edx, 0x7d017cfd
xor edi, 0xffffffff
and edi, edx
cmp edi, 0
setne al
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
mov dh, byte [esi + 0xdd]
xor dh, 0
mov bl, ch
and bl, 0
and ah, dh
mov bh, dl
and bh, 0
and cl, dh
or bl, ah
or bh, cl
xor bl, bh
or ch, dl
xor ch, 1
or dh, 0
and ch, dh
or bl, ch
test bl, 1
mov byte [esi + 0xdc], al
jne 0x1001cb54
jmp 0x1001f041
mov al, byte [esi + 0xdc]
test al, 1
jne 0x1001cb67
jmp 0x1001cbb5
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1c8]
mov edx, dword [ecx]
movzx edx, byte [edx]
mov edi, dword [esi + 0x1c0]
movzx ecx, byte [edi]
shl edx, cl
xor edx, 0xffffffff
mov ebx, eax
xor ebx, 0x80
xor eax, 0xb0cba743
or edx, ebx
or eax, 0xb0cba743
xor edx, 0xffffffff
and edx, eax
cmp edx, 0
jne 0x1001cbb5
jmp 0x1001d1b2
jmp 0x1001cc97
jmp 0x1001cbbf
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xc0e48efd
sub edx, 1
add edx, 0xc0e48efd
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001cc0c
jmp 0x1001f056
mov al, 1
mov ecx, dword [esi + 0x1c8]
mov edx, dword [ecx]
add edx, 2
mov dword [ecx], edx
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
sub ebx, 0xfbb0899a
sub ebx, 1
add ebx, 0xfbb0899a
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001cc92
jmp 0x1001f056
jmp 0x1001c8f3
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xc78e6605
sub edi, 1
sub edi, 0xc78e6605
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001cd0d
jmp 0x1001f06b
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xce24ea44
sub edx, 1
add edx, 0xce24ea44
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001cd5a
jmp 0x1001f06b
jmp 0x1001d22c
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0xf0a62bab
sub edi, 1
add edi, 0xf0a62bab
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001cdd5
jmp 0x1001f070
mov eax, 0
mov ecx, dword [esi + 0x1b4]
cmp byte [ecx + 8], 0
setne dl
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub eax, 1
mov ecx, edi
add ecx, eax
imul edi, ecx
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
and ah, al
xor dh, al
or ah, dh
test ah, 1
mov byte [esi + 0xdb], dl
jne 0x1001ce33
jmp 0x1001f070
mov al, byte [esi + 0xdb]
test al, 1
jne 0x1001ce46
jmp 0x1001d0ea
mov eax, dword [esi + 0x1d0]
movzx ecx, byte [eax]
mov edx, ecx
sub edx, 0xc4
mov dword [esi + 0xd4], ecx
mov dword [esi + 0xd0], edx
jg 0x1001ce88
jmp 0x1001ce6e
mov eax, dword [esi + 0xd4]
sub eax, 0x50
mov dword [esi + 0xcc], eax
je 0x1001cf14
jmp 0x1001d0e5
mov eax, dword [esi + 0xd4]
sub eax, 0xf6
mov dword [esi + 0xc8], eax
jg 0x1001cef8
jmp 0x1001cea4
mov eax, dword [esi + 0xd4]
sub eax, 0xc5
mov dword [esi + 0xc4], eax
je 0x1001d0e0
jmp 0x1001cec0
mov eax, dword [esi + 0xd4]
sub eax, 0xd6
mov dword [esi + 0xc0], eax
je 0x1001cfee
jmp 0x1001cedc
mov eax, dword [esi + 0xd4]
sub eax, 0xd7
mov dword [esi + 0xbc], eax
je 0x1001cf14
jmp 0x1001d0e5
mov eax, dword [esi + 0xd4]
sub eax, 0xf7
mov dword [esi + 0xb8], eax
jne 0x1001d0e5
jmp 0x1001cf14
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor edx, 0xffffffff
mov edi, eax
xor edi, 0x82
xor eax, 0xc24050b0
or edx, edi
or eax, 0xc24050b0
xor edx, 0xffffffff
and edx, eax
cmp edx, 0
je 0x1001cfe9
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001cf9a
jmp 0x1001f075
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001cfe4
jmp 0x1001f075
jmp 0x1001d1b2
jmp 0x1001d0e5
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor eax, 0x18
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
je 0x1001d0db
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xf59f1eaf
sub edx, 1
add edx, 0xf59f1eaf
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001d060
jmp 0x1001f07a
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0xd2a79c51
sub edi, 1
add edi, 0xd2a79c51
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001d0d6
jmp 0x1001f07a
jmp 0x1001d1b2
jmp 0x1001d0e5
jmp 0x1001d1b2
jmp 0x1001d0ea
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x29d1b13f
sub edi, 1
sub edi, 0x29d1b13f
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001d160
jmp 0x1001f07f
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xfe834595
sub edx, 1
sub edx, 0xfe834595
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001d1ad
jmp 0x1001f07f
jmp 0x1001d22c
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 0x11000000
xor eax, 0x67b80a9
mov ecx, edi
and ecx, 0x67b80a9
and edx, eax
mov dword [esi + 0xb4], eax
mov eax, ebx
and eax, 0x67b80a9
mov dword [esi + 0xb0], eax
mov eax, dword [esi + 0xb4]
and eax, 0x11000000
or ecx, edx
mov edx, dword [esi + 0xb0]
or edx, eax
xor ecx, edx
or edi, ebx
xor edi, 0xffffffff
mov eax, dword [esi + 0xb4]
or eax, 0x67b80a9
and edi, eax
or ecx, edi
mov eax, dword [esi + 0x1b4]
mov dword [eax], ecx
jmp 0x1001e82d
mov eax, dword [esi + 0x1d8]
mov ecx, dword [eax]
mov edx, ecx
add edx, 1
mov dword [eax], edx
mov bl, byte [ecx]
mov ecx, dword [esi + 0x1dc]
mov byte [ecx], bl
mov edx, dword [esi + 0x1c0]
movzx edi, byte [edx]
cmp edi, 1
jg 0x1001d3ad
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xfddc81a4
sub edi, 1
sub edi, 0xfddc81a4
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001d2d3
jmp 0x1001f084
mov eax, dword [esi + 0x1d0]
movzx ecx, byte [eax]
cmp ecx, 0xf6
sete dl
mov ecx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, ecx
sub ebx, 0xb69a2651
sub ebx, 1
add ebx, 0xb69a2651
imul ecx, ebx
and ecx, 1
cmp ecx, 0
sete dh
cmp edi, 0xa
setl al
mov ah, dh
and ah, al
xor dh, al
or ah, dh
test ah, 1
mov byte [esi + 0xaf], dl
jne 0x1001d33c
jmp 0x1001f084
mov al, byte [esi + 0xaf]
test al, 1
jne 0x1001d34f
jmp 0x1001d371
mov eax, dword [esi + 0x1d4]
movzx ecx, byte [eax]
mov edx, ecx
and edx, 2
xor ecx, 2
or edx, ecx
mov bl, dl
mov byte [eax], bl
jmp 0x1001d3a8
mov eax, dword [esi + 0x1d0]
movzx ecx, byte [eax]
cmp ecx, 0xf7
jne 0x1001d3a3
mov eax, dword [esi + 0x1d4]
movzx ecx, byte [eax]
mov edx, ecx
and edx, 0x10
xor ecx, 0x10
or edx, ecx
mov bl, dl
mov byte [eax], bl
jmp 0x1001d3a8
jmp 0x1001d3ad
mov eax, dword [esi + 0x1c4]
movzx ecx, byte [eax]
mov edx, ecx
sub edx, 2
mov dword [esi + 0xa8], ecx
mov dword [esi + 0xa4], edx
je 0x1001d60d
jmp 0x1001d3d2
mov eax, dword [esi + 0xa8]
sub eax, 1
mov dword [esi + 0xa0], eax
je 0x1001d544
jmp 0x1001d3ec
mov eax, dword [esi + 0xa8]
test eax, eax
jne 0x1001d758
jmp 0x1001d3ff
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor edx, 0xffffffff
mov edi, eax
xor edi, 4
xor eax, 0x3e6d80db
or edx, edi
or eax, 0x3e6d80db
xor edx, 0xffffffff
and edx, eax
cmp edx, 0
je 0x1001d45e
mov eax, dword [esi + 0x1bc]
movzx ecx, byte [eax]
cmp ecx, 6
jne 0x1001d459
mov eax, dword [esi + 0x1b8]
mov byte [eax], 2
jmp 0x1001d481
mov eax, dword [esi + 0x1bc]
movzx ecx, byte [eax]
cmp ecx, 5
jne 0x1001d47c
mov eax, dword [esi + 0x1b8]
mov byte [eax], 4
jmp 0x1001d481
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x67cb5b27
sub edx, 1
add edx, 0x67cb5b27
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001d4ce
jmp 0x1001f089
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 0
mov dh, ch
and dh, 0
and ah, al
mov bl, dl
and bl, 0
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 0
and ch, al
or dh, ch
test dh, 1
jne 0x1001d53f
jmp 0x1001f089
jmp 0x1001d758
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001d58e
jmp 0x1001f08e
mov al, 1
mov ecx, 0
mov edx, dword [esi + 0x1b8]
mov byte [edx], 1
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub ecx, 1
mov edx, edi
add edx, ecx
imul edi, edx
and edi, 1
cmp edi, 0
sete ah
cmp ebx, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001d608
jmp 0x1001f08e
jmp 0x1001d758
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b8]
mov byte [ecx], 2
mov edx, dword [esi + 0x1cc]
movzx edi, byte [edx]
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 4
xor eax, 0x4362b2ad
or edi, ebx
or eax, 0x4362b2ad
xor edi, 0xffffffff
and edi, eax
cmp edi, 0
jne 0x1001d753
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xad294cea
sub edi, 1
sub edi, 0xad294cea
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001d6c8
jmp 0x1001f09c
mov al, 1
mov ecx, dword [esi + 0x1b8]
movzx edx, byte [ecx]
shl edx, 1
mov ah, dl
mov byte [ecx], ah
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
add ebx, 0x556384ab
sub ebx, 1
sub ebx, 0x556384ab
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001d74e
jmp 0x1001f09c
jmp 0x1001d753
jmp 0x1001d758
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0xcaef1be7
sub edi, 1
add edi, 0xcaef1be7
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001d7ce
jmp 0x1001f0b1
mov al, 1
mov ecx, dword [esi + 0x1c4]
movzx edx, byte [ecx]
cmp edx, 3
setne ah
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
sub ebx, 0xb0a63220
sub ebx, 1
add ebx, 0xb0a63220
imul edx, ebx
and edx, 1
cmp edx, 0
sete cl
cmp edi, 0xa
setl ch
mov dl, cl
xor dl, 1
mov dh, ch
xor dh, 1
xor al, 1
mov bl, dl
and bl, 1
and cl, al
mov bh, dh
and bh, 1
and ch, al
or bl, cl
or bh, ch
xor bl, bh
or dl, dh
xor dl, 1
or al, 1
and dl, al
or bl, dl
test bl, 1
mov byte [esi + 0x9f], ah
jne 0x1001d85c
jmp 0x1001f0b1
mov al, byte [esi + 0x9f]
test al, 1
jne 0x1001d86f
jmp 0x1001daa0
mov eax, dword [esi + 0x1bc]
movzx ecx, byte [eax]
cmp ecx, 4
jne 0x1001daa0
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor eax, 4
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
jne 0x1001daa0
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 2
mov ecx, eax
xor ecx, 0x4863e874
mov dword [esi + 0x98], eax
mov eax, edi
and eax, 0x4863e874
and edx, ecx
mov dword [esi + 0x94], eax
mov eax, ebx
and eax, 0x4863e874
mov dword [esi + 0x90], eax
mov eax, ecx
and eax, 2
mov dword [esi + 0x8c], eax
mov eax, dword [esi + 0x94]
or eax, edx
mov edx, dword [esi + 0x90]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x8c]
or edx, eax
mov eax, dword [esi + 0x88]
xor eax, edx
or edi, ebx
xor edi, 0xffffffff
or ecx, 0x4863e874
and edi, ecx
or eax, edi
mov ecx, dword [esi + 0x1b4]
mov dword [ecx], eax
mov eax, dword [esi + 0x1d8]
mov edx, dword [eax]
add edx, 1
mov dword [eax], edx
mov edx, dword [esi + 0x1dc]
mov al, byte [edx]
mov byte [ecx + 0xd], al
movzx edi, byte [edx]
sar edi, 6
mov ebx, edi
mov al, bl
mov byte [ecx + 0xe], al
movzx edi, byte [edx]
mov ebx, dword [esi + 0x98]
xor ebx, 0x3f
mov eax, edi
xor eax, ebx
and eax, edi
sar eax, 3
mov byte [ecx + 0xf], al
movzx edi, byte [edx]
mov ebx, dword [esi + 0x98]
xor ebx, 7
mov eax, edi
xor eax, ebx
and eax, edi
mov byte [ecx + 0x10], al
movzx edi, al
cmp edi, 5
jne 0x1001da9b
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1c4]
movzx edx, byte [ecx]
xor eax, 1
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
jne 0x1001da9b
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x981c6d78
sub edx, 1
sub edx, 0x981c6d78
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001da17
jmp 0x1001f0b6
mov al, 1
mov ecx, dword [esi + 0x1b8]
mov byte [ecx], 4
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
add ebx, 0xbee68260
sub ebx, 1
sub ebx, 0xbee68260
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 0
mov dh, ch
and dh, 0
and ah, al
mov bl, dl
and bl, 0
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 0
and ch, al
or dh, ch
test dh, 1
jne 0x1001da96
jmp 0x1001f0b6
jmp 0x1001da9b
jmp 0x1001daa0
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001db11
jmp 0x1001f0c4
mov al, 1
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
add edx, 0xffffffff
mov dword [ecx], edx
mov edx, dword [esi + 0x1b8]
movzx edi, byte [edx]
mov ebx, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, ebx
sub edx, 0x7db3b06
sub edx, 1
add edx, 0x7db3b06
imul ebx, edx
and ebx, 1
cmp ebx, 0
sete ah
cmp ecx, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 0
mov dh, ch
and dh, 0
and ah, al
mov bl, dl
and bl, 0
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 0
and ch, al
or dh, ch
test dh, 1
mov dword [esi + 0x84], edi
jne 0x1001dba6
jmp 0x1001f0c4
mov eax, dword [esi + 0x84]
sub eax, 4
mov dword [esi + 0x80], eax
je 0x1001ddd8
jmp 0x1001dbc0
mov eax, dword [esi + 0x84]
sub eax, 2
mov dword [esi + 0x7c], eax
je 0x1001dcea
jmp 0x1001dbd7
mov eax, dword [esi + 0x84]
sub eax, 1
mov dword [esi + 0x78], eax
jne 0x1001ddff
jmp 0x1001dbee
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001dc5f
jmp 0x1001f0d9
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 0x40
xor edx, 0x40
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
movzx edi, byte [edi]
xor eax, 0xff
mov ebx, edi
xor ebx, eax
and ebx, edi
mov dword [ecx + 0x24], ebx
mov eax, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, eax
sub ebx, 0xeac69a25
sub ebx, 1
add ebx, 0xeac69a25
imul eax, ebx
and eax, 1
cmp eax, 0
sete al
cmp edi, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
jne 0x1001dce5
jmp 0x1001f0d9
jmp 0x1001ddff
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x250a368d
sub edi, 1
sub edi, 0x250a368d
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001dd60
jmp 0x1001f12d
mov eax, 0
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 0x80
xor edx, 0x80
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
movzx edi, word [edi]
mov dword [ecx + 0x24], edi
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub eax, 1
mov ecx, edi
add ecx, eax
imul edi, ecx
and edi, 1
cmp edi, 0
sete al
cmp ebx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
jne 0x1001ddd3
jmp 0x1001f12d
jmp 0x1001ddff
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x100
xor ecx, 0x100
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
mov edx, dword [edx]
mov dword [eax + 0x24], edx
mov eax, dword [esi + 0x1b8]
movzx ecx, byte [eax]
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
add edi, ecx
mov dword [edx], edi
jmp 0x1001de62
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor eax, 1
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
je 0x1001de5d
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x9000000
xor ecx, 0x9000000
or edx, ecx
mov dword [eax], edx
jmp 0x1001e82d
jmp 0x1001de62
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1d4]
movzx edx, byte [ecx]
xor edx, 0xffffffff
mov edi, eax
xor edi, 0x10
xor eax, 0xcd2887ad
or edx, edi
or eax, 0xcd2887ad
xor edx, 0xffffffff
and edx, eax
cmp edx, 0
je 0x1001e145
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1d4]
movzx edx, byte [ecx]
xor eax, 0x40
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
je 0x1001dfe2
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001df0d
jmp 0x1001f1a6
mov eax, 0
mov ecx, 0xffffffff
mov edx, dword [esi + 0x1cc]
movzx edi, byte [edx]
xor edi, 0xffffffff
mov ebx, ecx
xor ebx, 2
xor ecx, 0x373c079e
or edi, ebx
or ecx, 0x373c079e
xor edi, 0xffffffff
and edi, ecx
cmp edi, 0
setne cl
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub eax, 1
mov edx, edi
add edx, eax
imul edi, edx
and edi, 1
cmp edi, 0
sete ch
cmp ebx, 0xa
setl al
mov ah, ch
and ah, al
xor ch, al
or ah, ch
test ah, 1
mov byte [esi + 0x77], cl
jne 0x1001df96
jmp 0x1001f1a6
mov al, byte [esi + 0x77]
test al, 1
jne 0x1001dfa6
jmp 0x1001dfdd
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x400
xor ecx, 0x400
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
movzx edx, word [edx]
mov dword [eax + 0x20], edx
mov edx, dword [ecx]
add edx, 2
mov dword [ecx], edx
jmp 0x1001e82d
jmp 0x1001e5e9
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor edx, 0xffffffff
mov edi, eax
xor edi, 2
xor eax, 0x2e1f4a6
or edx, edi
or eax, 0x2e1f4a6
xor edx, 0xffffffff
and edx, eax
cmp edx, 0
je 0x1001e06b
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
not edx
and edx, 0xc865fe08
mov edi, ecx
and edi, 0x379a01f7
add edx, edi
xor edx, 0xc865fe00
and ecx, 8
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
movzx edx, word [edx]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 0
mov edx, dword [ecx]
add edx, 2
mov dword [ecx], edx
jmp 0x1001e140
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x35755405
sub edx, 1
add edx, 0x35755405
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001e0b8
jmp 0x1001f1ab
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x10
xor ecx, 0x10
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
mov edx, dword [edx]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 0
mov edx, dword [ecx]
add edx, 4
mov dword [ecx], edx
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
sub ebx, 0x5bd183cc
sub ebx, 1
add ebx, 0x5bd183cc
imul edx, ebx
and edx, 1
cmp edx, 0
sete al
cmp edi, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
jne 0x1001e13b
jmp 0x1001f1ab
jmp 0x1001e140
jmp 0x1001e145
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1d4]
movzx edx, byte [ecx]
xor edx, 0xffffffff
mov edi, eax
xor edi, 4
xor eax, 0x997df672
or edx, edi
or eax, 0x997df672
xor edx, 0xffffffff
and edx, eax
cmp edx, 0
je 0x1001e3bc
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001e1cb
jmp 0x1001f1e2
mov al, 1
mov ecx, 0xffffffff
mov edx, dword [esi + 0x1b4]
mov edi, dword [edx]
xor edi, 0xffffffff
mov ebx, ecx
xor ebx, 8
xor ecx, 0xcc893e06
or edi, ebx
or ecx, 0xcc893e06
xor edi, 0xffffffff
and edi, ecx
cmp edi, 0
setne ah
mov ecx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, ecx
sub ebx, 0x15c5f0c5
sub ebx, 1
add ebx, 0x15c5f0c5
imul ecx, ebx
and ecx, 1
cmp ecx, 0
sete cl
cmp edi, 0xa
setl ch
mov dl, cl
xor dl, 1
mov dh, ch
xor dh, 1
xor al, 1
mov bl, dl
and bl, 1
and cl, al
mov bh, dh
and bh, 1
and ch, al
or bl, cl
or bh, ch
xor bl, bh
or dl, dh
xor dl, 1
or al, 1
and dl, al
or bl, dl
test bl, 1
mov byte [esi + 0x76], ah
jne 0x1001e27e
jmp 0x1001f1e2
mov al, byte [esi + 0x76]
test al, 1
jne 0x1001e28e
jmp 0x1001e2c2
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x2000
xor ecx, 0x2000
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
movzx edx, word [edx]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 0
jmp 0x1001e3ac
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001e333
jmp 0x1001f1e7
mov eax, 0
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 8
xor edx, 8
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
movzx edi, word [edi]
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x1c], 0
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub eax, 1
mov ecx, edi
add ecx, eax
imul edi, ecx
and edi, 1
cmp edi, 0
sete al
cmp ebx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
jne 0x1001e3a7
jmp 0x1001f1e7
jmp 0x1001e3ac
mov eax, dword [esi + 0x1d8]
mov ecx, dword [eax]
add ecx, 2
mov dword [eax], ecx
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1d4]
movzx edx, byte [ecx]
xor edx, 0xffffffff
mov edi, eax
xor edi, 2
xor eax, 0x7fdb4084
or edx, edi
or eax, 0x7fdb4084
xor edx, 0xffffffff
and edx, eax
cmp edx, 0
je 0x1001e42a
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 4
xor ecx, 4
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
mov edi, edx
inc edi
mov dword [ecx], edi
mov bl, byte [edx]
and bl, bl
movzx edx, bl
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 0
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0xdc497edf
sub edi, 1
add edi, 0xdc497edf
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001e4a0
jmp 0x1001f215
mov eax, 0
mov ecx, 0xffffffff
mov edx, dword [esi + 0x1d4]
movzx edi, byte [edx]
xor ecx, 0x40
mov ebx, edi
xor ebx, ecx
and ebx, edi
cmp ebx, 0
setne cl
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub eax, 1
mov edx, edi
add edx, eax
imul edi, edx
and edi, 1
cmp edi, 0
sete ch
cmp ebx, 0xa
setl al
mov ah, ch
and ah, al
xor ch, al
or ah, ch
test ah, 1
mov byte [esi + 0x75], cl
jne 0x1001e511
jmp 0x1001f215
mov al, byte [esi + 0x75]
test al, 1
jne 0x1001e521
jmp 0x1001e70b
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x56ff4097
sub edi, 1
add edi, 0x56ff4097
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1001e597
jmp 0x1001f21a
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x672f8036
sub edx, 1
add edx, 0x672f8036
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001e5e4
jmp 0x1001f21a
jmp 0x1001e5e9
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x8e5d049b
sub edi, 1
add edi, 0x8e5d049b
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001e65f
jmp 0x1001f21f
mov al, 1
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 0x800
xor edx, 0x800
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
mov edi, dword [edi]
mov dword [ecx + 0x20], edi
mov edi, dword [edx]
add edi, 4
mov dword [edx], edi
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, edi
add ecx, 0x3f13735c
sub ecx, 1
sub ecx, 0x3f13735c
imul edi, ecx
and edi, 1
cmp edi, 0
sete ah
cmp ebx, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 1
mov dh, ch
and dh, 1
and ah, al
mov bl, dl
and bl, 1
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 1
and ch, al
or dh, ch
test dh, 1
jne 0x1001e706
jmp 0x1001f21f
jmp 0x1001e828
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1d4]
movzx edx, byte [ecx]
xor eax, 0x20
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
je 0x1001e789
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 0x200
xor edx, 0x200
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
mov ebx, edi
add ebx, 1
mov dword [edx], ebx
movzx edi, byte [edi]
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 0xff
xor eax, 0x9550995c
or edi, ebx
or eax, 0x9550995c
xor edi, 0xffffffff
and edi, eax
mov dword [ecx + 0x20], edi
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xee52a197
sub edx, 1
add edx, 0xee52a197
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001e7d6
jmp 0x1001f2a1
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x5a1d2e66
sub edx, 1
sub edx, 0x5a1d2e66
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001e823
jmp 0x1001f2a1
jmp 0x1001e828
jmp 0x1001e82d
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 0
mov dh, ch
and dh, 0
and ah, al
mov bl, dl
and bl, 0
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 0
and ch, al
or dh, ch
test dh, 1
jne 0x1001e89e
jmp 0x1001f2a6
mov eax, dword [esi + 0x1e8]
cmp dword [eax], 0
setne cl
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
add ebx, 0xd5ee3c9
sub ebx, 1
sub ebx, 0xd5ee3c9
imul edx, ebx
and edx, 1
cmp edx, 0
sete ch
cmp edi, 0xa
setl al
mov ah, ch
and ah, al
xor ch, al
or ah, ch
test ah, 1
mov byte [esi + 0x74], cl
jne 0x1001e901
jmp 0x1001f2a6
mov al, byte [esi + 0x74]
test al, 1
jne 0x1001e911
jmp 0x1001ea34
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x61319104
sub edi, 1
add edi, 0x61319104
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001e987
jmp 0x1001f2ab
mov al, 1
mov ecx, dword [esi + 0x1e8]
cmp dword [ecx], 0xf
setb dl
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, edi
sub ecx, 0xebb71cea
sub ecx, 1
add ecx, 0xebb71cea
imul edi, ecx
and edi, 1
cmp edi, 0
sete ah
cmp ebx, 0xa
setl dh
mov cl, ah
xor cl, 1
mov ch, dh
xor ch, 1
xor al, 0
mov bl, cl
and bl, 0
and ah, al
mov bh, ch
and bh, 0
and dh, al
or bl, ah
or bh, dh
xor bl, bh
or cl, ch
xor cl, 1
or al, 0
and cl, al
or bl, cl
test bl, 1
mov byte [esi + 0x73], dl
jne 0x1001ea0f
jmp 0x1001f2ab
mov al, byte [esi + 0x73]
test al, 1
jne 0x1001ea1f
jmp 0x1001ea34
mov eax, dword [esi + 0x1e8]
mov ecx, dword [eax]
mov dl, cl
movzx ecx, dl
mov dword [esi + 0x6c], ecx
jmp 0x1001eb01
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1001ea7e
jmp 0x1001f2b0
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xc7d13275
sub edi, 1
sub edi, 0xc7d13275
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1001eaf4
jmp 0x1001f2b0
mov eax, 0xf
mov dword [esi + 0x6c], eax
jmp 0x1001eb01
mov eax, dword [esi + 0x6c]
mov cl, al
mov eax, dword [esi + 0x19c]
mov byte [eax], cl
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
mov ebx, dword [esi + 0x1e4]
mov eax, dword [ebx]
sub edi, 0xaf226bb4
sub edi, eax
add edi, 0xaf226bb4
mov eax, edi
mov cl, al
mov eax, dword [esi + 0x1b4]
mov byte [eax + 4], cl
movzx edi, cl
mov eax, dword [esi + 0x19c]
movzx eax, byte [eax]
cmp edi, eax
jle 0x1001eb72
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x5000000
xor ecx, 0x5000000
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x19c]
mov bl, byte [ecx]
mov byte [eax + 4], bl
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 0
mov dh, ch
and dh, 0
and ah, al
mov bl, dl
and bl, 0
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 0
and ch, al
or dh, ch
test dh, 1
jne 0x1001ebe3
jmp 0x1001f2b5
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
xor eax, 0x1000000
mov edi, edx
xor edi, eax
and edi, edx
cmp edi, 0
setne bl
mov eax, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, eax
sub edi, 0x8e9963cb
sub edi, 1
add edi, 0x8e9963cb
imul eax, edi
and eax, 1
cmp eax, 0
sete bh
cmp edx, 0xa
setl al
mov ah, bh
and ah, al
xor bh, al
or ah, bh
test ah, 1
mov byte [esi + 0x6b], bl
jne 0x1001ec55
jmp 0x1001f2b5
mov al, byte [esi + 0x6b]
test al, 1
jne 0x1001ec65
jmp 0x1001ec6f
mov eax, dword [esi + 0x1b4]
mov byte [eax + 4], 0
mov eax, dword [esi + 0x1ec]
cmp dword [eax], 0
je 0x1001ecb1
mov eax, 0x28
mov ecx, dword [esi + 0x1ec]
mov edx, dword [ecx]
mov edi, dword [esi + 0x1b4]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], 0x28
mov dword [esi + 0x64], eax
call fcn.1001fd00
add esp, 0xc
mov eax, dword [esi + 0x1b4]
movzx eax, byte [eax + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, 0
mov ecx, 0x28
lea edx, [0x10140d74]
mov edi, 4
mov dword [esi + 0x60], eax
mov eax, edi
mov dword [esi + 0x5c], edi
mov dword [esi + 0x58], ecx
mov dword [esi + 0x54], edx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x50], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x4c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x48], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x44], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x40], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x3c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x38], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x34], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x30], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x2c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x28], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x24], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x20], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, 0x28
mov dword [esi + 0x1c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x50]
mov edx, dword [esi + 0x20c]
mov dword [ecx], edx
mov edi, dword [esi + 0x4c]
mov ebx, dword [esi + 0x200]
mov dword [edi], ebx
mov ecx, dword [esi + 0x48]
mov edx, dword [esi + 0x204]
mov dword [ecx], edx
mov ecx, dword [esi + 0x40]
mov byte [ecx], 0
mov ecx, dword [esi + 0x48]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x3c]
mov dword [edx], ecx
mov ecx, dword [esi + 0x30]
mov byte [ecx], 0
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x54]
mov dword [ecx], edx
mov ecx, dword [esi + 0x1c]
mov byte [ecx], 0
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
call fcn.10020350
add esp, 0xc
mov eax, dword [esi + 0x44]
mov byte [eax], 0x10
jmp 0x10019e06
mov eax, dword [esi + 0x1d8]
mov ecx, dword [eax]
mov edx, ecx
add edx, 1
mov dword [eax], edx
mov bl, byte [ecx]
mov ecx, dword [esi + 0x1dc]
mov byte [ecx], bl
jmp 0x1001a155
mov eax, dword [esi + 0x1dc]
mov cl, byte [eax]
mov edx, dword [esi + 0x1b4]
mov byte [edx + 5], cl
mov edi, dword [esi + 0x1cc]
movzx ebx, byte [edi]
mov eax, ebx
and eax, 8
xor ebx, 8
or eax, ebx
mov cl, al
mov byte [edi], cl
jmp 0x1001a432
jmp 0x1001a773
jmp 0x1001a886
mov eax, dword [esi + 0x1cc]
movzx ecx, byte [eax]
mov edx, ecx
and edx, 0x80
xor ecx, 0x80
or edx, ecx
mov bl, dl
mov byte [eax], bl
jmp 0x1001a997
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1cc]
movzx edx, byte [ecx]
xor eax, 7
mov edi, edx
xor edi, eax
and edi, edx
shl edi, 0x13
mov eax, dword [esi + 0x1b4]
mov dword [eax], edi
jmp 0x1001aa52
mov eax, dword [esi + 0x1b4]
mov byte [eax + 4], 5
jmp 0x1001abe4
jmp 0x1001acce
jmp 0x1001ad91
jmp 0x1001af0e
mov eax, 0
mov ecx, 4
mov edx, dword [esi + 0x1dc]
mov bl, byte [edx]
mov edi, dword [esi + 0x1d0]
mov byte [edi], bl
movzx edx, byte [edi]
mov dword [esi + 0x18], eax
mov eax, edx
cdq
idiv ecx
mov edx, dword [esi + 0x1c8]
mov edx, dword [edx]
movzx eax, byte [edx + eax]
movzx edx, byte [edi]
mov dword [esi + 0x14], eax
mov eax, edx
cdq
idiv ecx
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x14]
sub eax, ecx
mov ecx, dword [esi + 0x18]
sub ecx, edx
add eax, ecx
mov ecx, dword [esi + 0x18]
sub ecx, eax
mov eax, dword [esi + 0x1c8]
mov edx, dword [eax]
mov bl, byte [edx + ecx]
mov ecx, dword [esi + 0x1d4]
mov byte [ecx], bl
jmp 0x1001afdb
mov eax, dword [esi + 0x1d4]
mov cl, byte [eax]
add cl, 0x9c
add cl, 1
sub cl, 0x9c
mov byte [eax], cl
jmp 0x1001b17a
mov eax, dword [esi + 0x1e0]
mov byte [eax], 0
jmp 0x1001b25a
jmp 0x1001b3a2
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x3000000
xor ecx, 0x3000000
or edx, ecx
mov dword [eax], edx
jmp 0x1001b522
jmp 0x1001b604
jmp 0x1001b7c4
jmp 0x1001b8d8
jmp 0x1001b9e0
jmp 0x1001baa3
jmp 0x1001bcd9
mov eax, dword [esi + 0x1d0]
mov cl, byte [eax]
mov edx, dword [esi + 0x1a4]
mov byte [edx], cl
jmp 0x1001be05
jmp 0x1001bff4
jmp 0x1001c14d
mov eax, dword [esi + 0x1c4]
mov byte [eax], 3
jmp 0x1001c28f
jmp 0x1001c3c9
jmp 0x1001c462
jmp 0x1001c55e
jmp 0x1001c64a
jmp 0x1001c751
lea eax, [0x10140d74]
add eax, 0x1e9
mov ecx, dword [esi + 0x1c8]
mov dword [ecx], eax
mov eax, dword [ecx]
add eax, 0x1f8
add eax, 0xfffffe17
mov edx, dword [esi + 0x1a0]
mov dword [edx], eax
jmp 0x1001c874
jmp 0x1001c969
mov eax, dword [esi + 0x1c8]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x1001ca7c
mov eax, dword [esi + 0x1c8]
mov ecx, dword [eax]
add ecx, 2
mov dword [eax], ecx
jmp 0x1001cc0c
jmp 0x1001cd0d
jmp 0x1001cdd5
jmp 0x1001cf9a
jmp 0x1001d060
jmp 0x1001d160
jmp 0x1001d2d3
jmp 0x1001d4ce
mov eax, dword [esi + 0x1b8]
mov byte [eax], 1
jmp 0x1001d58e
mov eax, dword [esi + 0x1b8]
movzx ecx, byte [eax]
shl ecx, 1
mov dl, cl
mov byte [eax], dl
jmp 0x1001d6c8
jmp 0x1001d7ce
mov eax, dword [esi + 0x1b8]
mov byte [eax], 4
jmp 0x1001da17
mov eax, dword [esi + 0x1d8]
mov ecx, dword [eax]
add ecx, 0xffffffff
mov dword [eax], ecx
jmp 0x1001db11
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
and edi, 0x40
xor edx, 0x40
or edi, edx
mov dword [ecx], edi
mov edx, dword [esi + 0x1d8]
mov edi, dword [edx]
movzx edi, byte [edi]
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 0xff
xor eax, 0x4a683454
or edi, ebx
or eax, 0x4a683454
xor edi, 0xffffffff
and edi, eax
mov dword [ecx + 0x24], edi
jmp 0x1001dc5f
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 0x80
xor eax, 0xff155f4
mov ecx, edi
and ecx, 0xff155f4
and edx, eax
mov dword [esi + 0x10], eax
mov eax, ebx
and eax, 0xff155f4
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x10]
and eax, 0x80
or ecx, edx
mov edx, dword [esi + 0xc]
or edx, eax
xor ecx, edx
or edi, ebx
xor edi, 0xffffffff
mov eax, dword [esi + 0x10]
or eax, 0xff155f4
and edi, eax
or ecx, edi
mov eax, dword [esi + 0x1b4]
mov dword [eax], ecx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
movzx edx, word [edx]
mov dword [eax + 0x24], edx
jmp 0x1001dd60
jmp 0x1001df0d
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0x10
xor ecx, 0x10
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
mov edx, dword [edx]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 0
mov edx, dword [ecx]
add edx, 4
mov dword [ecx], edx
jmp 0x1001e0b8
jmp 0x1001e1cb
mov eax, dword [esi + 0x1b4]
mov ecx, dword [eax]
mov edx, ecx
and edx, 8
xor ecx, 8
or edx, ecx
mov dword [eax], edx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
movzx edx, word [edx]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], 0
jmp 0x1001e333
jmp 0x1001e4a0
jmp 0x1001e597
mov eax, 0xffffffff
mov ecx, dword [esi + 0x1b4]
mov edx, dword [ecx]
mov edi, edx
xor edi, 0xffffffff
mov ebx, eax
xor ebx, 0x800
xor eax, 0xcd3fcd00
mov ecx, edi
and ecx, 0xcd3fcd00
and edx, eax
mov dword [esi + 8], eax
mov eax, ebx
and eax, 0xcd3fcd00
mov dword [esi + 4], eax
mov eax, dword [esi + 8]
and eax, 0x800
or ecx, edx
mov edx, dword [esi + 4]
or edx, eax
xor ecx, edx
or edi, ebx
xor edi, 0xffffffff
mov eax, dword [esi + 8]
or eax, 0xcd3fcd00
and edi, eax
or ecx, edi
mov eax, dword [esi + 0x1b4]
mov dword [eax], ecx
mov ecx, dword [esi + 0x1d8]
mov edx, dword [ecx]
mov edx, dword [edx]
mov dword [eax + 0x20], edx
mov edx, dword [ecx]
add edx, 4
mov dword [ecx], edx
jmp 0x1001e65f
jmp 0x1001e7d6
jmp 0x1001e89e
jmp 0x1001e987
jmp 0x1001ea7e
jmp 0x1001ebe3
mov byte [esp + 0x1c7], 3
movzx eax, byte [esp + 0x1c6]
cmp eax, 4
jg 0x10096100
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov esi, dword [0x101537c4]
sub ecx, 1
mov edi, edx
add edi, ecx
imul edx, edi
and edx, 1
cmp edx, 0
sete ah
cmp esi, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x10096089
jmp 0x1009949c
mov eax, 0
movzx ecx, byte [esp + 0x1c6]
cmp ecx, 1
sete dl
mov ecx, dword [0x101537c8]
mov esi, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete dh
cmp esi, 0xa
setl bl
mov bh, dh
and bh, bl
xor dh, bl
or bh, dh
test bh, 1
mov byte [esp + 0xbb], dl
jne 0x100960ec
jmp 0x1009949c
mov al, byte [esp + 0xbb]
test al, 1
jne 0x10096100
jmp 0x1009619c
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x1ed79529
sub edx, 1
sub edx, 0x1ed79529
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1009614d
jmp 0x100994a1
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10096197
jmp 0x100994a1
jmp 0x100970ea
jmp 0x1009710c
mov byte [esp + 0x1c7], 3
movzx eax, byte [esp + 0x1c6]
cmp eax, 4
je 0x100961cf
movzx eax, byte [esp + 0x1c6]
cmp eax, 5
jne 0x100961d4
jmp 0x100970ea
jmp 0x1009710c
mov eax, dword [esp + 0x198]
mov ecx, eax
and ecx, 0x11000000
xor eax, 0x11000000
or ecx, eax
mov dword [esp + 0x198], ecx
jmp 0x10098a87
mov eax, dword [esp + 0x1d0]
mov ecx, eax
add ecx, 1
mov dword [esp + 0x1d0], ecx
mov dl, byte [eax]
mov byte [esp + 0x1d6], dl
movzx eax, byte [esp + 0x1c6]
cmp eax, 1
jg 0x1009744b
movzx eax, byte [esp + 0x1ce]
cmp eax, 0xf6
jne 0x100971b7
mov eax, 0xffffffff
movzx ecx, byte [esp + 0x1cf]
mov edx, ecx
xor edx, 0xffffffff
mov esi, eax
xor esi, 2
xor eax, 0xe154259d
mov edi, edx
and edi, 0xe154259d
and ecx, eax
mov ebx, esi
and ebx, 0xe154259d
mov dword [esp + 0x78], eax
and eax, 2
or edi, ecx
or ebx, eax
xor edi, ebx
or edx, esi
xor edx, 0xffffffff
mov eax, dword [esp + 0x78]
or eax, 0xe154259d
and edx, eax
or edi, edx
mov eax, edi
mov byte [esp + 0x1cf], al
jmp 0x10097386
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10097201
jmp 0x1009957e
movzx eax, byte [esp + 0x1ce]
cmp eax, 0xf7
sete cl
mov eax, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, eax
sub esi, 0x6cb91e27
sub esi, 1
add esi, 0x6cb91e27
imul eax, esi
and eax, 1
cmp eax, 0
sete ch
cmp edx, 0xa
setl bl
mov bh, ch
and bh, bl
xor ch, bl
or bh, ch
test bh, 1
mov byte [esp + 0x77], cl
jne 0x10097263
jmp 0x1009957e
mov al, byte [esp + 0x77]
test al, 1
jne 0x10097274
jmp 0x10097381
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov esi, dword [0x101537c4]
sub ecx, 1
mov edi, edx
add edi, ecx
imul edx, edi
and edx, 1
cmp edx, 0
sete ah
cmp esi, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x100972e5
jmp 0x10099583
mov al, 1
movzx ecx, byte [esp + 0x1cf]
mov edx, ecx
and edx, 0x10
xor ecx, 0x10
or edx, ecx
mov ah, dl
mov byte [esp + 0x1cf], ah
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0xc32218ce
sub esi, 1
sub esi, 0xc32218ce
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1009737c
jmp 0x10099583
jmp 0x10097381
jmp 0x10097386
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100973d0
jmp 0x100995a8
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0xd6b24680
sub esi, 1
sub esi, 0xd6b24680
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x10097446
jmp 0x100995a8
jmp 0x1009744b
movzx eax, byte [esp + 0x1c7]
mov ecx, eax
sub ecx, 2
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], ecx
je 0x100977b6
jmp 0x1009746b
mov eax, dword [esp + 0x70]
sub eax, 1
mov dword [esp + 0x68], eax
je 0x100977a9
jmp 0x10097481
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x100978fa
jmp 0x10097492
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0xe5752302
sub esi, 1
sub esi, 0xe5752302
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x10097508
jmp 0x100995ad
mov al, 1
mov ecx, 0xffffffff
movzx edx, byte [esp + 0x1cd]
xor edx, 0xffffffff
mov esi, ecx
xor esi, 4
xor ecx, 0xa53cfe46
or edx, esi
or ecx, 0xa53cfe46
xor edx, 0xffffffff
and edx, ecx
cmp edx, 0
setne ah
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0xb64a4187
sub esi, 1
sub esi, 0xb64a4187
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov cl, bl
xor cl, 1
mov ch, bh
xor ch, 1
xor al, 1
mov dl, cl
and dl, 1
and bl, al
mov dh, ch
and dh, 1
and bh, al
or dl, bl
or dh, bh
xor dl, dh
or cl, ch
xor cl, 1
or al, 1
and cl, al
or dl, cl
test dl, 1
mov byte [esp + 0x67], ah
jne 0x100975bc
jmp 0x100995ad
mov al, byte [esp + 0x67]
test al, 1
jne 0x100975cd
jmp 0x100976a4
movzx eax, byte [esp + 0x1c5]
cmp eax, 6
jne 0x10097605
mov eax, dword [esp + 0x198]
mov ecx, eax
and ecx, 0x400
xor eax, 0x400
or ecx, eax
mov dword [esp + 0x198], ecx
mov byte [esp + 0x1c4], 2
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x24a9f3f7
sub edx, 1
sub edx, 0x24a9f3f7
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10097652
jmp 0x100995b2
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x385e156
sub edx, 1
add edx, 0x385e156
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1009769f
jmp 0x100995b2
jmp 0x100976e1
movzx eax, byte [esp + 0x1c5]
cmp eax, 5
jne 0x100976dc
mov eax, dword [esp + 0x198]
mov ecx, eax
and ecx, 0x800
xor eax, 0x800
or ecx, eax
mov dword [esp + 0x198], ecx
mov byte [esp + 0x1c4], 4
jmp 0x100976e1
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0x7d95ed4e
sub esi, 1
add esi, 0x7d95ed4e
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x10097757
jmp 0x100995b7
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xa504abf5
sub edx, 1
sub edx, 0xa504abf5
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100977a4
jmp 0x100995b7
jmp 0x100978fa
mov byte [esp + 0x1c4], 1
jmp 0x100978fa
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0x2dc5b71c
sub esi, 1
sub esi, 0x2dc5b71c
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1009782c
jmp 0x100995bc
mov al, 1
mov ecx, 0xffffffff
mov byte [esp + 0x1c4], 2
movzx edx, byte [esp + 0x1cd]
xor ecx, 4
mov esi, edx
xor esi, ecx
and esi, edx
cmp esi, 0
setne ah
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0x65b2b546
sub esi, 1
sub esi, 0x65b2b546
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov cl, bl
xor cl, 1
mov ch, bh
xor ch, 1
xor al, 1
mov dl, cl
and dl, 1
and bl, al
mov dh, ch
and dh, 1
and bh, al
or dl, bl
or dh, bh
xor dl, dh
or cl, ch
xor cl, 1
or al, 1
and cl, al
or dl, cl
test dl, 1
mov byte [esp + 0x66], ah
jne 0x100978d0
jmp 0x100995bc
mov al, byte [esp + 0x66]
test al, 1
jne 0x100978f5
jmp 0x100978e1
movzx eax, byte [esp + 0x1c4]
shl eax, 1
mov cl, al
mov byte [esp + 0x1c4], cl
jmp 0x100978fa
movzx eax, byte [esp + 0x1c7]
cmp eax, 3
je 0x10097bcf
movzx eax, byte [esp + 0x1c5]
cmp eax, 4
jne 0x10097bcf
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov esi, dword [0x101537c4]
sub ecx, 1
mov edi, edx
add edi, ecx
imul edx, edi
and edx, 1
cmp edx, 0
sete ah
cmp esi, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x10097991
jmp 0x100995c9
mov al, 1
mov ecx, 0xffffffff
mov edx, dword [esp + 0x198]
mov esi, edx
and esi, 2
xor edx, 2
or esi, edx
mov dword [esp + 0x198], esi
mov edx, dword [esp + 0x1d0]
add edx, 1
mov dword [esp + 0x1d0], edx
mov ah, byte [esp + 0x1d6]
mov byte [esp + 0x1a5], ah
movzx edx, byte [esp + 0x1d6]
sar edx, 6
mov ah, dl
mov byte [esp + 0x1a6], ah
movzx edx, byte [esp + 0x1d6]
xor edx, 0xffffffff
mov esi, ecx
xor esi, 0x3f
mov edi, ecx
xor edi, 0x86702e3d
or edx, esi
or edi, 0x86702e3d
xor edx, 0xffffffff
and edx, edi
sar edx, 3
mov ah, dl
mov byte [esp + 0x1a7], ah
movzx edx, byte [esp + 0x1d6]
xor edx, 0xffffffff
mov esi, ecx
xor esi, 7
xor ecx, 0xc16b2c5e
or edx, esi
or ecx, 0xc16b2c5e
xor edx, 0xffffffff
and edx, ecx
mov ah, dl
mov byte [esp + 0x1a8], ah
movzx ecx, ah
cmp ecx, 5
sete ah
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0x2859766b
sub esi, 1
sub esi, 0x2859766b
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov cl, bl
xor cl, 1
mov ch, bh
xor ch, 1
xor al, 0
mov dl, cl
and dl, 0
and bl, al
mov dh, ch
and dh, 0
and bh, al
or dl, bl
or dh, bh
xor dl, dh
or cl, ch
xor cl, 1
or al, 0
and cl, al
or dl, cl
test dl, 1
mov byte [esp + 0x65], ah
jne 0x10097adf
jmp 0x100995c9
mov al, byte [esp + 0x65]
test al, 1
jne 0x10097af0
jmp 0x10097b33
mov eax, 0xffffffff
movzx ecx, byte [esp + 0x1c7]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 1
xor eax, 0xb3dce882
or ecx, edx
or eax, 0xb3dce882
xor ecx, 0xffffffff
and ecx, eax
cmp ecx, 0
jne 0x10097b33
mov byte [esp + 0x1c4], 4
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10097b7d
jmp 0x1009967e
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x39782b0e
sub edx, 1
add edx, 0x39782b0e
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10097bca
jmp 0x1009967e
jmp 0x10097bcf
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x4ff48dc4
sub edx, 1
sub edx, 0x4ff48dc4
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10097c1c
jmp 0x10099683
mov al, 1
mov ecx, dword [esp + 0x1d0]
add ecx, 0xffffffff
mov dword [esp + 0x1d0], ecx
movzx ecx, byte [esp + 0x1c4]
mov edx, dword [0x101537c8]
mov esi, dword [0x101537c4]
mov edi, edx
add edi, 0x3da5cda2
sub edi, 1
sub edi, 0x3da5cda2
imul edx, edi
and edx, 1
cmp edx, 0
sete ah
cmp esi, 0xa
setl bl
mov bh, ah
xor bh, 1
mov dl, bl
xor dl, 1
xor al, 0
mov dh, bh
and dh, 0
and ah, al
mov byte [esp + 0x64], al
mov al, dl
and al, 0
mov byte [esp + 0x63], al
mov al, byte [esp + 0x64]
and bl, al
or dh, ah
mov ah, byte [esp + 0x63]
or ah, bl
xor dh, ah
or bh, dl
xor bh, 1
or al, 0
and bh, al
or dh, bh
test dh, 1
mov dword [esp + 0x5c], ecx
jne 0x10097cc1
jmp 0x10099683
mov eax, dword [esp + 0x5c]
sub eax, 4
mov dword [esp + 0x58], eax
je 0x10097f12
jmp 0x10097cd7
mov eax, dword [esp + 0x5c]
sub eax, 2
mov dword [esp + 0x54], eax
je 0x10097da8
jmp 0x10097ced
mov eax, dword [esp + 0x5c]
sub eax, 1
mov dword [esp + 0x50], eax
jne 0x10097f3f
jmp 0x10097d03
mov eax, 0xffffffff
mov ecx, dword [esp + 0x198]
mov edx, ecx
xor edx, 0xffffffff
mov esi, eax
xor esi, 0x40
mov edi, eax
xor edi, 0xf83279a8
mov ebx, edx
and ebx, 0xf83279a8
and ecx, edi
mov dword [esp + 0x4c], eax
mov eax, esi
and eax, 0xf83279a8
mov dword [esp + 0x48], eax
mov eax, edi
and eax, 0x40
or ebx, ecx
mov ecx, dword [esp + 0x48]
or ecx, eax
xor ebx, ecx
or edx, esi
xor edx, 0xffffffff
or edi, 0xf83279a8
and edx, edi
or ebx, edx
mov dword [esp + 0x198], ebx
mov eax, dword [esp + 0x1d0]
movzx eax, byte [eax]
xor eax, 0xffffffff
mov ecx, dword [esp + 0x4c]
xor ecx, 0xff
mov edx, dword [esp + 0x4c]
xor edx, 0x26d691cb
or eax, ecx
or edx, 0x26d691cb
xor eax, 0xffffffff
and eax, edx
mov dword [esp + 0x1bc], eax
jmp 0x10097f3f
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0x16d29acd
sub esi, 1
add esi, 0x16d29acd
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x10097e1e
jmp 0x1009969b
mov al, 1
mov ecx, 0xffffffff
mov edx, dword [esp + 0x198]
mov esi, edx
xor esi, 0xffffffff
mov edi, ecx
xor edi, 0x80
xor ecx, 0xa5f737e9
mov ebx, esi
and ebx, 0xa5f737e9
and edx, ecx
mov byte [esp + 0x47], al
mov eax, edi
and eax, 0xa5f737e9
mov dword [esp + 0x40], eax
mov eax, ecx
and eax, 0x80
or ebx, edx
mov edx, dword [esp + 0x40]
or edx, eax
xor ebx, edx
or esi, edi
xor esi, 0xffffffff
or ecx, 0xa5f737e9
and esi, ecx
or ebx, esi
mov dword [esp + 0x198], ebx
mov eax, dword [esp + 0x1d0]
movzx eax, word [eax]
mov dword [esp + 0x1bc], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x684095a2
sub edx, 1
sub edx, 0x684095a2
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl ah
mov cl, al
xor cl, 1
mov ch, ah
xor ch, 1
mov dl, byte [esp + 0x47]
xor dl, 0
mov dh, cl
and dh, 0
and al, dl
mov bl, ch
and bl, 0
and ah, dl
or dh, al
or bl, ah
xor dh, bl
or cl, ch
xor cl, 1
or dl, 0
and cl, dl
or dh, cl
test dh, 1
jne 0x10097f0d
jmp 0x1009969b
jmp 0x10097f3f
mov eax, dword [esp + 0x198]
mov ecx, eax
and ecx, 0x100
xor eax, 0x100
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
mov eax, dword [eax]
mov dword [esp + 0x1bc], eax
movzx eax, byte [esp + 0x1c4]
mov ecx, dword [esp + 0x1d0]
add ecx, eax
mov dword [esp + 0x1d0], ecx
jmp 0x100980d4
mov eax, 0xffffffff
movzx ecx, byte [esp + 0x1cf]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0x10
xor eax, 0xce16eb4b
or ecx, edx
or eax, 0xce16eb4b
xor ecx, 0xffffffff
and ecx, eax
cmp ecx, 0
je 0x100984fe
mov eax, 0xffffffff
movzx ecx, byte [esp + 0x1cf]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0x40
xor eax, 0x5dff968
or ecx, edx
or eax, 0x5dff968
xor ecx, 0xffffffff
and ecx, eax
cmp ecx, 0
je 0x10098270
mov eax, 0xffffffff
movzx ecx, byte [esp + 0x1cd]
xor eax, 2
mov edx, ecx
xor edx, eax
and edx, ecx
cmp edx, 0
je 0x1009826b
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x33fe2129
sub edx, 1
sub edx, 0x33fe2129
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100981bb
jmp 0x10099714
mov eax, dword [esp + 0x198]
mov ecx, eax
not ecx
and ecx, 0x13a939cc
mov edx, eax
and edx, 0xec56c633
add ecx, edx
xor ecx, 0x13a93dc4
and eax, 0x408
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
movzx eax, word [eax]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], 0
mov eax, dword [esp + 0x1d0]
add eax, 2
mov dword [esp + 0x1d0], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xa551129c
sub edx, 1
add edx, 0xa551129c
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098266
jmp 0x10099714
jmp 0x10098a87
jmp 0x100988ed
cmp byte [esp + 0x1c3], 0
je 0x100982d7
mov eax, dword [esp + 0x198]
mov ecx, eax
not ecx
and ecx, 0xe9eca255
mov edx, eax
and edx, 0x16135daa
add ecx, edx
xor ecx, 0xe9eca275
and eax, 0x20
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
movsd xmm0, qword [eax]
movsd qword [esp + 0x1b0], xmm0
mov eax, dword [esp + 0x1d0]
add eax, 8
mov dword [esp + 0x1d0], eax
jmp 0x10098436
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x90c3eed4
sub edx, 1
add edx, 0x90c3eed4
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098324
jmp 0x10099765
mov al, 1
mov ecx, 0
mov edx, 0xffffffff
movzx esi, byte [esp + 0x1cd]
xor edx, 2
mov edi, esi
xor edi, edx
and edi, esi
cmp edi, 0
setne ah
mov edx, dword [0x101537c8]
mov esi, dword [0x101537c4]
sub ecx, 1
mov edi, edx
add edi, ecx
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov cl, bl
xor cl, 1
mov ch, bh
xor ch, 1
xor al, 1
mov dl, cl
and dl, 1
and bl, al
mov dh, ch
and dh, 1
and bh, al
or dl, bl
or dh, bh
xor dl, dh
or cl, ch
xor cl, 1
or al, 1
and cl, al
or dl, cl
test dl, 1
mov byte [esp + 0x3b], ah
jne 0x100983bb
jmp 0x10099765
mov al, byte [esp + 0x3b]
test al, 1
jne 0x1009842c
jmp 0x100983cc
mov eax, dword [esp + 0x198]
mov ecx, eax
not ecx
and ecx, 0xa39561a6
mov edx, eax
and edx, 0x5c6a9e59
add ecx, edx
xor ecx, 0xa39561b6
and eax, 0x10
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
mov eax, dword [eax]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], 0
mov eax, dword [esp + 0x1d0]
add eax, 4
mov dword [esp + 0x1d0], eax
jmp 0x10098431
jmp 0x100985fd
jmp 0x10098436
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xdcbd57b0
sub edx, 1
sub edx, 0xdcbd57b0
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098483
jmp 0x1009976a
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0x4f78db36
sub esi, 1
add esi, 0x4f78db36
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x100984f9
jmp 0x1009976a
jmp 0x100984fe
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x15c12d9
sub edx, 1
sub edx, 0x15c12d9
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1009854b
jmp 0x1009976f
mov al, 1
mov ecx, 0xffffffff
movzx edx, byte [esp + 0x1cf]
xor ecx, 4
mov esi, edx
xor esi, ecx
and esi, edx
cmp esi, 0
setne ah
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0xcbd0bb13
sub esi, 1
sub esi, 0xcbd0bb13
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov cl, bl
xor cl, 1
mov ch, bh
xor ch, 1
xor al, 0
mov dl, cl
and dl, 0
and bl, al
mov dh, ch
and dh, 0
and bh, al
or dl, bl
or dh, bh
xor dl, dh
or cl, ch
xor cl, 1
or al, 0
and cl, al
or dl, cl
test dl, 1
mov byte [esp + 0x3a], ah
jne 0x100985e7
jmp 0x1009976f
mov al, byte [esp + 0x3a]
test al, 1
jne 0x100985f8
jmp 0x10098659
jmp 0x100985fd
mov eax, dword [esp + 0x198]
mov ecx, eax
not ecx
and ecx, 0x7cb7a5c1
mov edx, eax
and edx, 0x83485a3e
add ecx, edx
xor ecx, 0x7cb7a5c9
and eax, 8
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
movzx eax, word [eax]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], 0
mov eax, dword [esp + 0x1d0]
add eax, 2
mov dword [esp + 0x1d0], eax
mov eax, 0xffffffff
movzx ecx, byte [esp + 0x1cf]
xor eax, 2
mov edx, ecx
xor edx, eax
and edx, ecx
cmp edx, 0
je 0x1009876c
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100986c7
jmp 0x10099774
mov eax, dword [esp + 0x198]
mov ecx, eax
not ecx
and ecx, 0xb1e3fbd5
mov edx, eax
and edx, 0x4e1c042a
add ecx, edx
xor ecx, 0xb1e3fbd1
and eax, 4
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
mov ecx, eax
inc ecx
mov dword [esp + 0x1d0], ecx
movzx eax, byte [eax]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], 0
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x70fc0c82
sub edx, 1
sub edx, 0x70fc0c82
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098767
jmp 0x10099774
jmp 0x1009876c
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100987b6
jmp 0x100997d0
mov eax, 0xffffffff
movzx ecx, byte [esp + 0x1cf]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0x40
xor eax, 0x16d3879
or ecx, edx
or eax, 0x16d3879
xor ecx, 0xffffffff
and ecx, eax
cmp ecx, 0
setne bl
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xf427fc64
sub edx, 1
add edx, 0xf427fc64
imul eax, edx
and eax, 1
cmp eax, 0
sete bh
cmp ecx, 0xa
setl al
mov ah, bh
and ah, al
xor bh, al
or ah, bh
test ah, 1
mov byte [esp + 0x39], bl
jne 0x10098840
jmp 0x100997d0
mov al, byte [esp + 0x39]
test al, 1
jne 0x10098851
jmp 0x1009893d
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1009889b
jmp 0x100997d5
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x64d20672
sub edx, 1
sub edx, 0x64d20672
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100988e8
jmp 0x100997d5
jmp 0x100988ed
mov eax, dword [esp + 0x198]
mov ecx, eax
and ecx, 0x810
xor eax, 0x810
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
mov eax, dword [eax]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], 0
mov eax, dword [esp + 0x1d0]
add eax, 4
mov dword [esp + 0x1d0], eax
jmp 0x100989bf
mov eax, 0xffffffff
movzx ecx, byte [esp + 0x1cf]
xor eax, 0x20
mov edx, ecx
xor edx, eax
and edx, ecx
cmp edx, 0
je 0x100989ba
mov eax, dword [esp + 0x198]
mov ecx, eax
not ecx
and ecx, 0xde81f359
mov edx, eax
and edx, 0x217e0ca6
add ecx, edx
xor ecx, 0xde81f15d
and eax, 0x204
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
mov ecx, eax
inc ecx
mov dword [esp + 0x1d0], ecx
mov bl, byte [eax]
and bl, bl
movzx eax, bl
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], 0
jmp 0x100989bf
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xec9c9cd0
sub edx, 1
add edx, 0xec9c9cd0
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098a0c
jmp 0x100997da
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0x422bd56c
sub esi, 1
add esi, 0x422bd56c
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x10098a82
jmp 0x100997da
jmp 0x10098a87
cmp dword [esp + 0x1dc], 0
je 0x10098c66
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0xafb3b8f5
sub esi, 1
sub esi, 0xafb3b8f5
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x10098b0e
jmp 0x100997df
cmp dword [esp + 0x1dc], 0xf
setb al
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0xed37c90f
sub esi, 1
add esi, 0xed37c90f
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
and bh, bl
xor ah, bl
or bh, ah
test bh, 1
mov byte [esp + 0x38], al
jne 0x10098b71
jmp 0x100997df
mov al, byte [esp + 0x38]
test al, 1
jne 0x10098b82
jmp 0x10098c66
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0x13dd64e6
sub esi, 1
add esi, 0x13dd64e6
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x10098bf8
jmp 0x100997e4
mov eax, dword [esp + 0x1dc]
mov cl, al
movzx eax, cl
mov edx, dword [0x101537c8]
mov esi, dword [0x101537c4]
mov edi, edx
sub edi, 0x261d035b
sub edi, 1
add edi, 0x261d035b
imul edx, edi
and edx, 1
cmp edx, 0
sete cl
cmp esi, 0xa
setl ch
mov bl, cl
and bl, ch
xor cl, ch
or bl, cl
test bl, 1
mov dword [esp + 0x34], eax
jne 0x10098c59
jmp 0x100997e4
mov eax, dword [esp + 0x34]
mov dword [esp + 0x30], eax
jmp 0x10098c74
mov eax, 0xf
mov dword [esp + 0x30], eax
jmp 0x10098c74
mov eax, dword [esp + 0x30]
mov cl, al
mov byte [esp + 0x187], cl
mov eax, dword [esp + 0x1d0]
mov edx, dword [esp + 0x1d8]
add eax, 0xf13c0f7a
sub eax, edx
sub eax, 0xf13c0f7a
mov cl, al
mov byte [esp + 0x19c], cl
movzx eax, cl
movzx edx, byte [esp + 0x187]
cmp eax, edx
jle 0x10098d7f
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xe657c66
sub edx, 1
sub edx, 0xe657c66
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098d04
jmp 0x100997e9
mov eax, 0
mov ecx, dword [esp + 0x198]
mov edx, ecx
and edx, 0x5000000
xor ecx, 0x5000000
or edx, ecx
mov dword [esp + 0x198], edx
mov bl, byte [esp + 0x187]
mov byte [esp + 0x19c], bl
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098d7a
jmp 0x100997e9
jmp 0x10098d7f
mov eax, 0xffffffff
mov ecx, dword [esp + 0x198]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0x1000000
xor eax, 0xc54eb315
or ecx, edx
or eax, 0xc54eb315
xor ecx, 0xffffffff
and ecx, eax
cmp ecx, 0
je 0x10098e86
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098e03
jmp 0x1009985a
mov al, 1
mov byte [esp + 0x19c], 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0x6d7c8a0f
sub esi, 1
sub esi, 0x6d7c8a0f
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x10098e81
jmp 0x1009985a
jmp 0x10098e86
cmp dword [esp + 0x1e0], 0
je 0x10098f61
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xdf2fec5e
sub edx, 1
add edx, 0xdf2fec5e
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098ee4
jmp 0x10099867
mov eax, 0x28
lea ecx, [esp + 0x198]
mov edx, dword [esp + 0x1e0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x28
mov dword [esp + 0x2c], eax
call fcn.1001fd00
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xe9c38010
sub edx, 1
add edx, 0xe9c38010
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10098f5c
jmp 0x10099867
jmp 0x10098f61
movzx eax, byte [esp + 0x19c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
jmp 0x10096089
jmp 0x1009614d
jmp 0x10097201
movzx eax, byte [esp + 0x1cf]
mov ecx, eax
and ecx, 0x10
xor eax, 0x10
or ecx, eax
mov dl, cl
mov byte [esp + 0x1cf], dl
jmp 0x100972e5
jmp 0x100973d0
jmp 0x10097508
jmp 0x10097652
jmp 0x10097757
mov byte [esp + 0x1c4], 2
jmp 0x1009782c
mov eax, 0xffffffff
mov ecx, dword [esp + 0x198]
mov edx, ecx
and edx, 2
xor ecx, 2
or edx, ecx
mov dword [esp + 0x198], edx
mov ecx, dword [esp + 0x1d0]
add ecx, 1
mov dword [esp + 0x1d0], ecx
mov bl, byte [esp + 0x1d6]
mov byte [esp + 0x1a5], bl
movzx ecx, byte [esp + 0x1d6]
sar ecx, 6
mov bl, cl
mov byte [esp + 0x1a6], bl
movzx ecx, byte [esp + 0x1d6]
mov edx, eax
xor edx, 0x3f
mov esi, ecx
xor esi, edx
and esi, ecx
sar esi, 3
mov ecx, esi
mov bl, cl
mov byte [esp + 0x1a7], bl
movzx ecx, byte [esp + 0x1d6]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 7
xor eax, 0x24cfd11c
or ecx, edx
or eax, 0x24cfd11c
xor ecx, 0xffffffff
and ecx, eax
mov bl, cl
mov byte [esp + 0x1a8], bl
jmp 0x10097991
jmp 0x10097b7d
mov eax, dword [esp + 0x1d0]
add eax, 0xffffffff
mov dword [esp + 0x1d0], eax
jmp 0x10097c1c
mov eax, 0xffffffff
mov ecx, dword [esp + 0x198]
mov edx, ecx
xor edx, 0xffffffff
mov esi, eax
xor esi, 0x80
xor eax, 0xbdb180e2
mov edi, edx
and edi, 0xbdb180e2
and ecx, eax
mov ebx, esi
and ebx, 0xbdb180e2
mov dword [esp + 0x14], eax
and eax, 0x80
or edi, ecx
or ebx, eax
xor edi, ebx
or edx, esi
xor edx, 0xffffffff
mov eax, dword [esp + 0x14]
or eax, 0xbdb180e2
and edx, eax
or edi, edx
mov dword [esp + 0x198], edi
mov eax, dword [esp + 0x1d0]
movzx eax, word [eax]
mov dword [esp + 0x1bc], eax
jmp 0x10097e1e
mov eax, dword [esp + 0x198]
mov ecx, eax
and ecx, 0x408
xor eax, 0x408
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
movzx eax, word [eax]
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], 0
mov eax, dword [esp + 0x1d0]
add eax, 2
mov dword [esp + 0x1d0], eax
jmp 0x100981bb
jmp 0x10098324
jmp 0x10098483
jmp 0x1009854b
mov eax, dword [esp + 0x198]
mov ecx, eax
not ecx
and ecx, 0x26408944
mov edx, eax
and edx, 0xd9bf76bb
add ecx, edx
xor ecx, 0x26408940
and eax, 4
or ecx, eax
mov dword [esp + 0x198], ecx
mov eax, dword [esp + 0x1d0]
mov ecx, eax
inc ecx
mov dword [esp + 0x1d0], ecx
mov bl, byte [eax]
and bl, bl
movzx eax, bl
mov dword [esp + 0x1b0], eax
mov dword [esp + 0x1b4], 0
jmp 0x100986c7
jmp 0x100987b6
jmp 0x1009889b
jmp 0x10098a0c
jmp 0x10098b0e
jmp 0x10098bf8
mov eax, 0xffffffff
mov ecx, dword [esp + 0x198]
mov edx, ecx
xor edx, 0xffffffff
mov esi, eax
xor esi, 0x5000000
xor eax, 0xabbcfd6b
mov edi, edx
and edi, 0xabbcfd6b
and ecx, eax
mov ebx, esi
and ebx, 0xabbcfd6b
mov dword [esp + 0x10], eax
and eax, 0x5000000
or edi, ecx
or ebx, eax
xor edi, ebx
or edx, esi
xor edx, 0xffffffff
mov eax, dword [esp + 0x10]
or eax, 0xabbcfd6b
and edx, eax
or edi, edx
mov dword [esp + 0x198], edi
mov al, byte [esp + 0x187]
mov byte [esp + 0x19c], al
jmp 0x10098d04
mov byte [esp + 0x19c], 0
jmp 0x10098e03
mov eax, 0x28
lea ecx, [esp + 0x198]
mov edx, dword [esp + 0x1e0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x28
mov dword [esp + 0xc], eax
call fcn.1001fd00
jmp 0x10098ee4