Function at 0x569a00
Capabilities:
Authenticate hmac
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xb8
mov esi, esp
mov dword [esi + 0xa0], ebp
mov dword [esi + 0xa4], esp
mov dword [esi + 0xb0], 0xffffffff
lea eax, [esi + 0xa8]
mov dword [esi + 0xac], 0x5cd8c0
mov ecx, dword fs:[0]
mov dword [esi + 0xa8], ecx
mov dword fs:[0], eax
mov eax, dword [0x60d638]
mov ecx, dword [0x60d63c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x96]
cmp ecx, 0xa
setl byte [esi + 0x97]
mov eax, 0xc4f1ae8e
nop dword [eax]
cmp eax, 0xc4f1ae8d
jg 0x569aa0
cmp eax, 0x891da6f4
je 0x569adf
cmp eax, 0xabe7fa02
jne 0x569a80
jmp 0x5cb112
cmp eax, 0xe9b87c2
je 0x569bd6
cmp eax, 0xc4f1ae8e
jne 0x569a80
movzx ecx, byte [esi + 0x96]
movzx eax, byte [esi + 0x97]
mov edx, ecx
xor dl, al
mov edx, 0x891da6f4
mov edi, 0xe9b87c2
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x569a80
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x9c], eax
mov esp, eax
push eax
mov dword [esi + 0x98], esp
mov eax, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x4c]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0x3def23ff
nop
cmp eax, 0xde9169a
jg 0x569b50
cmp eax, 0x8e89d987
je 0x569cd6
cmp eax, 0xcc8e990
jne 0x569b20
mov word [esi + 0x40], 0x7a61
mov eax, 0xde9169b
jmp 0x569b20
cmp eax, 0xde9169b
je 0x569b85
cmp eax, 0x3def23ff
jne 0x569b20
movzx ecx, byte [esi + 0x4c]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0xcc8e990
mov edi, 0xde9169b
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x569b20
lea eax, [esi + 0x40]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x60]
mov word [eax], 0x7a61
mov edx, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0xcc8e990
mov ebx, 0x8e89d987
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x569b20
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov dword [esi + 0x9c], eax
mov esp, eax
push eax
mov dword [esi + 0x98], esp
mov eax, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x4c]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0x3def23ff
nop word cs:[eax + eax]
cmp eax, 0xde9169a
jg 0x569c50
cmp eax, 0x8e89d987
je 0x569fe7
cmp eax, 0xcc8e990
jne 0x569c20
mov word [esi + 0x40], 0x7a61
mov eax, 0xde9169b
jmp 0x569c20
cmp eax, 0xde9169b
je 0x569c85
cmp eax, 0x3def23ff
jne 0x569c20
movzx ecx, byte [esi + 0x4c]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0xcc8e990
mov edi, 0xde9169b
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x569c20
lea eax, [esi + 0x40]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x60]
mov word [eax], 0x7a61
mov edx, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0xcc8e990
mov ebx, 0x8e89d987
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x569c20
mov eax, dword [esi + 0x60]
sub esp, 4
movzx eax, byte [esi + 0x30]
mov byte [esp], al
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0043dd20
mov ecx, edi
call fcn.0040d170
mov dword [esi + 0xb0], 0x7b
xor eax, eax
jmp 0x569d1f
mov eax, dword [esi + 0x10]
inc eax
cmp eax, 0x3e8
je 0x56a2f7
mov dword [esi + 0x10], eax
movsx eax, byte [esi + 0x41]
movsx edx, byte [esi + 0x40]
mov dword [esi + 0xb0], 0x7b
lea ecx, [esi + 0x40]
push eax
push edx
lea eax, [esi + 0x24]
push eax
call fcn.00435510
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ah
setne cl
cmp dword [0x60a994], 0xa
setl ch
setge dl
cmp ch, ah
jne 0x569d74
or dl, cl
jne 0x5cb000
movsx eax, al
lea ecx, [esi + 0x60]
push eax
call fcn.00436970
lea ecx, [esi + 0x60]
call fcn.005664d0
cmp byte [eax], 0x6f
je 0x569e09
mov eax, dword [0x60a990]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x60a994], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x569dc0
or cl, al
jne 0x569df6
nop
lea ecx, [esi + 0x60]
call fcn.005664d0
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete ch
cmp dword [0x60a994], 0xa
setge dl
setl dh
xor dh, ch
jne 0x569e00
or dl, cl
je 0x569e00
lea ecx, [esi + 0x60]
call fcn.005664d0
jmp 0x569dc0
cmp byte [eax], 0x75
jne 0x569d10
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0040d830
mov dword [esi + 0x4c], eax
mov ecx, edi
call fcn.0040d830
add eax, dword [esi + 0x70]
mov dword [esi + 8], eax
jmp 0x569e33
mov eax, dword [esi + 0x30]
mov eax, dword [0x60a998]
lea ecx, [eax + 1]
imul ecx, eax
mov edx, dword [0x60a99c]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 4]
sete cl
mov eax, 0x4a293c83
mov ebx, 0x61c5fcf1
cmove eax, ebx
cmp edx, 0xa
setl byte [esi + 0x30]
setl dl
mov edi, 0x4a293c83
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
mov ecx, 0x354728f5
nop dword [eax]
cmp ecx, 0x4a293c82
jle 0x569ea0
cmp ecx, 0x4a293c83
je 0x569ed7
cmp ecx, 0x61c5fcf1
jne 0x569e80
jmp 0x569ef0
cmp ecx, 0xb74ba074
je 0x569ede
cmp ecx, 0x354728f5
jne 0x569e80
movzx edx, byte [esi + 4]
movzx ecx, byte [esi + 0x30]
mov ch, dl
xor ch, cl
mov ebx, 0x4a293c83
mov edi, 0xb74ba074
cmovne ebx, edi
test cl, cl
mov ecx, ebx
cmovne ecx, edi
test dl, dl
cmove ecx, ebx
jmp 0x569e80
mov ecx, 0xb74ba074
jmp 0x569e80
mov ecx, eax
jmp 0x569e80
mov ebx, dword [esi + 0x4c]
cmp ebx, dword [esi + 8]
je 0x569d10
movsx eax, byte [ebx]
push eax
call fcn.005de535
add esp, 4
mov ecx, eax
xor cl, 0xf5
and cl, al
mov byte [ebx], cl
mov eax, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xc2538ca0
nop dword [eax]
cmp eax, 0x1ec364a7
jg 0x569f60
cmp eax, 0xc2538ca0
je 0x569fbd
cmp eax, 0xbc7d055
jne 0x569f40
inc dword [esi + 0x4c]
mov eax, 0x640d1264
jmp 0x569f40
cmp eax, 0x1ec364a8
je 0x569e30
cmp eax, 0x640d1264
jne 0x569f40
lea eax, [esi + 0x4c]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x30]
inc dword [eax]
mov edx, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xbc7d055
mov edi, 0x1ec364a8
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x569f40
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0xbc7d055
mov edi, 0x640d1264
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x569f40
mov eax, dword [esi + 0x60]
sub esp, 4
movzx eax, byte [esi + 0x30]
mov byte [esp], al
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0043dd20
mov ecx, edi
call fcn.0040d170
mov dword [esi + 0xb0], 0
xor eax, eax
jmp 0x56a02f
mov eax, dword [esi + 0x10]
inc eax
cmp eax, 0x3e8
je 0x56a32d
mov dword [esi + 0x10], eax
movsx eax, byte [esi + 0x41]
movsx edx, byte [esi + 0x40]
mov dword [esi + 0xb0], 0
lea ecx, [esi + 0x40]
push eax
push edx
lea eax, [esi + 0x24]
push eax
call fcn.00435510
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete ah
cmp dword [0x60a994], 0xa
setge dl
setl ch
xor ch, ah
jne 0x56a084
or dl, cl
jne 0x5cb010
movsx eax, al
lea ecx, [esi + 0x60]
push eax
call fcn.00436970
lea ecx, [esi + 0x60]
call fcn.005664d0
cmp byte [eax], 0x6f
je 0x56a119
mov eax, dword [0x60a990]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60a994], 0xa
setl cl
test cl, al
jne 0x56a0d0
xor cl, al
je 0x56a100
nop word cs:[eax + eax]
lea ecx, [esi + 0x60]
call fcn.005664d0
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60a994], 0xa
setl dl
test dl, cl
jne 0x56a110
xor dl, cl
jne 0x56a110
lea ecx, [esi + 0x60]
call fcn.005664d0
jmp 0x56a0d0
cmp byte [eax], 0x75
jne 0x56a020
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0040d830
mov dword [esi + 0x4c], eax
mov ecx, edi
call fcn.0040d830
add eax, dword [esi + 0x70]
mov dword [esi + 8], eax
jmp 0x56a143
mov eax, dword [esi + 0x30]
mov eax, dword [0x60a998]
lea ecx, [eax + 1]
imul ecx, eax
mov edx, dword [0x60a99c]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 4]
sete cl
mov eax, 0x4a293c83
mov ebx, 0x61c5fcf1
cmove eax, ebx
cmp edx, 0xa
setl byte [esi + 0x30]
setl dl
mov edi, 0x4a293c83
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
mov ecx, 0x354728f5
nop dword [eax]
cmp ecx, 0x4a293c82
jle 0x56a1b0
cmp ecx, 0x4a293c83
je 0x56a1e7
cmp ecx, 0x61c5fcf1
jne 0x56a190
jmp 0x56a200
cmp ecx, 0xb74ba074
je 0x56a1ee
cmp ecx, 0x354728f5
jne 0x56a190
movzx edx, byte [esi + 4]
movzx ecx, byte [esi + 0x30]
mov ch, dl
xor ch, cl
mov ebx, 0x4a293c83
mov edi, 0xb74ba074
cmovne ebx, edi
test cl, cl
mov ecx, ebx
cmovne ecx, edi
test dl, dl
cmove ecx, ebx
jmp 0x56a190
mov ecx, 0xb74ba074
jmp 0x56a190
mov ecx, eax
jmp 0x56a190
mov ebx, dword [esi + 0x4c]
cmp ebx, dword [esi + 8]
je 0x56a020
movsx eax, byte [ebx]
push eax
call fcn.005de535
add esp, 4
and al, 0xa
mov byte [ebx], al
mov eax, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xc2538ca0
nop word cs:[eax + eax]
cmp eax, 0x1ec364a7
jg 0x56a270
cmp eax, 0xc2538ca0
je 0x56a2cd
cmp eax, 0xbc7d055
jne 0x56a250
inc dword [esi + 0x4c]
mov eax, 0x640d1264
jmp 0x56a250
cmp eax, 0x1ec364a8
je 0x56a140
cmp eax, 0x640d1264
jne 0x56a250
lea eax, [esi + 0x4c]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x30]
inc dword [eax]
mov edx, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xbc7d055
mov edi, 0x1ec364a8
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x56a250
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0xbc7d055
mov edi, 0x640d1264
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56a250
mov ecx, dword [0x60a990]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60a994], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x59a9a2
or cl, al
test cl, 1
jne 0x59aabb
jmp 0x59a9a2
mov ecx, dword [0x60a990]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60a994], 0xa
setge cl
setl ch
xor ch, dl
jne 0x56a35a
or cl, al
test cl, 1
jne 0x56a479
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
nop word cs:[eax + eax]
cmp eax, 0xb86c542
jg 0x56a3b0
cmp eax, 0xcb7dce01
je 0x56a3e5
cmp eax, 0xf454cecc
jne 0x56a390
jmp 0x56a442
cmp eax, 0xb86c543
je 0x56a3f4
cmp eax, 0x1d50f87a
jne 0x56a390
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, ecx
xor dl, al
mov edx, 0xcb7dce01
mov ebx, 0xb86c543
cmovne edx, ebx
test al, al
mov eax, edx
cmovne eax, ebx
test cl, cl
cmove eax, edx
jmp 0x56a390
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x56a390
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, eax
add edi, 0xd7
mov eax, dword [0x60a9a8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xcb7dce01
mov ebx, 0xf454cecc
cmove eax, ebx
cmp dword [0x60a9ac], 0xa
mov edx, 0xcb7dce01
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x56a390
mov dword [esi + 0x30], edi
mov eax, dword [esi + 0x30]
mov ecx, dword [0x60a990]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60a994], 0xa
setl dl
test dl, cl
jne 0x56a573
xor dl, cl
jne 0x56a573
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
jmp 0x56a500
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [edi + 1]
imul edx, edi
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xcb7dce01
mov edi, 0xf454cecc
cmovne ebx, edi
mov edi, eax
cmp edx, 0xffffffff
mov eax, ebx
mov edx, 0xf454cecc
cmove eax, edx
cmp ecx, 0xa
cmovge eax, ebx
mov ebx, edi
add ebx, 0xd7
nop dword [eax + eax]
cmp eax, 0xb86c542
jg 0x56a520
cmp eax, 0xcb7dce01
je 0x56a559
cmp eax, 0xf454cecc
jne 0x56a500
jmp 0x56a568
cmp eax, 0xb86c543
je 0x56a4a4
cmp eax, 0x1d50f87a
jne 0x56a500
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, ecx
xor dl, al
mov edx, 0xcb7dce01
mov edi, 0xb86c543
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56a500
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x56a500
mov dword [esi + 0x30], ebx
mov eax, dword [esi + 0x30]
jmp 0x56a35a
cmp byte [eax], 0x31
jne 0x56a682
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
nop word cs:[eax + eax]
cmp eax, 0xb86c542
jg 0x56a5d0
cmp eax, 0xcb7dce01
je 0x56a605
cmp eax, 0xf454cecc
jne 0x56a5b0
jmp 0x56a66d
cmp eax, 0xb86c543
je 0x56a614
cmp eax, 0x1d50f87a
jne 0x56a5b0
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, ecx
xor dl, al
mov edx, 0xcb7dce01
mov edi, 0xb86c543
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56a5b0
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x56a5b0
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
mov dword [esi + 0x10], ecx
lea edx, [edi + 1]
imul edx, edi
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
sete byte [esi + 8]
cmp ecx, 0xa
setl cl
xor cl, byte [esi + 8]
mov ecx, 0xcb7dce01
mov edi, 0xf454cecc
cmovne ecx, edi
test ebx, edx
mov ebx, eax
mov eax, ecx
cmove eax, edi
cmp dword [esi + 0x10], 0xa
cmovge eax, ecx
add ebx, 0x2d0
jmp 0x56a5b0
mov dword [esi + 0x30], ebx
mov eax, dword [esi + 0x30]
cmp byte [eax], 0x30
jne 0x56a682
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x60]
call fcn.0040f050
mov eax, dword [0x60d640]
mov ecx, dword [0x60d644]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x94]
cmp ecx, 0xa
setl byte [esi + 0x95]
mov eax, 0x9d6a27f1
nop dword [eax]
cmp eax, 0x545d958
jg 0x56a710
cmp eax, 0x8e736e04
je 0x56a81c
cmp eax, 0x9d6a27f1
jne 0x56a6c0
movzx ecx, byte [esi + 0x94]
movzx eax, byte [esi + 0x95]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x8e736e04
mov edi, 0x7be61835
cmovne eax, edi
test cl, cl
mov ecx, 0x8e736e04
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56a6c0
cmp eax, 0x545d959
je 0x59a932
cmp eax, 0x7be61835
jne 0x56a6c0
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
nop word cs:[eax + eax]
cmp ecx, 0x64
jae 0x56a90c
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 1
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x56a7b6
xor dl, cl
je 0x5cb050
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
cmp dword [0x60aa7c], 0xa
setl al
or al, cl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x56a819
nop word cs:[eax + eax]
inc ecx
test al, al
jne 0x56a760
inc ecx
jmp 0x56a810
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
nop dword [eax + eax]
cmp ecx, 0x64
jae 0x56b171
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0x3e
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x56a8a6
xor dl, cl
je 0x5cb030
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl al
or al, cl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x56a909
nop word [eax + eax]
inc ecx
test al, al
jne 0x56a850
inc ecx
jmp 0x56a900
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
nop word cs:[eax + eax]
cmp ecx, 0x43b6ad12
jg 0x56a9d0
cmp ecx, 0xd78bfc94
je 0x56a9e4
cmp ecx, 0x1c1ffc7c
jne 0x56a980
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne ecx, ebx
test dl, dl
mov edi, 0xd78bfc94
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x56a980
cmp ecx, 0x43b6ad13
je 0x56a9eb
cmp ecx, 0x7df2dfc5
jne 0x56a980
mov ecx, eax
jmp 0x56a980
mov ecx, 0x7df2dfc5
jmp 0x56a980
jmp 0x56a9f0
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov ecx, dword [0x60aa8c]
lea edx, [eax + 1]
mov dword [esi + 0x14], eax
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x8c874760
mov eax, 0x4d68e82b
cmovne ebx, eax
test edi, edx
sete byte [esi + 0xc]
mov edx, ebx
cmove edx, eax
mov dword [esi + 0x10], ecx
cmp ecx, 0xa
setl byte [esi + 4]
cmovge edx, ebx
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x56aa60
cmp edi, 0x36d61407
je 0x56aa9b
cmp edi, 0x4d68e82b
jne 0x56aa40
jmp 0x56aaa6
cmp edi, 0x8c874760
je 0x56aa9f
cmp edi, 0xbc4e5a6d
jne 0x56aa40
movzx eax, byte [esi + 0xc]
mov bh, byte [esi + 4]
mov bl, al
xor bl, bh
mov ecx, 0x8c874760
mov edi, 0x36d61407
cmovne ecx, edi
test bh, bh
mov edi, ecx
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
cmove edi, ecx
jmp 0x56aa40
mov edi, edx
jmp 0x56aa40
mov edi, 0x36d61407
jmp 0x56aa40
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x2c]
je 0x56b9da
mov dword [esi + 8], eax
mov eax, dword [0x60aa90]
mov ebx, dword [0x60aa94]
lea edi, [eax + 1]
imul edi, eax
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
sete al
cmp ebx, 0xa
setl cl
xor cl, al
mov eax, 0xdbbf45d4
mov ecx, 0x89d6c0b5
cmovne eax, ecx
cmp edi, 0xffffffff
sete byte [esi + 0x3c]
mov edi, eax
cmove edi, ecx
cmp ebx, 0xa
setl byte [esi + 0xc]
cmovge edi, eax
mov ebx, 0xaf530581
nop word cs:[eax + eax]
cmp ebx, 0xdbbf45d3
jg 0x56ab60
cmp ebx, 0x89d6c0b5
je 0x56ab7b
cmp ebx, 0xaf530581
jne 0x56ab10
movzx eax, byte [esi + 0x3c]
movzx ecx, byte [esi + 0xc]
mov edx, eax
xor dl, cl
test cl, cl
mov ebx, 0xdbbf45d4
mov ecx, 0x3983e5e3
cmovne ebx, ecx
test al, al
mov eax, 0xdbbf45d4
cmove ebx, eax
test dl, dl
cmovne ebx, ecx
jmp 0x56ab10
cmp ebx, 0xdbbf45d4
je 0x56ab74
cmp ebx, 0x3983e5e3
jne 0x56ab10
mov ebx, edi
jmp 0x56ab10
mov ebx, 0x3983e5e3
jmp 0x56ab10
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, 0xd78bfc94
mov ecx, 0x43b6ad13
cmovne ebx, ecx
test eax, edx
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
sete byte [esi + 0xc]
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov edx, ebx
cmove edx, ecx
cmp edi, 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x34]
cmovge edx, ebx
mov ebx, 0x1c1ffc7c
jmp 0x56ac0c
mov dword [esi + 0x18], eax
movzx eax, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ah, al
xor ah, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ebx, edi
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test al, al
mov eax, dword [esi + 0x18]
cmove ebx, edi
mov edi, dword [esi + 0x10]
nop
cmp ebx, 0x43b6ad12
jg 0x56ac30
cmp ebx, 0xd78bfc94
je 0x56ac47
cmp ebx, 0x1c1ffc7c
jne 0x56ac10
jmp 0x56abdc
cmp ebx, 0x43b6ad13
je 0x56ac51
cmp ebx, 0x7df2dfc5
jne 0x56ac10
mov dword [esi + 0x20], eax
mov ebx, edx
jmp 0x56ac10
mov ebx, 0x7df2dfc5
mov dword [esi + 0x20], eax
jmp 0x56ac10
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x14]
jmp 0x56ac6e
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov edi, dword [0x60aa8c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, edi
mov edi, 0x8c874760
mov ecx, 0x4d68e82b
cmovne edi, ecx
test eax, edx
sete byte [esi + 0xc]
mov ecx, edi
mov eax, 0x4d68e82b
cmove ecx, eax
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, edi
mov eax, 0xbc4e5a6d
nop word cs:[eax + eax]
cmp eax, 0x36d61406
jle 0x56ace0
cmp eax, 0x36d61407
je 0x56ad15
cmp eax, 0x4d68e82b
jne 0x56acc0
jmp 0x56ad20
cmp eax, 0x8c874760
je 0x56ad19
cmp eax, 0xbc4e5a6d
jne 0x56acc0
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov edi, 0x8c874760
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
mov eax, edi
cmovne eax, ebx
test dl, dl
cmove eax, edi
jmp 0x56acc0
mov eax, ecx
jmp 0x56acc0
mov eax, 0x36d61407
jmp 0x56acc0
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x20]
je 0x56b031
mov ecx, dword [0x60aa90]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, dword [0x60aa94]
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x1f]
sete dl
mov ecx, 0xdbbf45d4
mov ebx, 0x89d6c0b5
cmove ecx, ebx
cmp edi, 0xa
setl byte [esi + 0xc]
setl dh
mov edi, 0xdbbf45d4
cmovge ecx, edi
xor dh, dl
cmovne ecx, ebx
mov edx, 0xaf530581
nop word cs:[eax + eax]
cmp edx, 0xdbbf45d3
jg 0x56add0
cmp edx, 0x89d6c0b5
je 0x56adf0
cmp edx, 0xaf530581
jne 0x56ad80
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x56ad80
cmp edx, 0xdbbf45d4
je 0x56ade4
cmp edx, 0x3983e5e3
jne 0x56ad80
mov edx, ecx
jmp 0x56ad80
mov edx, 0x3983e5e3
jmp 0x56ad80
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop dword [eax + eax]
cmp ecx, 0xce6e8c2e
jg 0x56ae40
cmp ecx, 0x85fa3530
je 0x56ae80
cmp ecx, 0xc79b93d4
jne 0x56ae10
mov ecx, 0x85fa3530
mov ebx, eax
mov edx, dword [esi + 8]
jmp 0x56ae10
cmp ecx, 0xe387238e
je 0x56ae65
cmp ecx, 0xce6e8c2f
jne 0x56ae10
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, 0xc79b93d4
cmovl ecx, edi
jmp 0x56ae10
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edx, eax
jmp 0x56ae10
mov dword [esi + 0x18], ebx
mov dword [esi + 0x28], edx
lea ebx, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop dword [eax]
cmp ecx, 0xce6e8c2e
jg 0x56aed0
cmp ecx, 0x85fa3530
je 0x56af10
cmp ecx, 0xc79b93d4
jne 0x56aea0
mov ecx, 0x85fa3530
mov dword [esi + 0x14], ebx
mov edi, dword [esi + 0x10]
jmp 0x56aea0
cmp ecx, 0xe387238e
je 0x56aef5
cmp ecx, 0xce6e8c2f
jne 0x56aea0
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x56aea0
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edi, ebx
jmp 0x56aea0
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx]
mov edx, dword [0x60aa78]
lea ebx, [edx + 1]
imul ebx, edx
mov edx, ebx
xor edx, 0xfffffffe
test edx, ebx
setne dh
sete bl
cmp dword [0x60aa7c], 0xa
setge dl
setl bh
xor bh, bl
or dl, dh
xor dl, 1
or dl, bh
cmp ecx, dword [edi]
jle 0x56b048
test dl, dl
je 0x5cb090
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop dword [eax]
cmp eax, 0xceb3811a
jg 0x56afc0
cmp eax, 0x82f24137
je 0x56b023
cmp eax, 0xb8cd7b43
jne 0x56af80
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56af80
cmp eax, 0xceb3811b
je 0x56ac60
cmp eax, 0x47b76182
jne 0x56af80
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x56af80
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x56af80
mov dword [esi + 0xb0], 2
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x56b094
test dl, dl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x56b089
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x60aa7c], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x56b094
or dl, cl
je 0x56b094
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x56b052
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop dword [eax]
cmp eax, 0xceb3811a
jg 0x56b100
cmp eax, 0x82f24137
je 0x56b163
cmp eax, 0xb8cd7b43
jne 0x56b0c0
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56b0c0
cmp eax, 0xceb3811b
je 0x56a9ed
cmp eax, 0x47b76182
jne 0x56b0c0
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x56b0c0
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x56b0c0
mov edx, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea eax, [edx + 1]
imul eax, edx
mov edi, eax
xor edi, 0xfffffffe
test edi, eax
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xd78bfc94
mov ebx, 0x43b6ad13
cmovne edx, ebx
test edi, eax
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
sete byte [esi + 0xc]
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
cmovge eax, edx
mov ecx, 0x1c1ffc7c
nop dword [eax]
cmp ecx, 0x43b6ad12
jg 0x56b220
cmp ecx, 0xd78bfc94
je 0x56b234
cmp ecx, 0x1c1ffc7c
jne 0x56b1e0
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ch, dl
xor ch, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x56b1e0
cmp ecx, 0x43b6ad13
je 0x56b23b
cmp ecx, 0x7df2dfc5
jne 0x56b1e0
mov ecx, eax
jmp 0x56b1e0
mov ecx, 0x7df2dfc5
jmp 0x56b1e0
jmp 0x56b240
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov ecx, dword [0x60aa8c]
lea edx, [eax + 1]
mov dword [esi + 0x18], eax
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x8c874760
mov eax, 0x4d68e82b
cmovne edi, eax
cmp edx, 0xffffffff
sete byte [esi + 0xc]
mov edx, edi
cmove edx, eax
mov dword [esi + 0x10], ecx
cmp ecx, 0xa
setl byte [esi + 4]
cmovge edx, edi
mov edi, 0xbc4e5a6d
nop word cs:[eax + eax]
cmp edi, 0x36d61406
jle 0x56b2c0
cmp edi, 0x36d61407
je 0x56b2fb
cmp edi, 0x4d68e82b
jne 0x56b2a0
jmp 0x56b306
cmp edi, 0x8c874760
je 0x56b2ff
cmp edi, 0xbc4e5a6d
jne 0x56b2a0
movzx eax, byte [esi + 0xc]
mov bh, byte [esi + 4]
mov bl, al
xor bl, bh
mov ecx, 0x8c874760
mov edi, 0x36d61407
cmovne ecx, edi
test bh, bh
mov edi, ecx
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
cmove edi, ecx
jmp 0x56b2a0
mov edi, edx
jmp 0x56b2a0
mov edi, 0x36d61407
jmp 0x56b2a0
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x2c]
je 0x56ba2c
mov dword [esi + 8], eax
mov eax, dword [0x60aa90]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, dword [0x60aa94]
sete byte [esi + 0x3c]
sete cl
mov edi, 0xdbbf45d4
mov edx, 0x89d6c0b5
cmove edi, edx
cmp eax, 0xa
setl byte [esi + 0xc]
setl al
mov ebx, 0xdbbf45d4
cmovge edi, ebx
xor al, cl
cmovne edi, edx
mov ebx, 0xaf530581
nop dword [eax]
cmp ebx, 0xdbbf45d3
jg 0x56b3b0
cmp ebx, 0x89d6c0b5
je 0x56b3cb
cmp ebx, 0xaf530581
jne 0x56b360
movzx eax, byte [esi + 0x3c]
movzx ecx, byte [esi + 0xc]
mov ah, al
xor ah, cl
mov edx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edx, ebx
test cl, cl
mov ebx, edx
mov ecx, 0x3983e5e3
cmovne ebx, ecx
test al, al
cmove ebx, edx
jmp 0x56b360
cmp ebx, 0xdbbf45d4
je 0x56b3c4
cmp ebx, 0x3983e5e3
jne 0x56b360
mov ebx, edi
jmp 0x56b360
mov ebx, 0x3983e5e3
jmp 0x56b360
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete byte [esi + 0xc]
sete al
mov edx, 0xd78bfc94
mov ebx, 0x43b6ad13
cmove edx, ebx
cmp edi, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x14], ecx
setl cl
mov edi, 0xd78bfc94
cmovge edx, edi
xor cl, al
cmovne edx, ebx
mov ebx, 0x1c1ffc7c
jmp 0x56b457
movzx eax, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ah, al
xor ah, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ebx, edi
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test al, al
cmove ebx, edi
mov edi, dword [esi + 0x10]
nop word [eax + eax]
cmp ebx, 0x43b6ad12
jg 0x56b480
cmp ebx, 0xd78bfc94
je 0x56b49a
cmp ebx, 0x1c1ffc7c
jne 0x56b460
jmp 0x56b42d
cmp ebx, 0x43b6ad13
je 0x56b4a7
cmp ebx, 0x7df2dfc5
jne 0x56b460
mov eax, dword [esi + 0x14]
mov dword [esi + 0x20], eax
mov ebx, edx
jmp 0x56b460
mov ebx, 0x7df2dfc5
mov eax, dword [esi + 0x14]
mov dword [esi + 0x20], eax
jmp 0x56b460
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x18]
jmp 0x56b4ce
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov edi, dword [0x60aa8c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, edi
mov edi, 0x8c874760
mov ecx, 0x4d68e82b
cmovne edi, ecx
test eax, edx
sete byte [esi + 0xc]
mov ecx, edi
mov eax, 0x4d68e82b
cmove ecx, eax
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, edi
mov eax, 0xbc4e5a6d
nop word cs:[eax + eax]
cmp eax, 0x36d61406
jle 0x56b540
cmp eax, 0x36d61407
je 0x56b575
cmp eax, 0x4d68e82b
jne 0x56b520
jmp 0x56b580
cmp eax, 0x8c874760
je 0x56b579
cmp eax, 0xbc4e5a6d
jne 0x56b520
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov edi, 0x8c874760
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
mov eax, edi
cmovne eax, ebx
test dl, dl
cmove eax, edi
jmp 0x56b520
mov eax, ecx
jmp 0x56b520
mov eax, 0x36d61407
jmp 0x56b520
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x20]
je 0x56b88f
mov edi, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [edi + 1]
imul ecx, edi
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov edi, 0xdbbf45d4
mov ebx, 0x89d6c0b5
cmovne edi, ebx
cmp ecx, 0xffffffff
sete byte [esi + 0x1f]
mov eax, edi
cmove eax, ebx
cmp edx, 0xa
setl byte [esi + 0xc]
cmovge eax, edi
mov edx, 0xaf530581
nop dword [eax]
cmp edx, 0xdbbf45d3
jg 0x56b620
cmp edx, 0x89d6c0b5
je 0x56b640
cmp edx, 0xaf530581
jne 0x56b5e0
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov ecx, 0x3983e5e3
cmovne edi, ecx
test dl, dl
mov edx, edi
cmovne edx, ecx
test bl, bl
cmove edx, edi
jmp 0x56b5e0
cmp edx, 0xdbbf45d4
je 0x56b634
cmp edx, 0x3983e5e3
jne 0x56b5e0
mov edx, eax
jmp 0x56b5e0
mov edx, 0x3983e5e3
jmp 0x56b5e0
mov eax, dword [esi + 0x14]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop dword [eax + eax]
cmp ecx, 0xce6e8c2e
jg 0x56b690
cmp ecx, 0x85fa3530
je 0x56b6d0
cmp ecx, 0xc79b93d4
jne 0x56b660
mov ecx, 0x85fa3530
mov ebx, eax
mov edx, dword [esi + 8]
jmp 0x56b660
cmp ecx, 0xe387238e
je 0x56b6b5
cmp ecx, 0xce6e8c2f
jne 0x56b660
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, 0xc79b93d4
cmovl ecx, edi
jmp 0x56b660
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edx, eax
jmp 0x56b660
mov dword [esi + 0x18], ebx
mov dword [esi + 0x28], edx
lea ebx, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop dword [eax]
cmp ecx, 0xce6e8c2e
jg 0x56b720
cmp ecx, 0x85fa3530
je 0x56b760
cmp ecx, 0xc79b93d4
jne 0x56b6f0
mov ecx, 0x85fa3530
mov dword [esi + 0x14], ebx
mov edi, dword [esi + 0x10]
jmp 0x56b6f0
cmp ecx, 0xe387238e
je 0x56b745
cmp ecx, 0xce6e8c2f
jne 0x56b6f0
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x56b6f0
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edi, ebx
jmp 0x56b6f0
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx]
mov edx, dword [0x60aa78]
lea ebx, [edx + 1]
imul ebx, edx
mov edx, ebx
xor edx, 0xfffffffe
test edx, ebx
setne dh
sete bl
cmp dword [0x60aa7c], 0xa
setge dl
setl bh
xor bh, bl
or dl, dh
xor dl, 1
or dl, bh
cmp ecx, dword [edi]
jle 0x56b8a6
test dl, dl
je 0x5cb060
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop dword [eax]
cmp eax, 0xceb3811a
jg 0x56b820
cmp eax, 0x82f24137
je 0x56b881
cmp eax, 0xb8cd7b43
jne 0x56b7d0
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56b7d0
cmp eax, 0xceb3811b
je 0x56b4c0
cmp eax, 0x47b76182
jne 0x56b7d0
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x82f24137
mov ebx, 0xceb3811b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x56b7d0
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x56b7d0
mov dword [esi + 0xb0], 0x3f
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x56b8f2
test dl, dl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x56b8e7
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x60aa7c], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x56b8f2
or dl, cl
je 0x56b8f2
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x56b8b0
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop word [eax + eax]
cmp eax, 0xceb3811a
jg 0x56b970
cmp eax, 0x82f24137
je 0x56b9cc
cmp eax, 0xb8cd7b43
jne 0x56b920
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56b920
cmp eax, 0xceb3811b
je 0x56b23d
cmp eax, 0x47b76182
jne 0x56b920
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmove eax, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x56b920
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x56b920
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
or cl, al
mov byte [esi + 0x2c], cl
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x18], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
mov dword [esi + 0x20], ecx
mov dword [esi + 0x48], eax
jne 0x56bb1c
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jmp 0x56ba81
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
or cl, al
mov byte [esi + 0x48], cl
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x14], eax
mov eax, dword [0x60aa80]
mov edx, dword [0x60aa84]
mov dword [esi + 0x20], edx
mov dword [esi + 0x2c], eax
jne 0x58326a
lea edi, [eax - 1]
imul edi, eax
and edi, 1
jmp 0x5831cb
test ecx, ecx
sete byte [esi + 0x24]
sete al
mov ebx, 0xd78bfc94
mov edx, 0x43b6ad13
cmove ebx, edx
cmp dword [esi + 0x20], 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi + 0xc], ecx
setl cl
mov edi, 0xd78bfc94
cmovge ebx, edi
xor cl, al
cmovne ebx, edx
mov edi, 0x1c1ffc7c
jmp 0x56bac1
mov edi, 0x7df2dfc5
cmp edi, 0x43b6ad12
jg 0x56bb05
cmp edi, 0xd78bfc94
je 0x56babc
cmp edi, 0x1c1ffc7c
jne 0x56bac1
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov edx, ecx
xor dl, al
test cl, cl
mov edi, 0xd78bfc94
mov ecx, 0x7df2dfc5
cmovne edi, ecx
test al, al
mov eax, 0xd78bfc94
cmove edi, eax
test dl, dl
cmovne edi, ecx
jmp 0x56bac1
cmp edi, 0x43b6ad13
je 0x56bb19
cmp edi, 0x7df2dfc5
jne 0x56bac1
mov edi, ebx
jmp 0x56bac1
mov eax, dword [esi + 0x48]
lea edx, [eax + 1]
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
mov eax, edi
and eax, edx
sete al
mov ebx, dword [esi + 0x20]
cmp ebx, 0xa
setl cl
xor cl, al
mov ecx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne ecx, eax
and edi, edx
mov dword [esi + 0x28], edi
sete byte [esi + 0x24]
mov edx, ecx
cmove edx, eax
cmp ebx, 0xa
setl byte [esi + 4]
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
cmovge edx, ecx
mov edi, 0x1c1ffc7c
mov eax, dword [esi + 0x14]
cmp edi, 0x43b6ad12
jg 0x56bbb3
cmp edi, 0xd78bfc94
je 0x56bbc7
cmp edi, 0x1c1ffc7c
jne 0x56bb6c
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov ah, al
xor ah, cl
test cl, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test al, al
mov ecx, 0xd78bfc94
cmove edi, ecx
test ah, ah
mov eax, dword [esi + 0x14]
cmovne edi, ebx
jmp 0x56bb6c
cmp edi, 0x43b6ad13
je 0x56bbce
cmp edi, 0x7df2dfc5
jne 0x56bb6c
mov edi, edx
jmp 0x56bb6c
mov edi, 0x7df2dfc5
jmp 0x56bb6c
cmp byte [esi + 0x2c], 0
je 0x56be77
mov dword [esi + 8], 0
mov edi, dword [esi + 0x10]
jmp 0x56bbfb
add ebx, dword [esi + 8]
sub ebx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov edi, dword [0x60aa8c]
mov dword [esi + 8], ebx
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, 0x8c874760
mov ecx, 0x4d68e82b
cmovne ebx, ecx
test eax, edx
sete byte [esi + 0x24]
mov ecx, ebx
mov eax, 0x4d68e82b
cmove ecx, eax
cmp edi, 0xa
setl byte [esi + 4]
cmovge ecx, ebx
mov eax, 0xbc4e5a6d
nop
cmp eax, 0x36d61406
jle 0x56bc60
cmp eax, 0x36d61407
je 0x56bc95
cmp eax, 0x4d68e82b
jne 0x56bc40
jmp 0x56bca0
cmp eax, 0x8c874760
je 0x56bc99
cmp eax, 0xbc4e5a6d
jne 0x56bc40
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov ebx, 0x8c874760
mov edi, 0x36d61407
cmovne ebx, edi
test al, al
mov eax, ebx
cmovne eax, edi
test dl, dl
cmove eax, ebx
jmp 0x56bc40
mov eax, ecx
jmp 0x56bc40
mov eax, 0x36d61407
jmp 0x56bc40
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x18]
je 0x56be7f
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne ebx, edi
cmp ecx, 0xffffffff
sete byte [esi + 0x3c]
mov ecx, ebx
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge ecx, ebx
mov edx, 0xaf530581
nop dword [eax]
cmp edx, 0xdbbf45d3
jg 0x56bd50
cmp edx, 0x89d6c0b5
je 0x56bd6b
cmp edx, 0xaf530581
jne 0x56bd00
movzx ebx, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x56bd00
cmp edx, 0xdbbf45d4
je 0x56bd64
cmp edx, 0x3983e5e3
jne 0x56bd00
mov edx, ecx
jmp 0x56bd00
mov edx, 0x3983e5e3
jmp 0x56bd00
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ebx, dword [ecx + 4]
mov ecx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0x24]
mov ecx, 0xb8cd7b43
nop word cs:[eax + eax]
cmp ecx, 0xceb3811a
jg 0x56be00
cmp ecx, 0x82f24137
je 0x56be69
cmp ecx, 0xb8cd7b43
jne 0x56bdb0
movzx edx, byte [esi + 0x3c]
movzx ecx, byte [esi + 0x24]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0x82f24137
mov eax, 0x47b76182
cmovne ecx, eax
test dl, dl
mov edi, 0x82f24137
cmove ecx, edi
test dh, dh
cmovne ecx, eax
jmp 0x56bdb0
cmp ecx, 0xceb3811b
je 0x56bbe4
cmp ecx, 0x47b76182
jne 0x56bdb0
lea eax, [esi + 0xc]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
add dword [ecx], 8
mov edi, dword [0x60aa98]
mov edx, dword [0x60aa9c]
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0x82f24137
mov dword [esi + 0x14], ebx
mov ebx, 0xceb3811b
cmovne eax, ebx
test edi, ecx
mov ecx, eax
cmove ecx, ebx
mov ebx, dword [esi + 0x14]
cmp edx, 0xa
cmovge ecx, eax
jmp 0x56bdb0
add dword [esi + 0xc], 8
mov ecx, 0x47b76182
jmp 0x56bdb0
mov ecx, dword [esi + 0x28]
jmp 0x56ba81
cmp dword [esi + 8], 0x12345678
jne 0x56be92
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x60aa7c], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x56bec3
or cl, al
jne 0x56c09c
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56bf31
cmp eax, 0x892b3f0e
je 0x56bf9b
cmp eax, 0xbb35c726
jne 0x56beec
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56beec
cmp eax, 0x363212d3
je 0x56bf4e
cmp eax, 0x41d9d43f
jne 0x56beec
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56beec
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x41d9d43f
mov edi, 0x892b3f0e
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x56beec
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56c008
cmp eax, 0x892b3f0e
je 0x56c06c
cmp eax, 0xbb35c726
jne 0x56bfc3
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56bfc3
cmp eax, 0x363212d3
je 0x56c025
cmp eax, 0x41d9d43f
jne 0x56bfc3
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56bfc3
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x56bfc3
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x56c23a
xor cl, al
jne 0x56c23a
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x56c108
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
cmp eax, 0x363212d2
jg 0x56c144
cmp eax, 0x892b3f0e
je 0x56c165
cmp eax, 0xbb35c726
jne 0x56c108
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56c108
cmp eax, 0x363212d3
je 0x56c0c7
cmp eax, 0x41d9d43f
jne 0x56c108
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56c108
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56c1d2
cmp eax, 0x892b3f0e
je 0x56bec3
cmp eax, 0xbb35c726
jne 0x56c18d
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56c18d
cmp eax, 0x363212d3
je 0x56c1ef
cmp eax, 0x41d9d43f
jne 0x56c18d
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56c18d
lea ecx, [esi + 0x60]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x56c18d
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
cmp ecx, 0x64
jae 0x56c31d
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 3
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x56c2c0
xor dl, cl
je 0x5cb0d0
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl al
or al, cl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x56c31a
inc ecx
test al, al
jne 0x56c269
inc ecx
jmp 0x56c311
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
cmp ecx, 0x43b6ad12
jg 0x56c3c5
cmp ecx, 0xd78bfc94
je 0x56c3d9
cmp ecx, 0x1c1ffc7c
jne 0x56c386
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ch, dl
xor ch, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x56c386
cmp ecx, 0x43b6ad13
je 0x56c3e0
cmp ecx, 0x7df2dfc5
jne 0x56c386
mov ecx, eax
jmp 0x56c386
mov ecx, 0x7df2dfc5
jmp 0x56c386
jmp 0x56c3e5
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov eax, dword [0x60aa8c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete byte [esi + 0xc]
sete bl
mov edx, 0x8c874760
mov edi, 0x4d68e82b
cmove edx, edi
mov dword [esi + 0x14], eax
cmp eax, 0xa
setl byte [esi + 4]
setl bh
mov edi, 0x8c874760
cmovge edx, edi
xor bh, bl
mov eax, 0x4d68e82b
cmovne edx, eax
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x56c44f
cmp edi, 0x36d61407
je 0x56c490
cmp edi, 0x4d68e82b
jne 0x56c435
jmp 0x56c49b
cmp edi, 0x8c874760
je 0x56c494
cmp edi, 0xbc4e5a6d
jne 0x56c435
movzx ebx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov bh, al
xor bh, bl
test al, al
mov edi, 0x8c874760
mov eax, 0x36d61407
cmovne edi, eax
test bl, bl
mov eax, 0x8c874760
cmove edi, eax
test bh, bh
mov eax, 0x36d61407
cmovne edi, eax
jmp 0x56c435
mov edi, edx
jmp 0x56c435
mov edi, 0x36d61407
jmp 0x56c435
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x2c]
je 0x56cb30
mov dword [esi + 8], eax
mov eax, dword [0x60aa90]
mov ebx, dword [0x60aa94]
mov dword [esi + 0x10], ebx
lea edi, [eax + 1]
imul edi, eax
mov eax, edi
xor eax, 0xfffffffe
test eax, edi
sete dl
cmp ebx, 0xa
setl dh
xor dh, dl
mov edx, 0xdbbf45d4
mov ebx, 0x89d6c0b5
cmovne edx, ebx
test eax, edi
sete byte [esi + 0x3c]
mov eax, edx
cmove eax, ebx
cmp dword [esi + 0x10], 0xa
setl byte [esi + 0xc]
cmovge eax, edx
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x56c542
cmp ebx, 0x89d6c0b5
je 0x56c55d
cmp ebx, 0xaf530581
jne 0x56c4f8
mov dword [esi + 0x10], eax
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0xc]
mov ah, al
xor ah, dl
mov edi, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edi, ebx
test dl, dl
mov ebx, edi
mov edx, 0x3983e5e3
cmovne ebx, edx
test al, al
mov eax, dword [esi + 0x10]
cmove ebx, edi
jmp 0x56c4f8
cmp ebx, 0xdbbf45d4
je 0x56c556
cmp ebx, 0x3983e5e3
jne 0x56c4f8
mov ebx, eax
jmp 0x56c4f8
mov ebx, 0x3983e5e3
jmp 0x56c4f8
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
sete al
mov edx, 0xd78bfc94
mov ebx, 0x43b6ad13
cmove edx, ebx
cmp edi, 0xa
setl byte [esi + 4]
mov edi, dword [esi + 0x34]
mov dword [esi + 0x10], edi
setl ah
mov edi, 0xd78bfc94
cmovge edx, edi
xor ah, al
cmovne edx, ebx
mov ebx, 0x1c1ffc7c
cmp ebx, 0x43b6ad12
jg 0x56c606
cmp ebx, 0xd78bfc94
je 0x56c620
cmp ebx, 0x1c1ffc7c
jne 0x56c5bd
movzx eax, byte [esi + 0xc]
mov ah, byte [esi + 4]
mov ebx, eax
xor bl, ah
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test ah, ah
mov ebx, edi
mov dword [esi + 0x18], ecx
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
mov ecx, dword [esi + 0x18]
test al, al
cmove ebx, edi
jmp 0x56c5bd
cmp ebx, 0x43b6ad13
je 0x56c62d
cmp ebx, 0x7df2dfc5
jne 0x56c5bd
mov eax, dword [esi + 0x10]
mov dword [esi + 0x20], eax
mov ebx, edx
jmp 0x56c5bd
mov ebx, 0x7df2dfc5
mov eax, dword [esi + 0x10]
mov dword [esi + 0x20], eax
jmp 0x56c5bd
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov ebx, dword [esi + 0x14]
jmp 0x56c64a
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov ebx, dword [0x60aa8c]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp ebx, 0xa
setl cl
xor cl, al
mov eax, 0x8c874760
mov edi, 0x4d68e82b
cmovne eax, edi
cmp edx, 0xffffffff
sete byte [esi + 0xc]
mov ecx, eax
cmove ecx, edi
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, eax
mov eax, 0xbc4e5a6d
nop dword [eax + eax]
cmp eax, 0x36d61406
jle 0x56c6b0
cmp eax, 0x36d61407
je 0x56c6e5
cmp eax, 0x4d68e82b
jne 0x56c690
jmp 0x56c6f0
cmp eax, 0x8c874760
je 0x56c6e9
cmp eax, 0xbc4e5a6d
jne 0x56c690
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov edi, 0x8c874760
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
mov eax, edi
cmovne eax, ebx
test dl, dl
cmove eax, edi
jmp 0x56c690
mov eax, ecx
jmp 0x56c690
mov eax, 0x36d61407
jmp 0x56c690
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x20]
je 0x56c9f1
mov edi, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [edi + 1]
imul ecx, edi
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov edi, 0xdbbf45d4
mov ebx, 0x89d6c0b5
cmovne edi, ebx
cmp ecx, 0xffffffff
sete byte [esi + 0x1f]
mov ecx, edi
cmove ecx, ebx
cmp edx, 0xa
setl byte [esi + 0xc]
cmovge ecx, edi
mov edx, 0xaf530581
nop dword [eax]
cmp edx, 0xdbbf45d3
jg 0x56c7a0
cmp edx, 0x89d6c0b5
je 0x56c7bb
cmp edx, 0xaf530581
jne 0x56c750
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x56c750
cmp edx, 0xdbbf45d4
je 0x56c7b4
cmp edx, 0x3983e5e3
jne 0x56c750
mov edx, ecx
jmp 0x56c750
mov edx, 0x3983e5e3
jmp 0x56c750
mov dword [esi + 4], eax
mov ebx, dword [esi + 4]
mov eax, dword [esi + 8]
mov ecx, dword [eax]
mov dword [esi + 0xc], ecx
mov ecx, dword [ebx]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop word cs:[eax + eax]
cmp ecx, 0xce6e8c2e
jg 0x56c810
cmp ecx, 0x85fa3530
je 0x56c841
cmp ecx, 0xc79b93d4
jne 0x56c7e0
mov ecx, 0x85fa3530
mov edi, ebx
mov edx, dword [esi + 8]
jmp 0x56c7e0
cmp ecx, 0xe387238e
je 0x56c835
cmp ecx, 0xce6e8c2f
jne 0x56c7e0
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov eax, 0xc79b93d4
cmovl ecx, eax
jmp 0x56c7e0
mov ecx, 0x85fa3530
mov edi, dword [esi + 8]
mov edx, ebx
jmp 0x56c7e0
mov dword [esi + 0x18], edi
mov dword [esi + 0x28], edx
lea edi, [ebx + 4]
mov eax, dword [esi + 0x10]
mov ecx, dword [eax]
mov dword [esi + 0xc], ecx
mov ecx, dword [ebx + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop dword [eax]
cmp ecx, 0xce6e8c2e
jg 0x56c890
cmp ecx, 0x85fa3530
je 0x56c8c4
cmp ecx, 0xc79b93d4
jne 0x56c860
mov ecx, 0x85fa3530
mov dword [esi + 0x14], edi
mov edx, dword [esi + 0x10]
jmp 0x56c860
cmp ecx, 0xe387238e
je 0x56c8b5
cmp ecx, 0xce6e8c2f
jne 0x56c860
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov eax, 0xc79b93d4
cmovl ecx, eax
jmp 0x56c860
mov ecx, 0x85fa3530
mov eax, dword [esi + 0x10]
mov dword [esi + 0x14], eax
mov edx, edi
jmp 0x56c860
mov edi, ebx
mov ecx, dword [0x60aa78]
lea ebx, [ecx + 1]
imul ebx, ecx
test bl, 1
sete ch
cmp dword [0x60aa7c], 0xa
setge cl
setl al
or cl, bl
xor al, ch
xor cl, 1
or cl, al
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
cmp eax, dword [edx]
jle 0x56ca08
test cl, 1
je 0x5cb110
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop dword [eax]
cmp eax, 0xceb3811a
jg 0x56c980
cmp eax, 0x82f24137
je 0x56c9e3
cmp eax, 0xb8cd7b43
jne 0x56c930
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56c930
cmp eax, 0xceb3811b
je 0x56c63b
cmp eax, 0x47b76182
jne 0x56c930
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x56c930
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x56c930
mov dword [esi + 0xb0], 4
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x56ca51
test cl, 1
mov ebx, dword [esi + 0x14]
je 0x56ca43
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x56ca51
xor dl, cl
jne 0x56ca51
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [ebx]
mov dword [edi + 4], eax
jmp 0x56ca10
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x56cabf
cmp eax, 0x82f24137
je 0x56cb22
cmp eax, 0xb8cd7b43
jne 0x56ca7a
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56ca7a
cmp eax, 0xceb3811b
je 0x56c3e2
cmp eax, 0x47b76182
jne 0x56ca7a
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x56ca7a
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x56ca7a
mov eax, dword [0x60aa78]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
setne al
sete dl
cmp dword [0x60aa7c], 0xa
setge dh
setl ah
xor ah, dl
or dh, al
xor dh, 1
or dh, ah
mov byte [esi + 0x2c], dh
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x18], eax
mov eax, dword [0x60aa80]
mov dword [esi + 0x28], eax
mov eax, dword [0x60aa84]
mov dword [esi + 0x10], eax
je 0x56daf7
mov eax, dword [esi + 0x28]
lea edx, [eax - 1]
imul edx, eax
and edx, 1
mov dword [esi + 0x20], edx
sete byte [esi + 0x24]
sete al
mov edx, 0xd78bfc94
mov ebx, 0x43b6ad13
cmove edx, ebx
cmp dword [esi + 0x10], 0xa
setl byte [esi + 4]
mov edi, dword [esi + 8]
mov dword [esi + 0xc], edi
setl ah
mov edi, 0xd78bfc94
cmovge edx, edi
xor ah, al
cmovne edx, ebx
mov ebx, 0x1c1ffc7c
cmp ebx, 0x43b6ad12
jg 0x56cc12
cmp ebx, 0xd78bfc94
je 0x56cc26
cmp ebx, 0x1c1ffc7c
jne 0x56cbc9
movzx eax, byte [esi + 0x24]
movzx ebx, byte [esi + 4]
mov ah, bl
xor ah, al
test bl, bl
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test al, al
mov edi, 0xd78bfc94
cmove ebx, edi
test ah, ah
mov eax, 0x7df2dfc5
cmovne ebx, eax
jmp 0x56cbc9
cmp ebx, 0x43b6ad13
je 0x56cc2d
cmp ebx, 0x7df2dfc5
jne 0x56cbc9
mov ebx, edx
jmp 0x56cbc9
mov ebx, 0x7df2dfc5
jmp 0x56cbc9
cmp byte [esi + 0x2c], 0
je 0x56db0a
mov dword [esi + 8], 0
mov ebx, dword [esi + 0x14]
jmp 0x56cc5c
add ebx, dword [esi + 8]
sub ebx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov eax, dword [0x60aa8c]
mov dword [esi + 8], ebx
mov ebx, eax
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp ebx, 0xa
setl cl
xor cl, al
mov eax, 0x8c874760
mov edi, 0x4d68e82b
cmovne eax, edi
cmp edx, 0xffffffff
sete byte [esi + 0x24]
mov ecx, eax
cmove ecx, edi
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, eax
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x56ccb4
cmp eax, 0x36d61407
je 0x56cce9
cmp eax, 0x4d68e82b
jne 0x56cc9d
jmp 0x56ccf4
cmp eax, 0x8c874760
je 0x56cced
cmp eax, 0xbc4e5a6d
jne 0x56cc9d
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov ebx, 0x8c874760
mov edi, 0x36d61407
cmovne ebx, edi
test al, al
mov eax, ebx
cmovne eax, edi
test dl, dl
cmove eax, ebx
jmp 0x56cc9d
mov eax, ecx
jmp 0x56cc9d
mov eax, 0x36d61407
jmp 0x56cc9d
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x18]
je 0x56ce9a
mov ecx, dword [0x60aa90]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
mov edx, dword [0x60aa94]
sete byte [esi + 0x3c]
sete bl
mov ecx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
setl dl
mov edi, 0xdbbf45d4
cmovge ecx, edi
xor dl, bl
mov edx, 0x89d6c0b5
cmovne ecx, edx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x56cd93
cmp edx, 0x89d6c0b5
je 0x56cdae
cmp edx, 0xaf530581
jne 0x56cd4e
movzx ebx, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov dword [esi + 0x10], eax
mov eax, 0x3983e5e3
cmovne edi, eax
test dl, dl
mov edx, edi
cmovne edx, eax
mov eax, dword [esi + 0x10]
test bl, bl
cmove edx, edi
jmp 0x56cd4e
cmp edx, 0xdbbf45d4
je 0x56cda7
cmp edx, 0x3983e5e3
jne 0x56cd4e
mov edx, ecx
jmp 0x56cd4e
mov edx, 0x3983e5e3
jmp 0x56cd4e
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ebx, dword [ecx + 4]
mov ecx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0x24]
mov ecx, 0xb8cd7b43
cmp ecx, 0xceb3811a
jg 0x56ce27
cmp ecx, 0x82f24137
je 0x56ce8c
cmp ecx, 0xb8cd7b43
jne 0x56cde4
movzx edx, byte [esi + 0x3c]
movzx ecx, byte [esi + 0x24]
mov ch, dl
xor ch, cl
mov edi, 0x82f24137
mov eax, 0x47b76182
cmovne edi, eax
test cl, cl
mov ecx, edi
cmovne ecx, eax
test dl, dl
cmove ecx, edi
jmp 0x56cde4
cmp ecx, 0xceb3811b
je 0x56cc43
cmp ecx, 0x47b76182
jne 0x56cde4
lea eax, [esi + 0xc]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
add dword [ecx], 8
mov edi, dword [0x60aa98]
mov edx, dword [0x60aa9c]
lea ecx, [edi + 1]
imul ecx, edi
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmovne eax, edi
cmp ecx, 0xffffffff
mov ecx, eax
cmove ecx, edi
cmp edx, 0xa
cmovge ecx, eax
jmp 0x56cde4
add dword [esi + 0xc], 8
mov ecx, 0x47b76182
jmp 0x56cde4
cmp dword [esi + 8], 0x12345678
jne 0x56cead
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x56ced8
xor cl, al
je 0x56d0b3
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56cf46
cmp eax, 0x892b3f0e
je 0x56cfae
cmp eax, 0xbb35c726
jne 0x56cf01
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56cf01
cmp eax, 0x363212d3
je 0x56cf63
cmp eax, 0x41d9d43f
jne 0x56cf01
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56cf01
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x56cf01
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56d016
cmp eax, 0x892b3f0e
je 0x56d07e
cmp eax, 0xbb35c726
jne 0x56cfd6
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56cfd6
cmp eax, 0x363212d3
je 0x56d033
cmp eax, 0x41d9d43f
jne 0x56cfd6
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56cfd6
lea ecx, [esi + 0x60]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x56cfd6
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete dl
cmp dword [0x60aa7c], 0xa
setge cl
setl ah
xor ah, dl
jne 0x56d24b
or cl, al
je 0x56d24b
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x56d11e
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
cmp eax, 0x363212d2
jg 0x56d15f
cmp eax, 0x892b3f0e
je 0x56d180
cmp eax, 0xbb35c726
jne 0x56d11e
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56d11e
cmp eax, 0x363212d3
je 0x56d0dd
cmp eax, 0x41d9d43f
jne 0x56d11e
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56d11e
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56d1e8
cmp eax, 0x892b3f0e
je 0x56ced8
cmp eax, 0xbb35c726
jne 0x56d1a8
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56d1a8
cmp eax, 0x363212d3
je 0x56d205
cmp eax, 0x41d9d43f
jne 0x56d1a8
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56d1a8
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x56d1a8
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
mov dword [esi + 8], ecx
cmp ecx, 0x64
jae 0x56d335
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 5
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x56d2d1
xor dl, cl
je 0x5cb130
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne cl
cmp dword [0x60aa7c], 0xa
setge al
mov edx, eax
xor dl, cl
or al, cl
xor al, 1
or al, dl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x56d332
inc ecx
test al, al
jne 0x56d27a
inc ecx
jmp 0x56d329
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
cmp ecx, 0x43b6ad12
jg 0x56d3e2
cmp ecx, 0xd78bfc94
je 0x56d3f6
cmp ecx, 0x1c1ffc7c
jne 0x56d39e
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne ecx, ebx
test dl, dl
mov edi, 0xd78bfc94
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x56d39e
cmp ecx, 0x43b6ad13
je 0x56d3fd
cmp ecx, 0x7df2dfc5
jne 0x56d39e
mov ecx, eax
jmp 0x56d39e
mov ecx, 0x7df2dfc5
jmp 0x56d39e
jmp 0x56d402
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov eax, dword [0x60aa8c]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov edi, 0x8c874760
mov ebx, 0x4d68e82b
cmovne edi, ebx
cmp edx, 0xffffffff
sete byte [esi + 0xc]
mov edx, edi
cmove edx, ebx
mov dword [esi + 0x10], eax
cmp eax, 0xa
setl byte [esi + 4]
cmovge edx, edi
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x56d46b
cmp edi, 0x36d61407
je 0x56d4ac
cmp edi, 0x4d68e82b
jne 0x56d451
jmp 0x56d4b7
cmp edi, 0x8c874760
je 0x56d4b0
cmp edi, 0xbc4e5a6d
jne 0x56d451
movzx ebx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov bh, al
xor bh, bl
test al, al
mov edi, 0x8c874760
mov eax, 0x36d61407
cmovne edi, eax
test bl, bl
mov eax, 0x8c874760
cmove edi, eax
test bh, bh
mov eax, 0x36d61407
cmovne edi, eax
jmp 0x56d451
mov edi, edx
jmp 0x56d451
mov edi, 0x36d61407
jmp 0x56d451
mov eax, dword [esi + 0x24]
mov dword [esi + 8], eax
cmp eax, dword [esi + 0x2c]
mov dword [esi + 0x18], ecx
je 0x56dbb2
mov eax, dword [0x60aa90]
lea edi, [eax + 1]
imul edi, eax
mov eax, edi
xor eax, 0xfffffffe
test eax, edi
mov eax, dword [0x60aa94]
sete byte [esi + 0x3c]
sete bl
mov edi, 0xdbbf45d4
mov edx, 0x89d6c0b5
cmove edi, edx
cmp eax, 0xa
setl byte [esi + 0xc]
setl al
mov edx, 0xdbbf45d4
cmovge edi, edx
xor al, bl
mov eax, 0x89d6c0b5
cmovne edi, eax
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x56d55b
cmp ebx, 0x89d6c0b5
je 0x56d576
cmp ebx, 0xaf530581
jne 0x56d515
movzx ebx, byte [esi + 0x3c]
mov byte [esi + 0x14], bl
mov ah, byte [esi + 0xc]
xor bl, ah
mov edx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edx, ebx
test ah, ah
mov ebx, edx
mov eax, 0x3983e5e3
cmovne ebx, eax
cmp byte [esi + 0x14], 0
cmove ebx, edx
jmp 0x56d515
cmp ebx, 0xdbbf45d4
je 0x56d56f
cmp ebx, 0x3983e5e3
jne 0x56d515
mov ebx, edi
jmp 0x56d515
mov ebx, 0x3983e5e3
jmp 0x56d515
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete al
mov edx, 0xd78bfc94
mov ebx, 0x43b6ad13
cmove edx, ebx
cmp edi, 0xa
setl byte [esi + 4]
mov edi, dword [esi + 0x34]
mov dword [esi + 0x14], edi
setl ah
mov edi, 0xd78bfc94
cmovge edx, edi
xor ah, al
cmovne edx, ebx
mov ebx, 0x1c1ffc7c
jmp 0x56d605
movzx eax, byte [esi + 0xc]
mov ah, byte [esi + 4]
mov ebx, eax
xor bl, ah
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test ah, ah
mov ebx, edi
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
mov ecx, dword [esi + 0x18]
test al, al
cmove ebx, edi
mov edi, dword [esi + 0x10]
cmp ebx, 0x43b6ad12
jg 0x56d622
cmp ebx, 0xd78bfc94
je 0x56d63c
cmp ebx, 0x1c1ffc7c
jne 0x56d608
jmp 0x56d5d9
cmp ebx, 0x43b6ad13
je 0x56d649
cmp ebx, 0x7df2dfc5
jne 0x56d608
mov eax, dword [esi + 0x14]
mov dword [esi + 0x20], eax
mov ebx, edx
jmp 0x56d608
mov ebx, 0x7df2dfc5
mov eax, dword [esi + 0x14]
mov dword [esi + 0x20], eax
jmp 0x56d608
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
jmp 0x56d663
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edi, dword [0x60aa8c]
lea edx, [ecx + 1]
imul edx, ecx
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, edi
mov edi, 0x8c874760
mov ecx, 0x4d68e82b
cmovne edi, ecx
test eax, edx
sete byte [esi + 0xc]
mov ecx, edi
mov eax, 0x4d68e82b
cmove ecx, eax
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, edi
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x56d6c0
cmp eax, 0x36d61407
je 0x56d6f5
cmp eax, 0x4d68e82b
jne 0x56d6a9
jmp 0x56d700
cmp eax, 0x8c874760
je 0x56d6f9
cmp eax, 0xbc4e5a6d
jne 0x56d6a9
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov edi, 0x8c874760
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
mov eax, edi
cmovne eax, ebx
test dl, dl
cmove eax, edi
jmp 0x56d6a9
mov eax, ecx
jmp 0x56d6a9
mov eax, 0x36d61407
jmp 0x56d6a9
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x20]
je 0x56d9bd
mov ecx, dword [0x60aa90]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
mov edx, dword [0x60aa94]
sete byte [esi + 0x1f]
sete bl
mov ecx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0xc]
setl dl
mov edi, 0xdbbf45d4
cmovge ecx, edi
xor dl, bl
mov edx, 0x89d6c0b5
cmovne ecx, edx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x56d79f
cmp edx, 0x89d6c0b5
je 0x56d7ba
cmp edx, 0xaf530581
jne 0x56d75a
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov dword [esi + 0x14], eax
mov eax, 0x3983e5e3
cmovne edi, eax
test dl, dl
mov edx, edi
cmovne edx, eax
mov eax, dword [esi + 0x14]
test bl, bl
cmove edx, edi
jmp 0x56d75a
cmp edx, 0xdbbf45d4
je 0x56d7b3
cmp edx, 0x3983e5e3
jne 0x56d75a
mov edx, ecx
jmp 0x56d75a
mov edx, 0x3983e5e3
jmp 0x56d75a
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
cmp ecx, 0xce6e8c2e
jg 0x56d7f6
cmp ecx, 0x85fa3530
je 0x56d827
cmp ecx, 0xc79b93d4
jne 0x56d7d2
mov ecx, 0x85fa3530
mov ebx, eax
mov edi, dword [esi + 8]
jmp 0x56d7d2
cmp ecx, 0xe387238e
je 0x56d81b
cmp ecx, 0xce6e8c2f
jne 0x56d7d2
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x56d7d2
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edi, eax
jmp 0x56d7d2
mov dword [esi + 0x28], edi
lea edi, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
mov dword [esi + 0x18], edi
cmp ecx, 0xce6e8c2e
jg 0x56d868
cmp ecx, 0x85fa3530
je 0x56d8ab
cmp ecx, 0xc79b93d4
jne 0x56d843
mov ecx, 0x85fa3530
mov dword [esi + 0x14], edi
mov edx, dword [esi + 0x10]
jmp 0x56d843
cmp ecx, 0xe387238e
je 0x56d89c
cmp ecx, 0xce6e8c2f
jne 0x56d843
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, edx
mov edx, eax
mov eax, ebx
mov ebx, 0xc79b93d4
cmovl ecx, ebx
mov ebx, eax
mov eax, edx
mov edx, edi
mov edi, dword [esi + 0x18]
jmp 0x56d843
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edx, edi
jmp 0x56d843
mov ecx, dword [ebx]
mov edi, dword [0x60aa78]
lea ebx, [edi + 1]
imul ebx, edi
mov edi, ebx
xor edi, 0xfffffffe
test edi, ebx
sete bh
cmp dword [0x60aa7c], 0xa
setl bl
or bl, bh
cmp ecx, dword [edx]
jle 0x56d9d4
test bl, bl
je 0x5cb170
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x56d94c
cmp eax, 0x82f24137
je 0x56d9af
cmp eax, 0xb8cd7b43
jne 0x56d907
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56d907
cmp eax, 0xceb3811b
je 0x56d654
cmp eax, 0x47b76182
jne 0x56d907
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x56d907
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x56d907
mov dword [esi + 0xb0], 6
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x56da1f
test bl, bl
mov edi, dword [esi + 0x28]
je 0x56da11
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [esi + 0x14]
mov ecx, dword [ecx]
mov dword [eax + 4], ecx
mov edx, dword [0x60aa78]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dh
cmp dword [0x60aa7c], 0xa
setl bl
setge dl
cmp bl, dh
jne 0x56da1f
or dl, cl
test dl, 1
je 0x56da1f
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [esi + 0x14]
mov ecx, dword [ecx]
mov dword [eax + 4], ecx
jmp 0x56d9db
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x56da88
cmp eax, 0x82f24137
je 0x56dae9
cmp eax, 0xb8cd7b43
jne 0x56da48
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56da48
cmp eax, 0xceb3811b
je 0x56d3ff
cmp eax, 0x47b76182
jne 0x56da48
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x82f24137
mov ebx, 0xceb3811b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x56da48
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x56da48
mov edx, dword [esi + 0x28]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
and edx, eax
mov dword [esi + 0x20], edx
mov edi, dword [esi + 0x20]
test edi, edi
sete al
mov ebx, dword [esi + 0x10]
cmp ebx, 0xa
setl dl
xor dl, al
mov eax, 0xd78bfc94
mov edx, 0x43b6ad13
cmovne eax, edx
test edi, edi
sete byte [esi + 0x24]
mov edi, eax
cmove edi, edx
cmp ebx, 0xa
setl byte [esi + 4]
mov edx, dword [esi + 8]
mov dword [esi + 0xc], edx
cmovge edi, eax
mov ebx, 0x1c1ffc7c
jmp 0x56db51
mov ebx, 0x7df2dfc5
cmp ebx, 0x43b6ad12
jg 0x56db9a
cmp ebx, 0xd78bfc94
je 0x56db4c
cmp ebx, 0x1c1ffc7c
jne 0x56db51
movzx eax, byte [esi + 0x24]
movzx edx, byte [esi + 4]
mov ah, al
xor ah, dl
test dl, dl
mov ebx, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne ebx, edx
test al, al
mov edx, 0xd78bfc94
cmove ebx, edx
test ah, ah
mov eax, 0x7df2dfc5
cmovne ebx, eax
jmp 0x56db51
cmp ebx, 0x43b6ad13
je 0x56cb83
cmp ebx, 0x7df2dfc5
jne 0x56db51
mov ebx, edi
jmp 0x56db51
mov eax, dword [0x60aa78]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl dl
or dl, al
mov byte [esi + 0x48], dl
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x14], eax
mov eax, dword [0x60aa80]
mov dword [esi + 0x2c], eax
mov eax, dword [0x60aa84]
mov dword [esi + 0x20], eax
je 0x56e66a
mov edx, dword [esi + 0x2c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
and edx, eax
mov dword [esi + 0x28], edx
sete byte [esi + 0x24]
sete al
mov edx, 0xd78bfc94
mov edi, 0x43b6ad13
cmove edx, edi
cmp dword [esi + 0x20], 0xa
setl byte [esi + 4]
mov ebx, dword [esi + 8]
mov dword [esi + 0xc], ebx
setl ah
mov ebx, 0xd78bfc94
cmovge edx, ebx
xor ah, al
cmovne edx, edi
mov ebx, 0x1c1ffc7c
cmp ebx, 0x43b6ad12
jg 0x56dc86
cmp ebx, 0xd78bfc94
je 0x56dc9a
cmp ebx, 0x1c1ffc7c
jne 0x56dc43
movzx ecx, byte [esi + 0x24]
mov ah, byte [esi + 4]
mov ebx, ecx
xor bl, ah
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test ah, ah
mov ebx, edi
mov eax, 0x7df2dfc5
cmovne ebx, eax
test cl, cl
cmove ebx, edi
jmp 0x56dc43
cmp ebx, 0x43b6ad13
je 0x56dca1
cmp ebx, 0x7df2dfc5
jne 0x56dc43
mov ebx, edx
jmp 0x56dc43
mov ebx, 0x7df2dfc5
jmp 0x56dc43
cmp byte [esi + 0x48], 0
je 0x56e67d
mov dword [esi + 8], 0
mov edi, dword [esi + 0x10]
mov ecx, dword [esi + 0x18]
jmp 0x56dcd2
add ebx, dword [esi + 8]
sub ebx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edi, dword [0x60aa8c]
mov dword [esi + 8], ebx
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp edi, 0xa
setl cl
xor cl, al
mov eax, 0x8c874760
mov ebx, edi
mov edi, 0x4d68e82b
cmovne eax, edi
cmp edx, 0xffffffff
sete byte [esi + 0x24]
mov ecx, eax
cmove ecx, edi
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, eax
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x56dd2c
cmp eax, 0x36d61407
je 0x56dd66
cmp eax, 0x4d68e82b
jne 0x56dd15
jmp 0x56dd71
cmp eax, 0x8c874760
je 0x56dd6a
cmp eax, 0xbc4e5a6d
jne 0x56dd15
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov dh, al
xor dh, dl
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x56dd15
mov eax, ecx
jmp 0x56dd15
mov eax, 0x36d61407
jmp 0x56dd15
mov eax, dword [esi + 0xc]
mov dword [esi + 0x10], eax
cmp eax, dword [esi + 0x14]
je 0x56df15
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne ebx, edi
cmp ecx, 0xffffffff
sete byte [esi + 0x3c]
mov eax, ebx
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge eax, ebx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x56de0c
cmp edx, 0x89d6c0b5
je 0x56de27
cmp edx, 0xaf530581
jne 0x56ddcd
movzx ebx, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov ecx, 0x3983e5e3
cmovne edi, ecx
test dl, dl
mov edx, edi
cmovne edx, ecx
test bl, bl
cmove edx, edi
jmp 0x56ddcd
cmp edx, 0xdbbf45d4
je 0x56de20
cmp edx, 0x3983e5e3
jne 0x56ddcd
mov edx, eax
jmp 0x56ddcd
mov edx, 0x3983e5e3
jmp 0x56ddcd
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ebx, dword [ecx + 4]
mov ecx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0x24]
mov ecx, 0xb8cd7b43
cmp ecx, 0xceb3811a
jg 0x56dea8
cmp ecx, 0x82f24137
je 0x56df07
cmp ecx, 0xb8cd7b43
jne 0x56de60
movzx edx, byte [esi + 0x3c]
movzx ecx, byte [esi + 0x24]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0x82f24137
mov edi, 0x47b76182
cmovne ecx, edi
test dl, dl
mov eax, 0x82f24137
cmove ecx, eax
test dh, dh
cmovne ecx, edi
jmp 0x56de60
cmp ecx, 0xceb3811b
je 0x56dcba
cmp ecx, 0x47b76182
jne 0x56de60
lea ecx, [esi + 0xc]
mov dword [esi + 4], ecx
mov ecx, dword [esi + 4]
add dword [ecx], 8
mov ecx, dword [0x60aa98]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete dl
mov ecx, 0x82f24137
mov eax, 0xceb3811b
cmove ecx, eax
cmp dword [0x60aa9c], 0xa
mov edi, 0x82f24137
cmovge ecx, edi
setl dh
xor dh, dl
cmovne ecx, eax
jmp 0x56de60
add dword [esi + 0xc], 8
mov ecx, 0x47b76182
jmp 0x56de60
cmp dword [esi + 8], 0x12345678
jne 0x56df28
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x56df54
xor cl, al
je 0x56e126
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56dfbc
cmp eax, 0x892b3f0e
je 0x56e024
cmp eax, 0xbb35c726
jne 0x56df7c
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56df7c
cmp eax, 0x363212d3
je 0x56dfd9
cmp eax, 0x41d9d43f
jne 0x56df7c
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56df7c
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x56df7c
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56e092
cmp eax, 0x892b3f0e
je 0x56e0f5
cmp eax, 0xbb35c726
jne 0x56e04d
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56e04d
cmp eax, 0x363212d3
je 0x56e0af
cmp eax, 0x41d9d43f
jne 0x56e04d
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56e04d
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x56e04d
mov ecx, dword [0x60aa78]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60aa7c], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x56e2c5
or cl, al
test cl, 1
je 0x56e2c5
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x56e191
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
cmp eax, 0x363212d2
jg 0x56e1d2
cmp eax, 0x892b3f0e
je 0x56e1f3
cmp eax, 0xbb35c726
jne 0x56e191
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56e191
cmp eax, 0x363212d3
je 0x56e150
cmp eax, 0x41d9d43f
jne 0x56e191
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56e191
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x56e261
cmp eax, 0x892b3f0e
je 0x56df54
cmp eax, 0xbb35c726
jne 0x56e21c
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x56e21c
cmp eax, 0x363212d3
je 0x56e27e
cmp eax, 0x41d9d43f
jne 0x56e21c
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x56e21c
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x56e21c
mov eax, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x4c]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0x3def23ff
cmp eax, 0xde9169a
jg 0x56e313
cmp eax, 0x8e89d987
je 0x56e39b
cmp eax, 0xcc8e990
jne 0x56e2ed
mov word [esi + 0x40], 0x7a61
mov eax, 0xde9169b
jmp 0x56e2ed
cmp eax, 0xde9169b
je 0x56e348
cmp eax, 0x3def23ff
jne 0x56e2ed
movzx ecx, byte [esi + 0x4c]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0xcc8e990
mov edi, 0xde9169b
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56e2ed
lea eax, [esi + 0x40]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x60]
mov word [eax], 0x7a61
mov edx, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xcc8e990
mov edi, 0x8e89d987
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x56e2ed
mov eax, dword [esi + 0x60]
sub esp, 4
movzx eax, byte [esi + 0x30]
mov byte [esp], al
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0043dd20
mov ecx, edi
call fcn.0040d170
mov dword [esi + 0xb0], 7
mov dword [esi + 0x10], 0
jmp 0x56e3de
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
cmp eax, 0x3e8
je 0x56e725
movsx eax, byte [esi + 0x41]
movsx edx, byte [esi + 0x40]
mov dword [esi + 0xb0], 7
lea ecx, [esi + 0x40]
push eax
push edx
lea eax, [esi + 0x24]
push eax
call fcn.00435510
mov edx, dword [0x60a990]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete ah
cmp dword [0x60a994], 0xa
setl dh
setge dl
cmp dh, ah
jne 0x56e42c
or dl, cl
test dl, 1
jne 0x5cb1a8
movsx eax, al
lea ecx, [esi + 0x60]
push eax
call fcn.00436970
lea ecx, [esi + 0x60]
call fcn.005664d0
cmp byte [eax], 0x6f
je 0x56e4b3
mov ecx, dword [0x60a990]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60a994], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x56e46e
or cl, al
test cl, 1
jne 0x56e4a0
lea ecx, [esi + 0x60]
call fcn.005664d0
mov edx, dword [0x60a990]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dh
cmp dword [0x60a994], 0xa
setge dl
setl bl
xor bl, dh
jne 0x56e4aa
or dl, cl
test dl, 1
je 0x56e4aa
lea ecx, [esi + 0x60]
call fcn.005664d0
jmp 0x56e46e
cmp byte [eax], 0x75
jne 0x56e3cc
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0040d830
mov dword [esi + 0x4c], eax
mov ecx, edi
call fcn.0040d830
add eax, dword [esi + 0x70]
mov dword [esi + 8], eax
jmp 0x56e4d2
mov eax, dword [esi + 0x30]
mov edx, dword [0x60a998]
mov ecx, dword [0x60a99c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x4a293c83
mov ebx, 0x61c5fcf1
cmovne edx, ebx
cmp eax, 0xffffffff
sete byte [esi + 4]
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x30]
cmovge eax, edx
mov ecx, 0x354728f5
cmp ecx, 0x4a293c82
jle 0x56e539
cmp ecx, 0x4a293c83
je 0x56e575
cmp ecx, 0x61c5fcf1
jne 0x56e51f
jmp 0x56e580
cmp ecx, 0xb74ba074
je 0x56e57c
cmp ecx, 0x354728f5
jne 0x56e51f
movzx edx, byte [esi + 4]
movzx ecx, byte [esi + 0x30]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0x4a293c83
mov edi, 0xb74ba074
cmovne ecx, edi
test dl, dl
mov ebx, 0x4a293c83
cmove ecx, ebx
test dh, dh
cmovne ecx, edi
jmp 0x56e51f
mov ecx, 0xb74ba074
jmp 0x56e51f
mov ecx, eax
jmp 0x56e51f
mov ebx, dword [esi + 0x4c]
cmp ebx, dword [esi + 8]
je 0x56e3cc
movsx eax, byte [ebx]
push eax
call fcn.005de535
add esp, 4
and al, 0xa
mov byte [ebx], al
mov eax, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xc2538ca0
cmp eax, 0x1ec364a7
jg 0x56e5e3
cmp eax, 0xc2538ca0
je 0x56e640
cmp eax, 0xbc7d055
jne 0x56e5c4
inc dword [esi + 0x4c]
mov eax, 0x640d1264
jmp 0x56e5c4
cmp eax, 0x1ec364a8
je 0x56e4cf
cmp eax, 0x640d1264
jne 0x56e5c4
lea eax, [esi + 0x4c]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x30]
inc dword [eax]
mov edx, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xbc7d055
mov edi, 0x1ec364a8
cmovne ebx, edi
test edx, eax
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x56e5c4
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0xbc7d055
mov edi, 0x640d1264
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x56e5c4
mov edx, dword [esi + 0x2c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
and edx, eax
mov dword [esi + 0x28], edx
cmp dword [esi + 0x28], 0
sete byte [esi + 0x24]
sete al
mov edi, 0xd78bfc94
mov edx, 0x43b6ad13
cmove edi, edx
cmp dword [esi + 0x20], 0xa
setl byte [esi + 4]
mov edx, dword [esi + 8]
mov dword [esi + 0xc], edx
setl dl
mov ebx, 0xd78bfc94
cmovge edi, ebx
xor dl, al
mov eax, 0x43b6ad13
cmovne edi, eax
mov ebx, 0x1c1ffc7c
jmp 0x56e6c4
mov ebx, 0x7df2dfc5
cmp ebx, 0x43b6ad12
jg 0x56e70d
cmp ebx, 0xd78bfc94
je 0x56e6bf
cmp ebx, 0x1c1ffc7c
jne 0x56e6c4
movzx eax, byte [esi + 0x24]
movzx edx, byte [esi + 4]
mov ah, dl
xor ah, al
test dl, dl
mov ebx, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne ebx, edx
test al, al
mov edx, 0xd78bfc94
cmove ebx, edx
test ah, ah
mov eax, 0x7df2dfc5
cmovne ebx, eax
jmp 0x56e6c4
cmp ebx, 0x43b6ad13
je 0x56dbf9
cmp ebx, 0x7df2dfc5
jne 0x56e6c4
mov ebx, edi
jmp 0x56e6c4
mov ecx, dword [0x60a990]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60a994], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x56e752
or cl, al
test cl, 1
jne 0x56e868
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x56e794
cmp eax, 0xcb7dce01
je 0x56e7ce
cmp eax, 0xf454cecc
jne 0x56e77a
jmp 0x56e82c
cmp eax, 0xb86c543
je 0x56e7dd
cmp eax, 0x1d50f87a
jne 0x56e77a
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xcb7dce01
mov ebx, 0xb86c543
cmovne eax, ebx
test cl, cl
mov ecx, 0xcb7dce01
cmove eax, ecx
test dl, dl
cmovne eax, ebx
jmp 0x56e77a
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x56e77a
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, eax
add edi, 0xd7
mov eax, dword [0x60a9a8]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xcb7dce01
mov ebx, 0xf454cecc
cmove eax, ebx
cmp dword [0x60a9ac], 0xa
mov edx, 0xcb7dce01
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x56e77a
mov dword [esi + 0x30], edi
mov eax, dword [esi + 0x30]
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x60a994], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x56e947
or dl, cl
je 0x56e947
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
jmp 0x56e8dc
cmp eax, 0xb86c542
jg 0x56e8f3
cmp byte [eax], 0x31
jne 0x56ea3b
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x56e993
cmp eax, 0xcb7dce01
je 0x56e9c8
cmp eax, 0xb86c543
je 0x56e9d7
lea ecx, [esi + 0x60]
call fcn.0040f050
mov eax, dword [0x60d648]
mov ecx, dword [0x60d64c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x92]
cmp ecx, 0xa
setl byte [esi + 0x93]
mov eax, 0xae58765
cmp eax, 0xae58764
jg 0x56ea8f
cmp eax, 0x95293c3e
je 0x56f75c
cmp eax, 0xae58765
je 0x570431
test edi, edi
sete al
mov ebx, dword [esi + 0x20]
cmp ebx, 0xa
setl cl
xor cl, al
mov eax, 0xd78bfc94
mov ecx, 0x43b6ad13
cmovne eax, ecx
test edi, edi
sete byte [esi + 0x24]
mov edi, eax
cmove edi, ecx
cmp ebx, 0xa
setl byte [esi + 4]
mov edx, dword [esi + 8]
mov dword [esi + 0xc], edx
cmovge edi, eax
mov edx, 0x1c1ffc7c
jmp 0x58320f
mov edx, 0x7df2dfc5
cmp edx, 0x43b6ad12
jg 0x583253
cmp edx, 0xd78bfc94
je 0x58320a
cmp edx, 0x1c1ffc7c
jne 0x58320f
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov edx, eax
xor dl, cl
mov ebx, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne ebx, edx
test cl, cl
mov edx, ebx
mov ecx, 0x7df2dfc5
cmovne edx, ecx
test al, al
cmove edx, ebx
jmp 0x58320f
cmp edx, 0x43b6ad13
je 0x583267
cmp edx, 0x7df2dfc5
jne 0x58320f
mov edx, edi
jmp 0x58320f
mov eax, dword [esi + 0x2c]
lea edx, [eax + 1]
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
mov eax, edi
and eax, edx
sete al
mov ebx, dword [esi + 0x20]
cmp ebx, 0xa
setl cl
xor cl, al
mov ecx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne ecx, eax
and edi, edx
mov dword [esi + 0x28], edi
sete byte [esi + 0x24]
mov edx, ecx
cmove edx, eax
cmp ebx, 0xa
setl byte [esi + 4]
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
cmovge edx, ecx
mov edi, 0x1c1ffc7c
mov eax, dword [esi + 0x18]
cmp edi, 0x43b6ad12
jg 0x583301
cmp edi, 0xd78bfc94
je 0x583315
cmp edi, 0x1c1ffc7c
jne 0x5832ba
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov ah, al
xor ah, cl
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test cl, cl
mov edi, ebx
mov ecx, 0x7df2dfc5
cmovne edi, ecx
test al, al
mov eax, dword [esi + 0x18]
cmove edi, ebx
jmp 0x5832ba
cmp edi, 0x43b6ad13
je 0x58331c
cmp edi, 0x7df2dfc5
jne 0x5832ba
mov edi, edx
jmp 0x5832ba
mov edi, 0x7df2dfc5
jmp 0x5832ba
cmp byte [esi + 0x48], 0
je 0x5835bd
mov dword [esi + 8], 0
mov edi, dword [esi + 0x10]
jmp 0x58334b
mov eax, dword [esi + 8]
add eax, ecx
sub eax, dword [esi + 0x10]
mov dword [esi + 8], eax
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov edi, dword [0x60aa8c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, 0x8c874760
mov ecx, 0x4d68e82b
cmovne ebx, ecx
test eax, edx
sete byte [esi + 0x24]
mov ecx, ebx
mov eax, 0x4d68e82b
cmove ecx, eax
cmp edi, 0xa
setl byte [esi + 4]
cmovge ecx, ebx
mov eax, 0xbc4e5a6d
nop
cmp eax, 0x36d61406
jle 0x5833b0
cmp eax, 0x36d61407
je 0x5833ea
cmp eax, 0x4d68e82b
jne 0x583390
jmp 0x5833f5
cmp eax, 0x8c874760
je 0x5833ee
cmp eax, 0xbc4e5a6d
jne 0x583390
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov dh, al
xor dh, dl
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x583390
mov eax, ecx
jmp 0x583390
mov eax, 0x36d61407
jmp 0x583390
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x14]
je 0x5835c5
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne ebx, edi
cmp ecx, 0xffffffff
sete byte [esi + 0x3c]
mov ecx, ebx
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge ecx, ebx
mov edx, 0xaf530581
nop
cmp edx, 0xdbbf45d3
jg 0x5834a0
cmp edx, 0x89d6c0b5
je 0x5834bb
cmp edx, 0xaf530581
jne 0x583450
movzx ebx, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x583450
cmp edx, 0xdbbf45d4
je 0x5834b4
cmp edx, 0x3983e5e3
jne 0x583450
mov edx, ecx
jmp 0x583450
mov edx, 0x3983e5e3
jmp 0x583450
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ecx, dword [ecx + 4]
mov edx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp edx, 0xa
setl byte [esi + 0x24]
mov ebx, 0xb8cd7b43
nop word cs:[eax + eax]
cmp ebx, 0xceb3811a
jg 0x583550
cmp ebx, 0x82f24137
je 0x5835af
cmp ebx, 0xb8cd7b43
jne 0x583500
movzx eax, byte [esi + 0x3c]
mov dh, byte [esi + 0x24]
mov dl, al
xor dl, dh
test dh, dh
mov ebx, 0x82f24137
mov edi, 0x47b76182
cmovne ebx, edi
test al, al
mov eax, 0x82f24137
cmove ebx, eax
test dl, dl
cmovne ebx, edi
jmp 0x583500
cmp ebx, 0xceb3811b
je 0x583332
cmp ebx, 0x47b76182
jne 0x583500
lea eax, [esi + 0xc]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
mov ebx, 0x82f24137
mov edi, 0xceb3811b
cmove ebx, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge ebx, edx
setl dl
xor dl, al
cmovne ebx, edi
jmp 0x583500
add dword [esi + 0xc], 8
mov ebx, 0x47b76182
jmp 0x583500
mov edi, dword [esi + 0x28]
jmp 0x5831cb
cmp dword [esi + 8], 0x12345678
jne 0x5835d8
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x583604
xor cl, al
je 0x5837dd
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x583672
cmp eax, 0x892b3f0e
je 0x5836d6
cmp eax, 0xbb35c726
jne 0x58362d
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x58362d
cmp eax, 0x363212d3
je 0x58368f
cmp eax, 0x41d9d43f
jne 0x58362d
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x58362d
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x58362d
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x583744
cmp eax, 0x892b3f0e
je 0x5837a8
cmp eax, 0xbb35c726
jne 0x5836ff
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5836ff
cmp eax, 0x363212d3
je 0x583761
cmp eax, 0x41d9d43f
jne 0x5836ff
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5836ff
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5836ff
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x60aa7c], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x583977
or cl, al
je 0x583977
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x58384e
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
cmp eax, 0x363212d2
jg 0x58388a
cmp eax, 0x892b3f0e
je 0x5838ab
cmp eax, 0xbb35c726
jne 0x58384e
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x58384e
cmp eax, 0x363212d3
je 0x583808
cmp eax, 0x41d9d43f
jne 0x58384e
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x58384e
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x583913
cmp eax, 0x892b3f0e
je 0x583604
cmp eax, 0xbb35c726
jne 0x5838d3
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5838d3
cmp eax, 0x363212d3
je 0x583930
cmp eax, 0x41d9d43f
jne 0x5838d3
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5838d3
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5838d3
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
cmp ecx, 0x64
jae 0x583a59
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0x40
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x5839fc
xor dl, cl
je 0x5cb0c0
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl al
or al, cl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x583a56
inc ecx
test al, al
jne 0x5839a6
inc ecx
jmp 0x583a4d
mov edx, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xd78bfc94
mov edi, 0x43b6ad13
cmovne edx, edi
cmp eax, 0xffffffff
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
sete byte [esi + 0xc]
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
cmovge eax, edx
mov ecx, 0x1c1ffc7c
cmp ecx, 0x43b6ad12
jg 0x583b0b
cmp ecx, 0xd78bfc94
je 0x583b1f
cmp ecx, 0x1c1ffc7c
jne 0x583ac7
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne ecx, ebx
test dl, dl
mov edi, 0xd78bfc94
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x583ac7
cmp ecx, 0x43b6ad13
je 0x583b26
cmp ecx, 0x7df2dfc5
jne 0x583ac7
mov ecx, eax
jmp 0x583ac7
mov ecx, 0x7df2dfc5
jmp 0x583ac7
jmp 0x583b2b
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov dword [esi + 0x18], ecx
mov eax, dword [0x60aa8c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x8c874760
mov ecx, 0x4d68e82b
cmovne ebx, ecx
test edi, edx
sete byte [esi + 0xc]
mov edx, ebx
cmove edx, ecx
mov ecx, dword [esi + 0x18]
mov dword [esi + 0x14], eax
cmp eax, 0xa
setl byte [esi + 4]
cmovge edx, ebx
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x583b98
cmp edi, 0x36d61407
je 0x583bd9
cmp edi, 0x4d68e82b
jne 0x583b7e
jmp 0x583be4
cmp edi, 0x8c874760
je 0x583bdd
cmp edi, 0xbc4e5a6d
jne 0x583b7e
movzx ebx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov bh, al
xor bh, bl
test al, al
mov edi, 0x8c874760
mov eax, 0x36d61407
cmovne edi, eax
test bl, bl
mov eax, 0x8c874760
cmove edi, eax
test bh, bh
mov eax, 0x36d61407
cmovne edi, eax
jmp 0x583b7e
mov edi, edx
jmp 0x583b7e
mov edi, 0x36d61407
jmp 0x583b7e
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x2c]
je 0x584275
mov dword [esi + 8], eax
mov eax, dword [0x60aa90]
mov ebx, dword [0x60aa94]
lea edi, [eax + 1]
imul edi, eax
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
sete al
cmp ebx, 0xa
setl dl
xor dl, al
mov eax, 0xdbbf45d4
mov edx, 0x89d6c0b5
cmovne eax, edx
cmp edi, 0xffffffff
sete byte [esi + 0x3c]
mov edi, eax
cmove edi, edx
cmp ebx, 0xa
setl byte [esi + 0xc]
cmovge edi, eax
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x583c89
cmp ebx, 0x89d6c0b5
je 0x583ca4
cmp ebx, 0xaf530581
jne 0x583c3f
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0xc]
mov ah, al
xor ah, dl
mov dword [esi + 0x10], edi
mov edi, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edi, ebx
test dl, dl
mov ebx, edi
mov edx, 0x3983e5e3
cmovne ebx, edx
test al, al
cmove ebx, edi
mov edi, dword [esi + 0x10]
jmp 0x583c3f
cmp ebx, 0xdbbf45d4
je 0x583c9d
cmp ebx, 0x3983e5e3
jne 0x583c3f
mov ebx, edi
jmp 0x583c3f
mov ebx, 0x3983e5e3
jmp 0x583c3f
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
mov dword [esi + 0x10], edi
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp edi, 0xa
setl bh
xor bh, bl
mov ebx, 0xd78bfc94
mov edi, 0x43b6ad13
cmovne ebx, edi
test eax, edx
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
sete byte [esi + 0xc]
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov edx, ebx
cmove edx, edi
cmp dword [esi + 0x10], 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x34]
cmovge edx, ebx
mov ebx, 0x1c1ffc7c
cmp ebx, 0x43b6ad12
jg 0x583d56
cmp ebx, 0xd78bfc94
je 0x583d6d
cmp ebx, 0x1c1ffc7c
jne 0x583d07
mov dword [esi + 0x10], eax
movzx eax, byte [esi + 0xc]
mov ah, byte [esi + 4]
mov ebx, eax
xor bl, ah
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test ah, ah
mov ebx, edi
mov dword [esi + 0x28], edx
mov edx, 0x7df2dfc5
cmovne ebx, edx
mov edx, dword [esi + 0x28]
test al, al
mov eax, dword [esi + 0x10]
cmove ebx, edi
jmp 0x583d07
cmp ebx, 0x43b6ad13
je 0x583d77
cmp ebx, 0x7df2dfc5
jne 0x583d07
mov dword [esi + 0x20], eax
mov ebx, edx
jmp 0x583d07
mov ebx, 0x7df2dfc5
mov dword [esi + 0x20], eax
jmp 0x583d07
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0x14]
jmp 0x583d94
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edx, dword [0x60aa8c]
lea eax, [ecx - 1]
imul eax, ecx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete byte [esi + 0xc]
sete al
mov ecx, 0x8c874760
mov edi, 0x4d68e82b
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 4]
setl dl
mov ebx, 0x8c874760
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
mov eax, 0xbc4e5a6d
nop word cs:[eax + eax]
cmp eax, 0x36d61406
jle 0x583e00
cmp eax, 0x36d61407
je 0x583e3a
cmp eax, 0x4d68e82b
jne 0x583de0
jmp 0x583e45
cmp eax, 0x8c874760
je 0x583e3e
cmp eax, 0xbc4e5a6d
jne 0x583de0
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov dh, dl
xor dh, al
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x583de0
mov eax, ecx
jmp 0x583de0
mov eax, 0x36d61407
jmp 0x583de0
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x20]
je 0x58413f
mov edi, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov dword [esi + 0x14], eax
mov eax, 0x89d6c0b5
cmovne ebx, eax
test edi, ecx
sete byte [esi + 0x1f]
mov ecx, ebx
cmove ecx, eax
mov eax, dword [esi + 0x14]
cmp edx, 0xa
setl byte [esi + 0xc]
cmovge ecx, ebx
mov edx, 0xaf530581
nop word cs:[eax + eax]
cmp edx, 0xdbbf45d3
jg 0x583f00
cmp edx, 0x89d6c0b5
je 0x583f1b
cmp edx, 0xaf530581
jne 0x583eb0
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x583eb0
cmp edx, 0xdbbf45d4
je 0x583f14
cmp edx, 0x3983e5e3
jne 0x583eb0
mov edx, ecx
jmp 0x583eb0
mov edx, 0x3983e5e3
jmp 0x583eb0
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop word cs:[eax + eax]
cmp ecx, 0xce6e8c2e
jg 0x583f70
cmp ecx, 0x85fa3530
je 0x583fa1
cmp ecx, 0xc79b93d4
jne 0x583f40
mov ecx, 0x85fa3530
mov ebx, eax
mov edi, dword [esi + 8]
jmp 0x583f40
cmp ecx, 0xe387238e
je 0x583f95
cmp ecx, 0xce6e8c2f
jne 0x583f40
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x583f40
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edi, eax
jmp 0x583f40
mov dword [esi + 0x28], edi
lea edi, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
mov dword [esi + 0x18], edi
nop dword [eax]
cmp ecx, 0xce6e8c2e
jg 0x583ff0
cmp ecx, 0x85fa3530
je 0x584033
cmp ecx, 0xc79b93d4
jne 0x583fc0
mov ecx, 0x85fa3530
mov dword [esi + 0x14], edi
mov edx, dword [esi + 0x10]
jmp 0x583fc0
cmp ecx, 0xe387238e
je 0x584024
cmp ecx, 0xce6e8c2f
jne 0x583fc0
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, edx
mov edx, eax
mov eax, ebx
mov ebx, 0xc79b93d4
cmovl ecx, ebx
mov ebx, eax
mov eax, edx
mov edx, edi
mov edi, dword [esi + 0x18]
jmp 0x583fc0
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edx, edi
jmp 0x583fc0
mov ecx, dword [ebx]
mov edi, dword [0x60aa78]
lea ebx, [edi + 1]
imul ebx, edi
mov edi, ebx
xor edi, 0xfffffffe
test edi, ebx
sete bh
cmp dword [0x60aa7c], 0xa
setl bl
or bl, bh
cmp ecx, dword [edx]
jle 0x584156
test bl, bl
je 0x5cb0e0
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop
cmp eax, 0xceb3811a
jg 0x5840d0
cmp eax, 0x82f24137
je 0x584131
cmp eax, 0xb8cd7b43
jne 0x584090
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x584090
cmp eax, 0xceb3811b
je 0x583d85
cmp eax, 0x47b76182
jne 0x584090
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x82f24137
mov ebx, 0xceb3811b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x584090
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x584090
mov dword [esi + 0xb0], 0x41
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x58419c
test bl, bl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x584191
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x58419c
xor dl, cl
jne 0x58419c
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x584160
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x584204
cmp eax, 0x82f24137
je 0x584267
cmp eax, 0xb8cd7b43
jne 0x5841c4
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5841c4
cmp eax, 0xceb3811b
je 0x583b28
cmp eax, 0x47b76182
jne 0x5841c4
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x5841c4
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x5841c4
mov eax, dword [0x60aa78]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl dl
or dl, al
mov byte [esi + 0x5c], dl
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x20], eax
mov eax, dword [0x60aa80]
mov dword [esi + 0x2c], eax
mov eax, dword [0x60aa84]
mov dword [esi + 8], eax
je 0x58523e
mov eax, dword [esi + 0x2c]
lea edx, [eax + 1]
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
mov eax, edi
and eax, edx
sete al
cmp dword [esi + 8], 0xa
setl ah
xor ah, al
mov ebx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne ebx, eax
and edi, edx
mov dword [esi + 0x28], edi
sete byte [esi + 0x24]
mov edx, ebx
cmove edx, eax
cmp dword [esi + 8], 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x10]
mov dword [esi + 0xc], eax
cmovge edx, ebx
mov edi, 0x1c1ffc7c
cmp edi, 0x43b6ad12
jg 0x584351
cmp edi, 0xd78bfc94
je 0x584365
cmp edi, 0x1c1ffc7c
jne 0x58430b
movzx eax, byte [esi + 0x24]
mov byte [esi + 0x48], al
mov ah, byte [esi + 4]
xor al, ah
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test ah, ah
mov edi, ebx
mov eax, 0x7df2dfc5
cmovne edi, eax
cmp byte [esi + 0x48], 0
cmove edi, ebx
jmp 0x58430b
cmp edi, 0x43b6ad13
je 0x58436c
cmp edi, 0x7df2dfc5
jne 0x58430b
mov edi, edx
jmp 0x58430b
mov edi, 0x7df2dfc5
jmp 0x58430b
cmp byte [esi + 0x5c], 0
je 0x58524d
mov dword [esi + 8], 0
mov edi, dword [esi + 0x14]
jmp 0x58439c
mov eax, dword [esi + 8]
add eax, ecx
sub eax, dword [esi + 0x10]
mov dword [esi + 8], eax
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edi, dword [0x60aa8c]
lea edx, [ecx + 1]
imul edx, ecx
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, 0x8c874760
mov ecx, 0x4d68e82b
cmovne ebx, ecx
test eax, edx
sete byte [esi + 0x24]
mov ecx, ebx
mov eax, 0x4d68e82b
cmove ecx, eax
cmp edi, 0xa
setl byte [esi + 4]
cmovge ecx, ebx
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x5843f7
cmp eax, 0x36d61407
je 0x584431
cmp eax, 0x4d68e82b
jne 0x5843e0
jmp 0x58443c
cmp eax, 0x8c874760
je 0x584435
cmp eax, 0xbc4e5a6d
jne 0x5843e0
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov dh, al
xor dh, dl
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x5843e0
mov eax, ecx
jmp 0x5843e0
mov eax, 0x36d61407
jmp 0x5843e0
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x20]
je 0x5845e7
mov dword [esi + 0x10], eax
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
mov ebx, ecx
xor ebx, 0xfffffffe
test ebx, ecx
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne eax, edi
test ebx, ecx
sete byte [esi + 0x3c]
mov ecx, eax
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge ecx, eax
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x5844df
cmp edx, 0x89d6c0b5
je 0x5844fa
cmp edx, 0xaf530581
jne 0x584496
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov ah, al
xor ah, dl
test dl, dl
mov edx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edx, ebx
test al, al
mov ebx, 0xdbbf45d4
cmove edx, ebx
test ah, ah
mov eax, 0x3983e5e3
cmovne edx, eax
jmp 0x584496
cmp edx, 0xdbbf45d4
je 0x5844f3
cmp edx, 0x3983e5e3
jne 0x584496
mov edx, ecx
jmp 0x584496
mov edx, 0x3983e5e3
jmp 0x584496
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax - 1]
imul edx, eax
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ecx, dword [ecx + 4]
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
mov edx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp edx, 0xa
setl byte [esi + 0x24]
mov ebx, 0xb8cd7b43
cmp ebx, 0xceb3811a
jg 0x58457b
cmp ebx, 0x82f24137
je 0x5845d9
cmp ebx, 0xb8cd7b43
jne 0x584534
movzx eax, byte [esi + 0x3c]
mov dh, byte [esi + 0x24]
mov dl, al
xor dl, dh
test dh, dh
mov ebx, 0x82f24137
mov edi, 0x47b76182
cmovne ebx, edi
test al, al
mov eax, 0x82f24137
cmove ebx, eax
test dl, dl
cmovne ebx, edi
jmp 0x584534
cmp ebx, 0xceb3811b
je 0x584382
cmp ebx, 0x47b76182
jne 0x584534
lea eax, [esi + 0xc]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete al
mov ebx, 0x82f24137
mov edi, 0xceb3811b
cmove ebx, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge ebx, edx
setl dl
xor dl, al
cmovne ebx, edi
jmp 0x584534
add dword [esi + 0xc], 8
mov ebx, 0x47b76182
jmp 0x584534
cmp dword [esi + 8], 0x12345678
jne 0x5845fa
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov ecx, dword [0x60aa78]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60aa7c], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x584627
or cl, al
test cl, 1
jne 0x5847f3
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x58468f
cmp eax, 0x892b3f0e
je 0x5846f3
cmp eax, 0xbb35c726
jne 0x58464f
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x58464f
cmp eax, 0x363212d3
je 0x5846ac
cmp eax, 0x41d9d43f
jne 0x58464f
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x58464f
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x58464f
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x584760
cmp eax, 0x892b3f0e
je 0x5847c4
cmp eax, 0xbb35c726
jne 0x58471b
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x58471b
cmp eax, 0x363212d3
je 0x58477d
cmp eax, 0x41d9d43f
jne 0x58471b
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x58471b
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x58471b
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x584991
xor cl, al
jne 0x584991
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x584863
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
cmp eax, 0x363212d2
jg 0x5848a4
cmp eax, 0x892b3f0e
je 0x5848c5
cmp eax, 0xbb35c726
jne 0x584863
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x584863
cmp eax, 0x363212d3
je 0x58481d
cmp eax, 0x41d9d43f
jne 0x584863
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x584863
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x58492d
cmp eax, 0x892b3f0e
je 0x584627
cmp eax, 0xbb35c726
jne 0x5848ed
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5848ed
cmp eax, 0x363212d3
je 0x58494a
cmp eax, 0x41d9d43f
jne 0x5848ed
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5848ed
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5848ed
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
mov dword [esi + 8], ecx
cmp ecx, 0x64
jae 0x584a80
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0x42
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x60aa7c], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x584a1c
or dl, cl
jne 0x5cb150
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne cl
cmp dword [0x60aa7c], 0xa
setge al
mov edx, eax
xor dl, cl
or al, cl
xor al, 1
or al, dl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x584a7d
inc ecx
test al, al
jne 0x5849c0
inc ecx
jmp 0x584a74
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
cmp ecx, 0x43b6ad12
jg 0x584b2e
cmp ecx, 0xd78bfc94
je 0x584b42
cmp ecx, 0x1c1ffc7c
jne 0x584aea
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne ecx, ebx
test dl, dl
mov edi, 0xd78bfc94
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x584aea
cmp ecx, 0x43b6ad13
je 0x584b49
cmp ecx, 0x7df2dfc5
jne 0x584aea
mov ecx, eax
jmp 0x584aea
mov ecx, 0x7df2dfc5
jmp 0x584aea
jmp 0x584b4e
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov eax, dword [0x60aa8c]
lea edx, [ecx + 1]
mov dword [esi + 0x18], ecx
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ecx, eax
mov dword [esi + 0x14], eax
mov edi, 0x8c874760
mov eax, 0x4d68e82b
cmovne edi, eax
cmp edx, 0xffffffff
sete byte [esi + 0xc]
mov edx, edi
cmove edx, eax
cmp ecx, 0xa
setl byte [esi + 4]
cmovge edx, edi
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x584bbc
cmp edi, 0x36d61407
je 0x584bf7
cmp edi, 0x4d68e82b
jne 0x584ba2
jmp 0x584c02
cmp edi, 0x8c874760
je 0x584bfb
cmp edi, 0xbc4e5a6d
jne 0x584ba2
movzx eax, byte [esi + 0xc]
mov bh, byte [esi + 4]
mov bl, al
xor bl, bh
test bh, bh
mov edi, 0x8c874760
mov ecx, 0x36d61407
cmovne edi, ecx
test al, al
mov eax, 0x8c874760
cmove edi, eax
test bl, bl
cmovne edi, ecx
jmp 0x584ba2
mov edi, edx
jmp 0x584ba2
mov edi, 0x36d61407
jmp 0x584ba2
mov eax, dword [esi + 0x24]
mov dword [esi + 8], eax
cmp eax, dword [esi + 0x2c]
je 0x5852ef
mov eax, dword [0x60aa90]
lea edx, [eax + 1]
imul edx, eax
mov eax, dword [0x60aa94]
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x3c]
sete dl
mov edi, 0xdbbf45d4
mov ecx, 0x89d6c0b5
cmove edi, ecx
cmp eax, 0xa
setl byte [esi + 0xc]
setl al
mov ebx, 0xdbbf45d4
cmovge edi, ebx
xor al, dl
cmovne edi, ecx
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x584c9d
cmp ebx, 0x89d6c0b5
je 0x584cb8
cmp ebx, 0xaf530581
jne 0x584c59
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0xc]
mov ah, al
xor ah, dl
mov ecx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne ecx, ebx
test dl, dl
mov ebx, ecx
mov edx, 0x3983e5e3
cmovne ebx, edx
test al, al
cmove ebx, ecx
jmp 0x584c59
cmp ebx, 0xdbbf45d4
je 0x584cb1
cmp ebx, 0x3983e5e3
jne 0x584c59
mov ebx, edi
jmp 0x584c59
mov ebx, 0x3983e5e3
jmp 0x584c59
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
mov dword [esi + 0x10], ecx
lea ebx, [eax - 1]
imul ebx, eax
not ebx
or ebx, 0xfffffffe
cmp ebx, 0xffffffff
sete al
cmp ecx, 0xa
setl cl
xor cl, al
mov edx, 0xd78bfc94
mov ecx, 0x43b6ad13
cmovne edx, ecx
cmp ebx, 0xffffffff
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
sete byte [esi + 0xc]
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov edi, edx
cmove edi, ecx
cmp dword [esi + 0x10], 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x34]
cmovge edi, edx
mov ebx, 0x1c1ffc7c
cmp ebx, 0x43b6ad12
jg 0x584d67
cmp ebx, 0xd78bfc94
je 0x584d7e
cmp ebx, 0x1c1ffc7c
jne 0x584d1d
mov dword [esi + 0x10], eax
movzx eax, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov edx, eax
xor dl, cl
mov edx, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edx, ebx
test cl, cl
mov ebx, edx
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test al, al
mov eax, dword [esi + 0x10]
cmove ebx, edx
jmp 0x584d1d
cmp ebx, 0x43b6ad13
je 0x584d88
cmp ebx, 0x7df2dfc5
jne 0x584d1d
mov dword [esi + 0x20], eax
mov ebx, edi
jmp 0x584d1d
mov ebx, 0x7df2dfc5
mov dword [esi + 0x20], eax
jmp 0x584d1d
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov ebx, dword [esi + 0x14]
mov eax, dword [esi + 0x18]
jmp 0x584da7
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov ebx, dword [0x60aa8c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp ebx, 0xa
setl cl
xor cl, al
mov eax, 0x8c874760
mov edi, 0x4d68e82b
cmovne eax, edi
cmp edx, 0xffffffff
sete byte [esi + 0xc]
mov ecx, eax
cmove ecx, edi
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, eax
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x584dff
cmp eax, 0x36d61407
je 0x584e39
cmp eax, 0x4d68e82b
jne 0x584de8
jmp 0x584e44
cmp eax, 0x8c874760
je 0x584e3d
cmp eax, 0xbc4e5a6d
jne 0x584de8
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov dh, dl
xor dh, al
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x584de8
mov eax, ecx
jmp 0x584de8
mov eax, 0x36d61407
jmp 0x584de8
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x20]
je 0x5850ff
mov ecx, dword [0x60aa90]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
mov edx, dword [0x60aa94]
sete byte [esi + 0x1f]
sete bl
mov ecx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0xc]
setl dl
mov edi, 0xdbbf45d4
cmovge ecx, edi
xor dl, bl
mov edx, 0x89d6c0b5
cmovne ecx, edx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x584ee7
cmp edx, 0x89d6c0b5
je 0x584f02
cmp edx, 0xaf530581
jne 0x584e9e
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x584e9e
cmp edx, 0xdbbf45d4
je 0x584efb
cmp edx, 0x3983e5e3
jne 0x584e9e
mov edx, ecx
jmp 0x584e9e
mov edx, 0x3983e5e3
jmp 0x584e9e
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
cmp ecx, 0xce6e8c2e
jg 0x584f3e
cmp ecx, 0x85fa3530
je 0x584f6f
cmp ecx, 0xc79b93d4
jne 0x584f1a
mov ecx, 0x85fa3530
mov ebx, eax
mov edi, dword [esi + 8]
jmp 0x584f1a
cmp ecx, 0xe387238e
je 0x584f63
cmp ecx, 0xce6e8c2f
jne 0x584f1a
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x584f1a
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edi, eax
jmp 0x584f1a
mov dword [esi + 0x28], edi
lea edi, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
mov dword [esi + 0x18], edi
cmp ecx, 0xce6e8c2e
jg 0x584fb0
cmp ecx, 0x85fa3530
je 0x584ff3
cmp ecx, 0xc79b93d4
jne 0x584f8b
mov ecx, 0x85fa3530
mov dword [esi + 0x14], edi
mov edx, dword [esi + 0x10]
jmp 0x584f8b
cmp ecx, 0xe387238e
je 0x584fe4
cmp ecx, 0xce6e8c2f
jne 0x584f8b
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, edx
mov edx, eax
mov eax, ebx
mov ebx, 0xc79b93d4
cmovl ecx, ebx
mov ebx, eax
mov eax, edx
mov edx, edi
mov edi, dword [esi + 0x18]
jmp 0x584f8b
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edx, edi
jmp 0x584f8b
mov ecx, dword [ebx]
mov edi, dword [0x60aa78]
lea ebx, [edi + 1]
imul ebx, edi
not ebx
or ebx, 0xfffffffe
cmp ebx, 0xffffffff
sete bh
cmp dword [0x60aa7c], 0xa
setl bl
or bl, bh
cmp ecx, dword [edx]
jle 0x585116
test bl, bl
je 0x5cb180
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x585090
cmp eax, 0x82f24137
je 0x5850f1
cmp eax, 0xb8cd7b43
jne 0x585050
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x585050
cmp eax, 0xceb3811b
je 0x584d99
cmp eax, 0x47b76182
jne 0x585050
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x82f24137
mov ebx, 0xceb3811b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x585050
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x585050
mov dword [esi + 0xb0], 0x43
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x585162
test bl, bl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x585157
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete ch
cmp dword [0x60aa7c], 0xa
setge dl
setl dh
xor dh, ch
jne 0x585162
or dl, cl
je 0x585162
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x585120
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x5851cf
cmp eax, 0x82f24137
je 0x585230
cmp eax, 0xb8cd7b43
jne 0x58518a
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x58518a
cmp eax, 0xceb3811b
je 0x584b4b
cmp eax, 0x47b76182
jne 0x58518a
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x82f24137
mov ebx, 0xceb3811b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x58518a
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x58518a
mov eax, dword [esi + 0x2c]
lea edx, [eax - 1]
imul edx, eax
and edx, 1
mov dword [esi + 0x28], edx
mov edi, dword [esi + 0x28]
test edi, edi
sete al
mov ebx, dword [esi + 8]
cmp ebx, 0xa
setl dl
xor dl, al
mov eax, 0xd78bfc94
mov edx, 0x43b6ad13
cmovne eax, edx
test edi, edi
sete byte [esi + 0x24]
mov edi, eax
cmove edi, edx
cmp ebx, 0xa
setl byte [esi + 4]
mov edx, dword [esi + 0x10]
mov dword [esi + 0xc], edx
cmovge edi, eax
mov dword [esi + 0x28], edi
mov edx, 0x1c1ffc7c
jmp 0x585297
mov edx, 0x7df2dfc5
cmp edx, 0x43b6ad12
jg 0x5852d6
cmp edx, 0xd78bfc94
je 0x585292
cmp edx, 0x1c1ffc7c
jne 0x585297
movzx eax, byte [esi + 0x24]
movzx edx, byte [esi + 4]
mov ah, al
xor ah, dl
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test dl, dl
mov edx, ebx
cmovne edx, edi
test al, al
cmove edx, ebx
jmp 0x585297
cmp edx, 0x43b6ad13
je 0x5842bc
cmp edx, 0x7df2dfc5
jne 0x585297
mov edx, dword [esi + 0x28]
jmp 0x585297
mov eax, dword [0x60aa78]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
or cl, al
mov byte [esi + 0x48], cl
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x20], eax
mov eax, dword [0x60aa80]
mov dword [esi + 0x2c], eax
mov eax, dword [0x60aa84]
mov dword [esi + 0x10], eax
je 0x585dae
mov eax, dword [esi + 0x2c]
lea edx, [eax + 1]
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
mov eax, edi
and eax, edx
sete al
mov ebx, dword [esi + 0x10]
cmp ebx, 0xa
setl cl
xor cl, al
mov ecx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne ecx, eax
and edi, edx
mov dword [esi + 0x28], edi
sete byte [esi + 0x24]
mov edx, ecx
cmove edx, eax
cmp ebx, 0xa
setl byte [esi + 4]
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
cmovge edx, ecx
mov edi, 0x1c1ffc7c
cmp edi, 0x43b6ad12
jg 0x5853c9
cmp edi, 0xd78bfc94
je 0x5853dd
cmp edi, 0x1c1ffc7c
jne 0x585385
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov ah, cl
xor ah, al
test cl, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test al, al
mov ecx, 0xd78bfc94
cmove edi, ecx
test ah, ah
cmovne edi, ebx
jmp 0x585385
cmp edi, 0x43b6ad13
je 0x5853e4
cmp edi, 0x7df2dfc5
jne 0x585385
mov edi, edx
jmp 0x585385
mov edi, 0x7df2dfc5
jmp 0x585385
cmp byte [esi + 0x48], 0
je 0x585dbd
mov dword [esi + 8], 0
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x18]
jmp 0x585417
mov eax, dword [esi + 8]
add eax, ecx
sub eax, dword [esi + 0x10]
mov dword [esi + 8], eax
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edx, dword [0x60aa8c]
lea eax, [ecx + 1]
imul eax, ecx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete byte [esi + 0x24]
sete al
mov ecx, 0x8c874760
mov edi, 0x4d68e82b
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 4]
setl dl
mov ebx, 0x8c874760
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x58546c
cmp eax, 0x36d61407
je 0x5854a6
cmp eax, 0x4d68e82b
jne 0x585455
jmp 0x5854b1
cmp eax, 0x8c874760
je 0x5854aa
cmp eax, 0xbc4e5a6d
jne 0x585455
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov dh, al
xor dh, dl
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x585455
mov eax, ecx
jmp 0x585455
mov eax, 0x36d61407
jmp 0x585455
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x20]
je 0x585654
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne ebx, edi
cmp ecx, 0xffffffff
sete byte [esi + 0x3c]
mov ecx, ebx
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge ecx, ebx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x585553
cmp edx, 0x89d6c0b5
je 0x58556e
cmp edx, 0xaf530581
jne 0x58550a
movzx ebx, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x58550a
cmp edx, 0xdbbf45d4
je 0x585567
cmp edx, 0x3983e5e3
jne 0x58550a
mov edx, ecx
jmp 0x58550a
mov edx, 0x3983e5e3
jmp 0x58550a
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ecx, dword [ecx + 4]
mov edx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp edx, 0xa
setl byte [esi + 0x24]
mov ebx, 0xb8cd7b43
cmp ebx, 0xceb3811a
jg 0x5855e6
cmp ebx, 0x82f24137
je 0x585646
cmp ebx, 0xb8cd7b43
jne 0x5855a4
movzx edx, byte [esi + 0x3c]
mov dh, byte [esi + 0x24]
mov ebx, edx
xor bl, dh
mov edi, 0x82f24137
mov eax, 0x47b76182
cmovne edi, eax
test dh, dh
mov ebx, edi
cmovne ebx, eax
test dl, dl
cmove ebx, edi
jmp 0x5855a4
cmp ebx, 0xceb3811b
je 0x5853fd
cmp ebx, 0x47b76182
jne 0x5855a4
lea edx, [esi + 0xc]
mov dword [esi + 4], edx
mov edx, dword [esi + 4]
add dword [edx], 8
mov edx, dword [0x60aa98]
lea edi, [edx + 1]
imul edi, edx
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
sete dl
mov ebx, 0x82f24137
mov edi, 0xceb3811b
cmove ebx, edi
cmp dword [0x60aa9c], 0xa
mov eax, 0x82f24137
cmovge ebx, eax
setl dh
xor dh, dl
cmovne ebx, edi
jmp 0x5855a4
add dword [esi + 0xc], 8
mov ebx, 0x47b76182
jmp 0x5855a4
cmp dword [esi + 8], 0x12345678
jne 0x585667
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x585693
xor cl, al
je 0x585865
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x585700
cmp eax, 0x892b3f0e
je 0x585764
cmp eax, 0xbb35c726
jne 0x5856bb
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5856bb
cmp eax, 0x363212d3
je 0x58571d
cmp eax, 0x41d9d43f
jne 0x5856bb
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5856bb
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5856bb
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5857cd
cmp eax, 0x892b3f0e
je 0x585830
cmp eax, 0xbb35c726
jne 0x58578d
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x58578d
cmp eax, 0x363212d3
je 0x5857ea
cmp eax, 0x41d9d43f
jne 0x58578d
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x58578d
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x58578d
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x60aa7c], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x585a05
or cl, al
je 0x585a05
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x5858d7
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x41d9d43f
mov edi, 0x892b3f0e
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
cmp eax, 0x363212d2
jg 0x585913
cmp eax, 0x892b3f0e
je 0x585934
cmp eax, 0xbb35c726
jne 0x5858d7
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5858d7
cmp eax, 0x363212d3
je 0x58588f
cmp eax, 0x41d9d43f
jne 0x5858d7
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5858d7
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x58599d
cmp eax, 0x892b3f0e
je 0x585693
cmp eax, 0xbb35c726
jne 0x58595d
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x58595d
cmp eax, 0x363212d3
je 0x5859ba
cmp eax, 0x41d9d43f
jne 0x58595d
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x58595d
lea ecx, [esi + 0x60]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x58595d
mov eax, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x4c]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0x3def23ff
cmp eax, 0xde9169a
jg 0x585a54
cmp eax, 0x8e89d987
je 0x585adc
cmp eax, 0xcc8e990
jne 0x585a2e
mov word [esi + 0x40], 0x7a61
mov eax, 0xde9169b
jmp 0x585a2e
cmp eax, 0xde9169b
je 0x585a89
cmp eax, 0x3def23ff
jne 0x585a2e
movzx ecx, byte [esi + 0x4c]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0xcc8e990
mov edi, 0xde9169b
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x585a2e
lea eax, [esi + 0x40]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x60]
mov word [eax], 0x7a61
mov edx, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xcc8e990
mov edi, 0x8e89d987
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x585a2e
mov eax, dword [esi + 0x60]
sub esp, 4
movzx eax, byte [esi + 0x30]
mov byte [esp], al
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0043dd20
mov ecx, edi
call fcn.0040d170
mov dword [esi + 0xb0], 0x44
mov dword [esi + 0x10], 0
jmp 0x585b1f
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
cmp eax, 0x3e8
je 0x585e5b
movsx eax, byte [esi + 0x41]
movsx edx, byte [esi + 0x40]
mov dword [esi + 0xb0], 0x44
lea ecx, [esi + 0x40]
push eax
push edx
lea eax, [esi + 0x24]
push eax
call fcn.00435510
mov edx, dword [0x60a990]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete ah
cmp dword [0x60a994], 0xa
setl dh
setge dl
cmp dh, ah
jne 0x585b6d
or dl, cl
test dl, 1
jne 0x5cb1a2
movsx eax, al
lea ecx, [esi + 0x60]
push eax
call fcn.00436970
lea ecx, [esi + 0x60]
call fcn.005664d0
cmp byte [eax], 0x6f
je 0x585bf1
mov eax, dword [0x60a990]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60a994], 0xa
setl cl
test cl, al
jne 0x585bae
xor cl, al
je 0x585bde
lea ecx, [esi + 0x60]
call fcn.005664d0
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60a994], 0xa
setl dl
test dl, cl
jne 0x585be8
xor dl, cl
jne 0x585be8
lea ecx, [esi + 0x60]
call fcn.005664d0
jmp 0x585bae
cmp byte [eax], 0x75
jne 0x585b0d
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0040d830
mov dword [esi + 0x4c], eax
mov ecx, edi
call fcn.0040d830
add eax, dword [esi + 0x70]
mov dword [esi + 8], eax
jmp 0x585c10
mov eax, dword [esi + 0x30]
mov edx, dword [0x60a998]
mov ecx, dword [0x60a99c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x4a293c83
mov ebx, 0x61c5fcf1
cmovne edx, ebx
cmp eax, 0xffffffff
sete byte [esi + 4]
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x30]
cmovge eax, edx
mov ecx, 0x354728f5
cmp ecx, 0x4a293c82
jle 0x585c77
cmp ecx, 0x4a293c83
je 0x585cb3
cmp ecx, 0x61c5fcf1
jne 0x585c5d
jmp 0x585cbe
cmp ecx, 0xb74ba074
je 0x585cba
cmp ecx, 0x354728f5
jne 0x585c5d
movzx edx, byte [esi + 4]
movzx ecx, byte [esi + 0x30]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0x4a293c83
mov edi, 0xb74ba074
cmovne ecx, edi
test dl, dl
mov ebx, 0x4a293c83
cmove ecx, ebx
test dh, dh
cmovne ecx, edi
jmp 0x585c5d
mov ecx, 0xb74ba074
jmp 0x585c5d
mov ecx, eax
jmp 0x585c5d
mov ebx, dword [esi + 0x4c]
cmp ebx, dword [esi + 8]
je 0x585b0d
movsx eax, byte [ebx]
push eax
call fcn.005de535
add esp, 4
mov ecx, eax
xor cl, 0xf5
and cl, al
mov byte [ebx], cl
mov eax, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xc2538ca0
cmp eax, 0x1ec364a7
jg 0x585d27
cmp eax, 0xc2538ca0
je 0x585d7f
cmp eax, 0xbc7d055
jne 0x585d08
inc dword [esi + 0x4c]
mov eax, 0x640d1264
jmp 0x585d08
cmp eax, 0x1ec364a8
je 0x585c0d
cmp eax, 0x640d1264
jne 0x585d08
lea eax, [esi + 0x4c]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x30]
inc dword [eax]
mov eax, dword [0x60a9a0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xbc7d055
mov edi, 0x1ec364a8
cmove eax, edi
cmp dword [0x60a9a4], 0xa
mov edx, 0xbc7d055
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x585d08
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xbc7d055
mov edi, 0x640d1264
cmovne eax, edi
test cl, cl
mov ecx, 0xbc7d055
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x585d08
mov eax, dword [esi + 0x2c]
lea ecx, [eax - 1]
imul ecx, eax
and ecx, 1
mov dword [esi + 0x28], ecx
cmp dword [esi + 0x28], 0
sete byte [esi + 0x24]
sete al
mov ebx, 0xd78bfc94
mov edx, 0x43b6ad13
cmove ebx, edx
cmp dword [esi + 0x10], 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi + 0xc], ecx
setl cl
mov edi, 0xd78bfc94
cmovge ebx, edi
xor cl, al
cmovne ebx, edx
mov edx, 0x1c1ffc7c
jmp 0x585dff
mov edx, 0x7df2dfc5
cmp edx, 0x43b6ad12
jg 0x585e43
cmp edx, 0xd78bfc94
je 0x585dfa
cmp edx, 0x1c1ffc7c
jne 0x585dff
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov edx, eax
xor dl, cl
mov edi, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne edi, edx
test cl, cl
mov edx, edi
mov ecx, 0x7df2dfc5
cmovne edx, ecx
test al, al
cmove edx, edi
jmp 0x585dff
cmp edx, 0x43b6ad13
je 0x585335
cmp edx, 0x7df2dfc5
jne 0x585dff
mov edx, ebx
jmp 0x585dff
mov eax, dword [0x60a990]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60a994], 0xa
setl cl
test cl, al
jne 0x585e86
xor cl, al
je 0x585fa9
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x585ec9
cmp eax, 0xcb7dce01
je 0x585f03
cmp eax, 0xf454cecc
jne 0x585eaf
jmp 0x585f72
cmp eax, 0xb86c543
je 0x585f12
cmp eax, 0x1d50f87a
jne 0x585eaf
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xcb7dce01
mov edi, 0xb86c543
cmovne eax, edi
test cl, cl
mov ecx, 0xcb7dce01
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x585eaf
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x585eaf
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
mov dword [esi + 8], ecx
lea edx, [edi + 1]
imul edx, edi
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
sete byte [esi + 0x10]
cmp ecx, 0xa
setl cl
xor cl, byte [esi + 0x10]
mov ecx, 0xcb7dce01
mov edi, 0xf454cecc
cmovne ecx, edi
mov edi, eax
test ebx, edx
mov eax, ecx
mov edx, 0xf454cecc
cmove eax, edx
cmp dword [esi + 8], 0xa
cmovge eax, ecx
add edi, 0xd7
mov ebx, edi
jmp 0x585eaf
mov dword [esi + 0x30], ebx
mov eax, dword [esi + 0x30]
mov ecx, dword [0x60a990]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60a994], 0xa
setl dl
test dl, cl
jne 0x586082
xor dl, cl
jne 0x586082
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
jmp 0x58601c
cmp eax, 0xb86c542
jg 0x586033
cmp eax, 0xcb7dce01
je 0x586068
cmp eax, 0xb86c543
je 0x585fd3
cmp byte [eax], 0x31
jne 0x586186
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x5860cd
cmp eax, 0xcb7dce01
je 0x586102
cmp eax, 0xf454cecc
jne 0x5860b3
cmp eax, 0xb86c543
je 0x586111
cmp eax, 0x1d50f87a
jne 0x5860b3
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x5860b3
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
mov dword [esi + 8], ecx
lea edx, [edi + 1]
imul edx, edi
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
sete byte [esi + 0x10]
cmp ecx, 0xa
setl cl
xor cl, byte [esi + 0x10]
mov ecx, 0xcb7dce01
mov edi, 0xf454cecc
cmovne ecx, edi
mov edi, eax
test ebx, edx
mov eax, ecx
mov edx, 0xf454cecc
cmove eax, edx
cmp dword [esi + 8], 0xa
cmovge eax, ecx
add edi, 0x2d0
mov ebx, edi
jmp 0x5860b3
lea ecx, [esi + 0x60]
call fcn.0040f050
mov eax, dword [0x60d648]
mov ecx, dword [0x60d64c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x92]
cmp ecx, 0xa
setl byte [esi + 0x93]
mov eax, 0xae58765
cmp eax, 0xae58764
jg 0x5861db
cmp eax, 0x95293c3e
je 0x586eb0
cmp eax, 0xb854ed74
jne 0x5861bd
cmp eax, 0xae58765
je 0x587b65
cmp eax, 0x31f4da3c
jne 0x5861bd
mov edi, 0xa
jmp fcn.00586ec5
movzx ecx, byte [esi + 0x92]
movzx eax, byte [esi + 0x93]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x95293c3e
mov edi, 0x31f4da3c
cmovne eax, edi
test cl, cl
mov ecx, 0x95293c3e
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5861bd
mov eax, dword [esi + 0x98]
mov dword [eax], 5
mov edi, dword [esi + 0x9c]
mov ecx, edi
push eax
call fcn.005cd360
push edi
call fcn.005cd220
add esp, 4
mov dword [esi + 0xb0], 0xffffffff
call fcn.00467080
mov eax, dword [0x60d638]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x891da6f4
mov edi, 0xabe7fa02
cmove eax, edi
cmp dword [0x60d63c], 0xa
mov edx, 0x891da6f4
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x569a80
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
nop dword [eax + eax]
cmp eax, 0xb86c542
jg 0x59a9f0
cmp eax, 0xcb7dce01
je 0x59aa25
cmp eax, 0xf454cecc
jne 0x59a9d0
jmp 0x59aa83
cmp eax, 0xb86c543
je 0x59aa34
cmp eax, 0x1d50f87a
jne 0x59a9d0
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, ecx
xor dl, al
mov edx, 0xcb7dce01
mov ebx, 0xb86c543
cmovne edx, ebx
test al, al
mov eax, edx
cmovne eax, ebx
test cl, cl
cmove eax, edx
jmp 0x59a9d0
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x59a9d0
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, eax
add edi, 0xd7
mov eax, dword [0x60a9a8]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xcb7dce01
mov ebx, 0xf454cecc
cmove eax, ebx
cmp dword [0x60a9ac], 0xa
mov edx, 0xcb7dce01
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x59a9d0
mov dword [esi + 0x30], edi
mov eax, dword [esi + 0x30]
mov edx, dword [0x60a990]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dh
cmp dword [0x60a994], 0xa
setge dl
setl bl
xor bl, dh
jne 0x59ab9f
or dl, cl
test dl, 1
je 0x59ab9f
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
jmp 0x59ab30
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, eax
add edi, 0xd7
mov eax, dword [0x60a9a8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xcb7dce01
mov ebx, 0xf454cecc
cmove eax, ebx
cmp dword [0x60a9ac], 0xa
mov edx, 0xcb7dce01
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
nop
cmp eax, 0xb86c542
jg 0x59ab50
cmp eax, 0xcb7dce01
je 0x59ab85
cmp eax, 0xf454cecc
jne 0x59ab30
jmp 0x59ab94
cmp eax, 0xb86c543
je 0x59aae5
cmp eax, 0x1d50f87a
jne 0x59ab30
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, ecx
xor dl, al
mov edx, 0xcb7dce01
mov ebx, 0xb86c543
cmovne edx, ebx
test al, al
mov eax, edx
cmovne eax, ebx
test cl, cl
cmove eax, edx
jmp 0x59ab30
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x59ab30
mov dword [esi + 0x30], edi
mov eax, dword [esi + 0x30]
jmp 0x59a9a2
cmp byte [eax], 0x31
jne 0x59aca7
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x59abf0
cmp eax, 0xcb7dce01
je 0x59ac2a
cmp eax, 0xf454cecc
jne 0x59abd0
jmp 0x59ac92
cmp eax, 0xb86c543
je 0x59ac39
cmp eax, 0x1d50f87a
jne 0x59abd0
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xcb7dce01
mov edi, 0xb86c543
cmovne eax, edi
test cl, cl
mov ecx, 0xcb7dce01
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59abd0
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x59abd0
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
mov dword [esi + 0x10], ecx
lea edx, [edi + 1]
imul edx, edi
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
sete byte [esi + 8]
cmp ecx, 0xa
setl cl
xor cl, byte [esi + 8]
mov ecx, 0xcb7dce01
mov edi, 0xf454cecc
cmovne ecx, edi
test ebx, edx
mov ebx, eax
mov eax, ecx
cmove eax, edi
cmp dword [esi + 0x10], 0xa
cmovge eax, ecx
add ebx, 0x2d0
jmp 0x59abd0
mov dword [esi + 0x30], ebx
mov eax, dword [esi + 0x30]
cmp byte [eax], 0x30
jne 0x59aca7
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x60]
call fcn.0040f050
mov eax, dword [0x60d640]
mov ecx, dword [0x60d644]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x94]
cmp ecx, 0xa
setl byte [esi + 0x95]
mov eax, 0x9d6a27f1
nop dword [eax]
cmp eax, 0x545d958
jg 0x59ad30
cmp eax, 0x8e736e04
je 0x59ae3c
cmp eax, 0x9d6a27f1
jne 0x59ace0
movzx ecx, byte [esi + 0x94]
movzx eax, byte [esi + 0x95]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x8e736e04
mov edi, 0x7be61835
cmovne eax, edi
test cl, cl
mov ecx, 0x8e736e04
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59ace0
cmp eax, 0x545d959
je 0x5cafb8
cmp eax, 0x7be61835
jne 0x59ace0
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
nop word cs:[eax + eax]
cmp ecx, 0x64
jae 0x59af2c
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0x7c
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x59add7
xor dl, cl
je 0x5cb020
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl al
or al, cl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x59ae39
nop dword [eax + eax]
inc ecx
test al, al
jne 0x59ad80
inc ecx
jmp 0x59ae30
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
nop dword [eax + eax]
cmp ecx, 0x64
jae 0x59b7af
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0xb9
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x59aec6
xor dl, cl
je 0x5cb040
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
setne cl
cmp dword [0x60aa7c], 0xa
setge al
mov edx, eax
xor dl, cl
or al, cl
xor al, 1
or al, dl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x59af29
nop
inc ecx
test al, al
jne 0x59ae70
inc ecx
jmp 0x59af20
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
nop word cs:[eax + eax]
cmp ecx, 0x43b6ad12
jg 0x59aff0
cmp ecx, 0xd78bfc94
je 0x59b004
cmp ecx, 0x1c1ffc7c
jne 0x59afa0
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne ecx, ebx
test dl, dl
mov edi, 0xd78bfc94
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x59afa0
cmp ecx, 0x43b6ad13
je 0x59b00b
cmp ecx, 0x7df2dfc5
jne 0x59afa0
mov ecx, eax
jmp 0x59afa0
mov ecx, 0x7df2dfc5
jmp 0x59afa0
jmp 0x59b010
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov ecx, dword [0x60aa8c]
lea edx, [eax + 1]
mov dword [esi + 0x18], eax
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x8c874760
mov eax, 0x4d68e82b
cmovne edi, eax
cmp edx, 0xffffffff
sete byte [esi + 0xc]
mov edx, edi
cmove edx, eax
mov dword [esi + 0x14], ecx
cmp ecx, 0xa
setl byte [esi + 4]
cmovge edx, edi
mov edi, 0xbc4e5a6d
nop word cs:[eax + eax]
cmp edi, 0x36d61406
jle 0x59b090
cmp edi, 0x36d61407
je 0x59b0cb
cmp edi, 0x4d68e82b
jne 0x59b070
jmp 0x59b0d6
cmp edi, 0x8c874760
je 0x59b0cf
cmp edi, 0xbc4e5a6d
jne 0x59b070
movzx eax, byte [esi + 0xc]
mov bh, byte [esi + 4]
mov bl, al
xor bl, bh
test bh, bh
mov edi, 0x8c874760
mov ecx, 0x36d61407
cmovne edi, ecx
test al, al
mov eax, 0x8c874760
cmove edi, eax
test bl, bl
cmovne edi, ecx
jmp 0x59b070
mov edi, edx
jmp 0x59b070
mov edi, 0x36d61407
jmp 0x59b070
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x2c]
je 0x59c011
mov dword [esi + 8], eax
mov eax, dword [0x60aa90]
lea edx, [eax - 1]
imul edx, eax
mov eax, dword [0x60aa94]
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x3c]
sete dl
mov edi, 0xdbbf45d4
mov ecx, 0x89d6c0b5
cmove edi, ecx
cmp eax, 0xa
setl byte [esi + 0xc]
setl al
mov ebx, 0xdbbf45d4
cmovge edi, ebx
xor al, dl
cmovne edi, ecx
mov ebx, 0xaf530581
nop dword [eax]
cmp ebx, 0xdbbf45d3
jg 0x59b180
cmp ebx, 0x89d6c0b5
je 0x59b19b
cmp ebx, 0xaf530581
jne 0x59b130
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0xc]
mov ah, al
xor ah, dl
mov ecx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne ecx, ebx
test dl, dl
mov ebx, ecx
mov edx, 0x3983e5e3
cmovne ebx, edx
test al, al
cmove ebx, ecx
jmp 0x59b130
cmp ebx, 0xdbbf45d4
je 0x59b194
cmp ebx, 0x3983e5e3
jne 0x59b130
mov ebx, edi
jmp 0x59b130
mov ebx, 0x3983e5e3
jmp 0x59b130
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, 0xd78bfc94
mov ecx, 0x43b6ad13
cmovne ebx, ecx
test eax, edx
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
sete byte [esi + 0xc]
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov edx, ebx
cmove edx, ecx
cmp edi, 0xa
setl byte [esi + 4]
mov edi, dword [esi + 0x34]
cmovge edx, ebx
mov ebx, 0x1c1ffc7c
nop word [eax + eax]
cmp ebx, 0x43b6ad12
jg 0x59b250
cmp ebx, 0xd78bfc94
je 0x59b267
cmp ebx, 0x1c1ffc7c
jne 0x59b200
movzx eax, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ah, al
xor ah, cl
test cl, cl
mov ebx, 0xd78bfc94
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test al, al
mov ecx, 0xd78bfc94
cmove ebx, ecx
test ah, ah
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
jmp 0x59b200
cmp ebx, 0x43b6ad13
je 0x59b271
cmp ebx, 0x7df2dfc5
jne 0x59b200
mov dword [esi + 0x20], edi
mov ebx, edx
jmp 0x59b200
mov ebx, 0x7df2dfc5
mov dword [esi + 0x20], edi
jmp 0x59b200
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x18]
jmp 0x59b29f
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edx, dword [0x60aa8c]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete byte [esi + 0xc]
sete al
mov ecx, 0x8c874760
mov edi, 0x4d68e82b
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 4]
setl dl
mov ebx, 0x8c874760
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
mov eax, 0xbc4e5a6d
nop dword [eax]
cmp eax, 0x36d61406
jle 0x59b300
cmp eax, 0x36d61407
je 0x59b335
cmp eax, 0x4d68e82b
jne 0x59b2e0
jmp 0x59b340
cmp eax, 0x8c874760
je 0x59b339
cmp eax, 0xbc4e5a6d
jne 0x59b2e0
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov edi, 0x8c874760
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
mov eax, edi
cmovne eax, ebx
test dl, dl
cmove eax, edi
jmp 0x59b2e0
mov eax, ecx
jmp 0x59b2e0
mov eax, 0x36d61407
jmp 0x59b2e0
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x20]
je 0x59b65a
mov edi, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov dword [esi + 0x14], eax
mov eax, 0x89d6c0b5
cmovne ebx, eax
test edi, ecx
sete byte [esi + 0x1f]
mov ecx, ebx
cmove ecx, eax
mov eax, dword [esi + 0x14]
cmp edx, 0xa
setl byte [esi + 0xc]
cmovge ecx, ebx
mov edx, 0xaf530581
nop dword [eax]
cmp edx, 0xdbbf45d3
jg 0x59b3f0
cmp edx, 0x89d6c0b5
je 0x59b410
cmp edx, 0xaf530581
jne 0x59b3a0
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x59b3a0
cmp edx, 0xdbbf45d4
je 0x59b404
cmp edx, 0x3983e5e3
jne 0x59b3a0
mov edx, ecx
jmp 0x59b3a0
mov edx, 0x3983e5e3
jmp 0x59b3a0
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop dword [eax + eax]
cmp ecx, 0xce6e8c2e
jg 0x59b460
cmp ecx, 0x85fa3530
je 0x59b4a0
cmp ecx, 0xc79b93d4
jne 0x59b430
mov ecx, 0x85fa3530
mov ebx, eax
mov edi, dword [esi + 8]
jmp 0x59b430
cmp ecx, 0xe387238e
je 0x59b485
cmp ecx, 0xce6e8c2f
jne 0x59b430
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x59b430
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edi, eax
jmp 0x59b430
mov dword [esi + 0x28], edi
lea edi, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
mov dword [esi + 0x18], edi
nop dword [eax]
cmp ecx, 0xce6e8c2e
jg 0x59b4f0
cmp ecx, 0x85fa3530
je 0x59b540
cmp ecx, 0xc79b93d4
jne 0x59b4c0
mov ecx, 0x85fa3530
mov dword [esi + 0x14], edi
mov edx, dword [esi + 0x10]
jmp 0x59b4c0
cmp ecx, 0xe387238e
je 0x59b524
cmp ecx, 0xce6e8c2f
jne 0x59b4c0
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, edx
mov edx, eax
mov eax, ebx
mov ebx, 0xc79b93d4
cmovl ecx, ebx
mov ebx, eax
mov eax, edx
mov edx, edi
mov edi, dword [esi + 0x18]
jmp 0x59b4c0
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edx, edi
jmp 0x59b4c0
mov ecx, dword [0x60aa78]
lea edi, [ecx + 1]
imul edi, ecx
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
setne ch
cmp dword [0x60aa7c], 0xa
mov edi, dword [ebx]
setge cl
mov ebx, ecx
xor bl, ch
or cl, ch
xor cl, 1
or cl, bl
cmp edi, dword [edx]
jle 0x59b671
test cl, cl
je 0x5cb080
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop word [eax + eax]
cmp eax, 0xceb3811a
jg 0x59b5f0
cmp eax, 0x82f24137
je 0x59b64c
cmp eax, 0xb8cd7b43
jne 0x59b5b0
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59b5b0
cmp eax, 0xceb3811b
je 0x59b290
cmp eax, 0x47b76182
jne 0x59b5b0
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmove eax, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59b5b0
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x59b5b0
mov dword [esi + 0xb0], 0x7d
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x59b6bd
test cl, cl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x59b6b2
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete ch
cmp dword [0x60aa7c], 0xa
setge dl
setl dh
xor dh, ch
jne 0x59b6bd
or dl, cl
je 0x59b6bd
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x59b67b
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop word cs:[eax + eax]
cmp eax, 0xceb3811a
jg 0x59b740
cmp eax, 0x82f24137
je 0x59b7a1
cmp eax, 0xb8cd7b43
jne 0x59b6f0
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59b6f0
cmp eax, 0xceb3811b
je 0x59b00d
cmp eax, 0x47b76182
jne 0x59b6f0
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x82f24137
mov ebx, 0xceb3811b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x59b6f0
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x59b6f0
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
nop dword [eax]
cmp ecx, 0x43b6ad12
jg 0x59b860
cmp ecx, 0xd78bfc94
je 0x59b874
cmp ecx, 0x1c1ffc7c
jne 0x59b820
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ch, dl
xor ch, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x59b820
cmp ecx, 0x43b6ad13
je 0x59b87b
cmp ecx, 0x7df2dfc5
jne 0x59b820
mov ecx, eax
jmp 0x59b820
mov ecx, 0x7df2dfc5
jmp 0x59b820
jmp 0x59b880
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov edi, dword [0x60aa8c]
lea edx, [eax - 1]
mov dword [esi + 0x10], eax
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete bl
mov edx, 0x8c874760
mov eax, 0x4d68e82b
cmove edx, eax
cmp edi, 0xa
setl byte [esi + 4]
setl bh
mov ecx, 0x8c874760
cmovge edx, ecx
xor bh, bl
mov ebx, edi
cmovne edx, eax
mov edi, 0xbc4e5a6d
mov dword [esi + 0x14], ebx
nop word cs:[eax + eax]
cmp edi, 0x36d61406
jle 0x59b900
cmp edi, 0x36d61407
je 0x59b93e
cmp edi, 0x4d68e82b
jne 0x59b8e0
jmp 0x59b949
cmp edi, 0x8c874760
je 0x59b942
cmp edi, 0xbc4e5a6d
jne 0x59b8e0
movzx eax, byte [esi + 0xc]
mov bh, byte [esi + 4]
mov bl, al
xor bl, bh
mov ecx, 0x8c874760
mov edi, 0x36d61407
cmovne ecx, edi
test bh, bh
mov edi, ecx
mov ebx, 0x36d61407
cmovne edi, ebx
mov ebx, dword [esi + 0x14]
test al, al
cmove edi, ecx
jmp 0x59b8e0
mov edi, edx
jmp 0x59b8e0
mov edi, 0x36d61407
jmp 0x59b8e0
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x2c]
je 0x59c06c
mov dword [esi + 8], eax
mov eax, dword [0x60aa90]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, dword [0x60aa94]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0x3c]
sete cl
mov edi, 0xdbbf45d4
mov edx, 0x89d6c0b5
cmove edi, edx
cmp eax, 0xa
setl byte [esi + 0xc]
setl al
mov ebx, 0xdbbf45d4
cmovge edi, ebx
xor al, cl
cmovne edi, edx
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x59b9f0
cmp ebx, 0x89d6c0b5
je 0x59ba0b
cmp ebx, 0xaf530581
jne 0x59b9a0
movzx eax, byte [esi + 0x3c]
movzx ecx, byte [esi + 0xc]
mov edx, eax
xor dl, cl
mov edx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edx, ebx
test cl, cl
mov ebx, edx
mov ecx, 0x3983e5e3
cmovne ebx, ecx
test al, al
cmove ebx, edx
jmp 0x59b9a0
cmp ebx, 0xdbbf45d4
je 0x59ba04
cmp ebx, 0x3983e5e3
jne 0x59b9a0
mov ebx, edi
jmp 0x59b9a0
mov ebx, 0x3983e5e3
jmp 0x59b9a0
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, 0xd78bfc94
mov ecx, 0x43b6ad13
cmovne ebx, ecx
test eax, edx
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
sete byte [esi + 0xc]
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov edx, ebx
cmove edx, ecx
cmp edi, 0xa
setl byte [esi + 4]
mov edi, dword [esi + 0x34]
cmovge edx, ebx
mov ebx, 0x1c1ffc7c
jmp 0x59ba9b
movzx eax, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ah, al
xor ah, cl
test cl, cl
mov ebx, 0xd78bfc94
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test al, al
mov ecx, 0xd78bfc94
cmove ebx, ecx
test ah, ah
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
mov ecx, dword [esi + 0x10]
nop
cmp ebx, 0x43b6ad12
jg 0x59bac0
cmp ebx, 0xd78bfc94
je 0x59bad7
cmp ebx, 0x1c1ffc7c
jne 0x59baa0
jmp 0x59ba6c
cmp ebx, 0x43b6ad13
je 0x59bae1
cmp ebx, 0x7df2dfc5
jne 0x59baa0
mov dword [esi + 0x20], edi
mov ebx, edx
jmp 0x59baa0
mov ebx, 0x7df2dfc5
mov dword [esi + 0x20], edi
jmp 0x59baa0
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov ebx, dword [esi + 0x14]
jmp 0x59baff
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov ebx, dword [0x60aa8c]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp ebx, 0xa
setl cl
xor cl, al
mov eax, 0x8c874760
mov edi, 0x4d68e82b
cmovne eax, edi
cmp edx, 0xffffffff
sete byte [esi + 0xc]
mov ecx, eax
cmove ecx, edi
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, eax
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x59bb60
cmp eax, 0x36d61407
je 0x59bb9a
cmp eax, 0x4d68e82b
jne 0x59bb40
jmp 0x59bbb0
cmp eax, 0x8c874760
je 0x59bb9e
cmp eax, 0xbc4e5a6d
jne 0x59bb40
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov dh, dl
xor dh, al
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x59bb40
mov eax, ecx
jmp 0x59bb40
mov eax, 0x36d61407
jmp 0x59bb40
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x20]
je 0x59becb
mov edi, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [edi + 1]
imul ecx, edi
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov edi, 0xdbbf45d4
mov ebx, 0x89d6c0b5
cmovne edi, ebx
cmp ecx, 0xffffffff
sete byte [esi + 0x1f]
mov ecx, edi
cmove ecx, ebx
cmp edx, 0xa
setl byte [esi + 0xc]
cmovge ecx, edi
mov edx, 0xaf530581
nop dword [eax]
cmp edx, 0xdbbf45d3
jg 0x59bc60
cmp edx, 0x89d6c0b5
je 0x59bc80
cmp edx, 0xaf530581
jne 0x59bc10
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x59bc10
cmp edx, 0xdbbf45d4
je 0x59bc74
cmp edx, 0x3983e5e3
jne 0x59bc10
mov edx, ecx
jmp 0x59bc10
mov edx, 0x3983e5e3
jmp 0x59bc10
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop dword [eax + eax]
cmp ecx, 0xce6e8c2e
jg 0x59bcd0
cmp ecx, 0x85fa3530
je 0x59bd10
cmp ecx, 0xc79b93d4
jne 0x59bca0
mov ecx, 0x85fa3530
mov ebx, eax
mov edi, dword [esi + 8]
jmp 0x59bca0
cmp ecx, 0xe387238e
je 0x59bcf5
cmp ecx, 0xce6e8c2f
jne 0x59bca0
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x59bca0
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edi, eax
jmp 0x59bca0
mov dword [esi + 0x28], edi
lea edi, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
mov dword [esi + 0x18], edi
nop dword [eax]
cmp ecx, 0xce6e8c2e
jg 0x59bd60
cmp ecx, 0x85fa3530
je 0x59bdb0
cmp ecx, 0xc79b93d4
jne 0x59bd30
mov ecx, 0x85fa3530
mov dword [esi + 0x14], edi
mov edx, dword [esi + 0x10]
jmp 0x59bd30
cmp ecx, 0xe387238e
je 0x59bd94
cmp ecx, 0xce6e8c2f
jne 0x59bd30
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, edx
mov edx, eax
mov eax, ebx
mov ebx, 0xc79b93d4
cmovl ecx, ebx
mov ebx, eax
mov eax, edx
mov edx, edi
mov edi, dword [esi + 0x18]
jmp 0x59bd30
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edx, edi
jmp 0x59bd30
mov ecx, dword [ebx]
mov edi, dword [0x60aa78]
lea ebx, [edi + 1]
imul ebx, edi
not ebx
or ebx, 0xfffffffe
cmp ebx, 0xffffffff
sete bh
cmp dword [0x60aa7c], 0xa
setl bl
or bl, bh
cmp ecx, dword [edx]
jle 0x59bee2
test bl, bl
je 0x5cb070
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop
cmp eax, 0xceb3811a
jg 0x59be60
cmp eax, 0x82f24137
je 0x59bebd
cmp eax, 0xb8cd7b43
jne 0x59be10
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59be10
cmp eax, 0xceb3811b
je 0x59baf0
cmp eax, 0x47b76182
jne 0x59be10
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmove eax, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59be10
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x59be10
mov dword [esi + 0xb0], 0xba
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x59bf29
test bl, bl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x59bf1e
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x59bf29
xor dl, cl
jne 0x59bf29
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x59beec
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop word cs:[eax + eax]
cmp eax, 0xceb3811a
jg 0x59bfa0
cmp eax, 0x82f24137
je 0x59c003
cmp eax, 0xb8cd7b43
jne 0x59bf60
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59bf60
cmp eax, 0xceb3811b
je 0x59b87d
cmp eax, 0x47b76182
jne 0x59bf60
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x59bf60
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x59bf60
mov eax, dword [0x60aa78]
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete al
cmp dword [0x60aa7c], 0xa
setge cl
setl ah
xor ah, al
or cl, dl
xor cl, 1
or cl, ah
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x20], eax
mov eax, dword [0x60aa80]
mov edx, dword [0x60aa84]
mov dword [esi + 0x10], edx
mov byte [esi + 0x28], cl
test cl, 1
mov dword [esi + 0x2c], eax
jne 0x59c15d
lea edi, [eax - 1]
imul edi, eax
and edi, 1
jmp 0x59c0c2
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl cl
or cl, al
mov byte [esi + 0x2c], cl
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x18], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
mov dword [esi + 0x20], ecx
mov dword [esi + 0x48], eax
jne 0x5b3937
lea edi, [eax + 1]
imul edi, eax
and edi, 1
jmp 0x5b3895
test edi, edi
sete byte [esi + 0x24]
sete al
mov edi, 0xd78bfc94
mov edx, 0x43b6ad13
cmove edi, edx
cmp dword [esi + 0x10], 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi + 0xc], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge edi, ebx
xor cl, al
cmovne edi, edx
mov ebx, 0x1c1ffc7c
jmp 0x59c102
mov ebx, 0x7df2dfc5
cmp ebx, 0x43b6ad12
jg 0x59c146
cmp ebx, 0xd78bfc94
je 0x59c0fd
cmp ebx, 0x1c1ffc7c
jne 0x59c102
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov edx, ecx
xor dl, al
test cl, cl
mov ebx, 0xd78bfc94
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test al, al
mov eax, 0xd78bfc94
cmove ebx, eax
test dl, dl
cmovne ebx, ecx
jmp 0x59c102
cmp ebx, 0x43b6ad13
je 0x59c15a
cmp ebx, 0x7df2dfc5
jne 0x59c102
mov ebx, edi
jmp 0x59c102
mov eax, dword [esi + 0x2c]
lea edi, [eax - 1]
imul edi, eax
and edi, 1
sete byte [esi + 0x24]
sete al
mov edx, 0xd78bfc94
mov ecx, 0x43b6ad13
cmove edx, ecx
cmp dword [esi + 0x10], 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi + 0xc], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge edx, ebx
xor cl, al
mov eax, 0x43b6ad13
cmovne edx, eax
mov ebx, 0x1c1ffc7c
cmp ebx, 0x43b6ad12
jg 0x59c1eb
cmp ebx, 0xd78bfc94
je 0x59c1ff
cmp ebx, 0x1c1ffc7c
jne 0x59c1a2
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov ah, cl
xor ah, al
test cl, cl
mov ebx, 0xd78bfc94
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test al, al
mov ecx, 0xd78bfc94
cmove ebx, ecx
test ah, ah
mov eax, 0x7df2dfc5
cmovne ebx, eax
jmp 0x59c1a2
cmp ebx, 0x43b6ad13
je 0x59c206
cmp ebx, 0x7df2dfc5
jne 0x59c1a2
mov ebx, edx
jmp 0x59c1a2
mov ebx, 0x7df2dfc5
jmp 0x59c1a2
test byte [esi + 0x28], 1
je 0x59c0c2
mov dword [esi + 8], 0
mov edi, dword [esi + 0x14]
mov eax, dword [esi + 0x18]
jmp 0x59c236
add ebx, dword [esi + 8]
sub ebx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov edi, dword [0x60aa8c]
mov dword [esi + 8], ebx
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp edi, 0xa
setl cl
xor cl, al
mov eax, 0x8c874760
mov ebx, 0x4d68e82b
cmovne eax, ebx
cmp edx, 0xffffffff
sete byte [esi + 0x24]
mov ecx, eax
cmove ecx, ebx
cmp edi, 0xa
setl byte [esi + 4]
cmovge ecx, eax
mov eax, 0xbc4e5a6d
nop word [eax + eax]
cmp eax, 0x36d61406
jle 0x59c2a0
cmp eax, 0x36d61407
je 0x59c2d5
cmp eax, 0x4d68e82b
jne 0x59c280
jmp 0x59c2e0
cmp eax, 0x8c874760
je 0x59c2d9
cmp eax, 0xbc4e5a6d
jne 0x59c280
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov ebx, 0x8c874760
mov edi, 0x36d61407
cmovne ebx, edi
test al, al
mov eax, ebx
cmovne eax, edi
test dl, dl
cmove eax, ebx
jmp 0x59c280
mov eax, ecx
jmp 0x59c280
mov eax, 0x36d61407
jmp 0x59c280
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x20]
je 0x59c4ae
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne ebx, edi
cmp ecx, 0xffffffff
sete byte [esi + 0x3c]
mov ecx, ebx
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge ecx, ebx
mov edx, 0xaf530581
nop dword [eax]
cmp edx, 0xdbbf45d3
jg 0x59c390
cmp edx, 0x89d6c0b5
je 0x59c3ab
cmp edx, 0xaf530581
jne 0x59c340
movzx ebx, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x59c340
cmp edx, 0xdbbf45d4
je 0x59c3a4
cmp edx, 0x3983e5e3
jne 0x59c340
mov edx, ecx
jmp 0x59c340
mov edx, 0x3983e5e3
jmp 0x59c340
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ebx, dword [ecx + 4]
mov ecx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0x24]
mov ecx, 0xb8cd7b43
nop word cs:[eax + eax]
cmp ecx, 0xceb3811a
jg 0x59c440
cmp ecx, 0x82f24137
je 0x59c4a0
cmp ecx, 0xb8cd7b43
jne 0x59c3f0
movzx edx, byte [esi + 0x3c]
movzx ecx, byte [esi + 0x24]
mov ch, dl
xor ch, cl
mov edi, 0x82f24137
mov eax, 0x47b76182
cmovne edi, eax
test cl, cl
mov ecx, edi
cmovne ecx, eax
test dl, dl
cmove ecx, edi
jmp 0x59c3f0
cmp ecx, 0xceb3811b
je 0x59c21f
cmp ecx, 0x47b76182
jne 0x59c3f0
lea ecx, [esi + 0xc]
mov dword [esi + 4], ecx
mov ecx, dword [esi + 4]
add dword [ecx], 8
mov ecx, dword [0x60aa98]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dl
mov ecx, 0x82f24137
mov edi, 0xceb3811b
cmove ecx, edi
cmp dword [0x60aa9c], 0xa
mov eax, 0x82f24137
cmovge ecx, eax
setl dh
xor dh, dl
cmovne ecx, edi
jmp 0x59c3f0
add dword [esi + 0xc], 8
mov ecx, 0x47b76182
jmp 0x59c3f0
cmp dword [esi + 8], 0x12345678
jne 0x59c4c1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov ecx, dword [0x60aa78]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60aa7c], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x59c4ee
or cl, al
test cl, 1
jne 0x59c6c1
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59c556
cmp eax, 0x892b3f0e
je 0x59c5c0
cmp eax, 0xbb35c726
jne 0x59c516
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59c516
cmp eax, 0x363212d3
je 0x59c573
cmp eax, 0x41d9d43f
jne 0x59c516
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59c516
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x41d9d43f
mov edi, 0x892b3f0e
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x59c516
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59c62e
cmp eax, 0x892b3f0e
je 0x59c692
cmp eax, 0xbb35c726
jne 0x59c5e9
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59c5e9
cmp eax, 0x363212d3
je 0x59c64b
cmp eax, 0x41d9d43f
jne 0x59c5e9
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59c5e9
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59c5e9
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x59c856
xor cl, al
jne 0x59c856
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x59c72d
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
cmp eax, 0x363212d2
jg 0x59c769
cmp eax, 0x892b3f0e
je 0x59c78a
cmp eax, 0xbb35c726
jne 0x59c72d
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59c72d
cmp eax, 0x363212d3
je 0x59c6eb
cmp eax, 0x41d9d43f
jne 0x59c72d
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59c72d
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59c7f3
cmp eax, 0x892b3f0e
je 0x59c4ee
cmp eax, 0xbb35c726
jne 0x59c7b3
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59c7b3
cmp eax, 0x363212d3
je 0x59c810
cmp eax, 0x41d9d43f
jne 0x59c7b3
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59c7b3
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59c7b3
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
cmp ecx, 0x64
jae 0x59c93d
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0x7e
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x59c8dc
xor dl, cl
je 0x5cb0a0
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete dl
cmp dword [0x60aa7c], 0xa
setge al
setl ah
xor ah, dl
or al, cl
xor al, 1
or al, ah
test al, 1
mov ecx, dword [esi + 8]
je 0x59c93a
inc ecx
test al, 1
jne 0x59c885
inc ecx
jmp 0x59c931
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
cmp ecx, 0x43b6ad12
jg 0x59c9e6
cmp ecx, 0xd78bfc94
je 0x59c9fa
cmp ecx, 0x1c1ffc7c
jne 0x59c9a7
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ch, dl
xor ch, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x59c9a7
cmp ecx, 0x43b6ad13
je 0x59ca01
cmp ecx, 0x7df2dfc5
jne 0x59c9a7
mov ecx, eax
jmp 0x59c9a7
mov ecx, 0x7df2dfc5
jmp 0x59c9a7
jmp 0x59ca06
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov eax, dword [0x60aa8c]
lea edx, [ecx + 1]
mov dword [esi + 0x14], ecx
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete bl
cmp eax, 0xa
setl bh
xor bh, bl
mov ebx, 0x8c874760
mov ecx, 0x4d68e82b
cmovne ebx, ecx
test edi, edx
sete byte [esi + 0xc]
mov edx, ebx
cmove edx, ecx
mov dword [esi + 0x10], eax
cmp eax, 0xa
setl byte [esi + 4]
cmovge edx, ebx
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x59ca70
cmp edi, 0x36d61407
je 0x59caab
cmp edi, 0x4d68e82b
jne 0x59ca56
jmp 0x59cab6
cmp edi, 0x8c874760
je 0x59caaf
cmp edi, 0xbc4e5a6d
jne 0x59ca56
movzx eax, byte [esi + 0xc]
mov bh, byte [esi + 4]
mov bl, al
xor bl, bh
test bh, bh
mov edi, 0x8c874760
mov ecx, 0x36d61407
cmovne edi, ecx
test al, al
mov eax, 0x8c874760
cmove edi, eax
test bl, bl
cmovne edi, ecx
jmp 0x59ca56
mov edi, edx
jmp 0x59ca56
mov edi, 0x36d61407
jmp 0x59ca56
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x2c]
je 0x59d158
mov dword [esi + 8], eax
mov eax, dword [0x60aa90]
lea edi, [eax + 1]
imul edi, eax
mov eax, dword [0x60aa94]
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
sete byte [esi + 0x3c]
sete bl
mov edi, 0xdbbf45d4
mov edx, 0x89d6c0b5
cmove edi, edx
cmp eax, 0xa
setl byte [esi + 0xc]
setl al
mov edx, 0xdbbf45d4
cmovge edi, edx
xor al, bl
mov eax, 0x89d6c0b5
cmovne edi, eax
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x59cb5b
cmp ebx, 0x89d6c0b5
je 0x59cb76
cmp ebx, 0xaf530581
jne 0x59cb12
movzx eax, byte [esi + 0x3c]
movzx ebx, byte [esi + 0xc]
mov ah, bl
xor ah, al
test bl, bl
mov ebx, 0xdbbf45d4
mov edx, 0x3983e5e3
cmovne ebx, edx
test al, al
mov edx, 0xdbbf45d4
cmove ebx, edx
test ah, ah
mov eax, 0x3983e5e3
cmovne ebx, eax
jmp 0x59cb12
cmp ebx, 0xdbbf45d4
je 0x59cb6f
cmp ebx, 0x3983e5e3
jne 0x59cb12
mov ebx, edi
jmp 0x59cb12
mov ebx, 0x3983e5e3
jmp 0x59cb12
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
sete al
mov edx, 0xd78bfc94
mov ebx, 0x43b6ad13
cmove edx, ebx
cmp edi, 0xa
setl byte [esi + 4]
mov edi, dword [esi + 0x34]
mov dword [esi + 0x18], edi
setl ah
mov edi, 0xd78bfc94
cmovge edx, edi
xor ah, al
cmovne edx, ebx
mov ebx, 0x1c1ffc7c
mov edi, dword [esi + 0x10]
cmp ebx, 0x43b6ad12
jg 0x59cc25
cmp ebx, 0xd78bfc94
je 0x59cc3f
cmp ebx, 0x1c1ffc7c
jne 0x59cbd9
movzx eax, byte [esi + 0xc]
movzx ebx, byte [esi + 4]
mov ah, bl
xor ah, al
test bl, bl
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test al, al
mov edi, 0xd78bfc94
cmove ebx, edi
mov edi, dword [esi + 0x10]
test ah, ah
mov eax, 0x7df2dfc5
cmovne ebx, eax
jmp 0x59cbd9
cmp ebx, 0x43b6ad13
je 0x59cc4c
cmp ebx, 0x7df2dfc5
jne 0x59cbd9
mov eax, dword [esi + 0x18]
mov dword [esi + 0x20], eax
mov ebx, edx
jmp 0x59cbd9
mov ebx, 0x7df2dfc5
mov eax, dword [esi + 0x18]
mov dword [esi + 0x20], eax
jmp 0x59cbd9
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
jmp 0x59cc68
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov dword [esi + 0x14], eax
mov edi, dword [0x60aa8c]
mov eax, dword [esi + 0x14]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, edi
mov edi, 0x8c874760
mov ecx, 0x4d68e82b
cmovne edi, ecx
test eax, edx
sete byte [esi + 0xc]
mov ecx, edi
mov eax, 0x4d68e82b
cmove ecx, eax
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, edi
mov eax, 0xbc4e5a6d
nop word cs:[eax + eax]
cmp eax, 0x36d61406
jle 0x59cce0
cmp eax, 0x36d61407
je 0x59cd1a
cmp eax, 0x4d68e82b
jne 0x59ccc0
jmp 0x59cd25
cmp eax, 0x8c874760
je 0x59cd1e
cmp eax, 0xbc4e5a6d
jne 0x59ccc0
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov dh, al
xor dh, dl
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x59ccc0
mov eax, ecx
jmp 0x59ccc0
mov eax, 0x36d61407
jmp 0x59ccc0
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x20]
je 0x59d01f
mov edi, dword [0x60aa90]
mov edx, dword [0x60aa94]
mov dword [esi + 0x18], edx
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov edx, 0x89d6c0b5
cmovne ebx, edx
test edi, ecx
sete byte [esi + 0x1f]
mov eax, ebx
cmove eax, edx
cmp dword [esi + 0x18], 0xa
setl byte [esi + 0xc]
cmovge eax, ebx
mov edx, 0xaf530581
nop word cs:[eax + eax]
cmp edx, 0xdbbf45d3
jg 0x59cdd0
cmp edx, 0x89d6c0b5
je 0x59cdeb
cmp edx, 0xaf530581
jne 0x59cd90
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov ecx, 0x3983e5e3
cmovne edi, ecx
test dl, dl
mov edx, edi
cmovne edx, ecx
test bl, bl
cmove edx, edi
jmp 0x59cd90
cmp edx, 0xdbbf45d4
je 0x59cde4
cmp edx, 0x3983e5e3
jne 0x59cd90
mov edx, eax
jmp 0x59cd90
mov edx, 0x3983e5e3
jmp 0x59cd90
mov eax, dword [esi + 0x14]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop word cs:[eax + eax]
cmp ecx, 0xce6e8c2e
jg 0x59ce40
cmp ecx, 0x85fa3530
je 0x59ce71
cmp ecx, 0xc79b93d4
jne 0x59ce10
mov ecx, 0x85fa3530
mov ebx, eax
mov edi, dword [esi + 8]
jmp 0x59ce10
cmp ecx, 0xe387238e
je 0x59ce65
cmp ecx, 0xce6e8c2f
jne 0x59ce10
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x59ce10
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edi, eax
jmp 0x59ce10
mov dword [esi + 0x28], edi
lea edi, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
mov dword [esi + 0x18], edi
nop dword [eax]
cmp ecx, 0xce6e8c2e
jg 0x59cec0
cmp ecx, 0x85fa3530
je 0x59cf03
cmp ecx, 0xc79b93d4
jne 0x59ce90
mov ecx, 0x85fa3530
mov dword [esi + 0x14], edi
mov edx, dword [esi + 0x10]
jmp 0x59ce90
cmp ecx, 0xe387238e
je 0x59cef4
cmp ecx, 0xce6e8c2f
jne 0x59ce90
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, edx
mov edx, eax
mov eax, ebx
mov ebx, 0xc79b93d4
cmovl ecx, ebx
mov ebx, eax
mov eax, edx
mov edx, edi
mov edi, dword [esi + 0x18]
jmp 0x59ce90
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edx, edi
jmp 0x59ce90
mov ecx, dword [ebx]
mov edi, dword [0x60aa78]
lea ebx, [edi + 1]
imul ebx, edi
mov edi, ebx
xor edi, 0xfffffffe
test edi, ebx
sete bh
cmp dword [0x60aa7c], 0xa
setl bl
or bl, bh
cmp ecx, dword [edx]
jle 0x59d036
test bl, bl
je 0x5cb0f0
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
nop
cmp eax, 0xceb3811a
jg 0x59cfb0
cmp eax, 0x82f24137
je 0x59d011
cmp eax, 0xb8cd7b43
jne 0x59cf60
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59cf60
cmp eax, 0xceb3811b
je 0x59cc57
cmp eax, 0x47b76182
jne 0x59cf60
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x82f24137
mov ebx, 0xceb3811b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x59cf60
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x59cf60
mov dword [esi + 0xb0], 0x7f
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x59d081
test bl, bl
mov edi, dword [esi + 0x28]
je 0x59d073
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [esi + 0x14]
mov ecx, dword [ecx]
mov dword [eax + 4], ecx
mov edx, dword [0x60aa78]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dh
cmp dword [0x60aa7c], 0xa
setge dl
setl bl
xor bl, dh
jne 0x59d081
or dl, cl
test dl, 1
je 0x59d081
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [esi + 0x14]
mov ecx, dword [ecx]
mov dword [eax + 4], ecx
jmp 0x59d03d
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x59d0ee
cmp eax, 0x82f24137
je 0x59d14a
cmp eax, 0xb8cd7b43
jne 0x59d0a9
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x82f24137
mov edi, 0x47b76182
cmovne eax, edi
test cl, cl
mov ecx, 0x82f24137
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59d0a9
cmp eax, 0xceb3811b
je 0x59ca03
cmp eax, 0x47b76182
jne 0x59d0a9
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmove eax, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59d0a9
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x59d0a9
mov eax, dword [0x60aa78]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl dl
or dl, al
mov byte [esi + 0x5c], dl
mov eax, dword [esi + 0x30]
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x18], eax
mov eax, dword [0x60aa80]
mov dword [esi + 0x2c], eax
mov eax, dword [0x60aa84]
mov dword [esi + 8], eax
je 0x59e118
mov eax, dword [esi + 0x2c]
lea edx, [eax + 1]
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
mov eax, edi
and eax, edx
sete al
cmp dword [esi + 8], 0xa
setl ah
xor ah, al
mov ebx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne ebx, eax
and edi, edx
mov dword [esi + 0x28], edi
sete byte [esi + 0x24]
mov edx, ebx
cmove edx, eax
cmp dword [esi + 8], 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x20]
mov dword [esi + 0xc], eax
cmovge edx, ebx
mov edi, 0x1c1ffc7c
cmp edi, 0x43b6ad12
jg 0x59d22f
cmp edi, 0xd78bfc94
je 0x59d243
cmp edi, 0x1c1ffc7c
jne 0x59d1ee
movzx eax, byte [esi + 0x24]
mov byte [esi + 0x48], al
mov ah, byte [esi + 4]
xor al, ah
mov ebx, 0xd78bfc94
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test ah, ah
mov edi, ebx
cmovne edi, ecx
cmp byte [esi + 0x48], 0
cmove edi, ebx
jmp 0x59d1ee
cmp edi, 0x43b6ad13
je 0x59d24a
cmp edi, 0x7df2dfc5
jne 0x59d1ee
mov edi, edx
jmp 0x59d1ee
mov edi, 0x7df2dfc5
jmp 0x59d1ee
cmp byte [esi + 0x5c], 0
je 0x59e12b
mov dword [esi + 8], 0
mov edi, dword [esi + 0x10]
jmp 0x59d27c
mov eax, dword [esi + 8]
add eax, ecx
sub eax, dword [esi + 0x10]
mov dword [esi + 8], eax
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov dword [esi + 0x14], eax
mov edi, dword [0x60aa8c]
mov eax, dword [esi + 0x14]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, 0x8c874760
mov ecx, 0x4d68e82b
cmovne ebx, ecx
test eax, edx
sete byte [esi + 0x24]
mov ecx, ebx
mov eax, 0x4d68e82b
cmove ecx, eax
cmp edi, 0xa
setl byte [esi + 4]
cmovge ecx, ebx
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x59d2da
cmp eax, 0x36d61407
je 0x59d30f
cmp eax, 0x4d68e82b
jne 0x59d2c3
jmp 0x59d31a
cmp eax, 0x8c874760
je 0x59d313
cmp eax, 0xbc4e5a6d
jne 0x59d2c3
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov ebx, 0x8c874760
mov edi, 0x36d61407
cmovne ebx, edi
test al, al
mov eax, ebx
cmovne eax, edi
test dl, dl
cmove eax, ebx
jmp 0x59d2c3
mov eax, ecx
jmp 0x59d2c3
mov eax, 0x36d61407
jmp 0x59d2c3
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x18]
je 0x59d4c2
mov dword [esi + 0x10], eax
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
mov ebx, ecx
xor ebx, 0xfffffffe
test ebx, ecx
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne eax, edi
test ebx, ecx
sete byte [esi + 0x3c]
mov ecx, eax
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge ecx, eax
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x59d3bd
cmp edx, 0x89d6c0b5
je 0x59d3d8
cmp edx, 0xaf530581
jne 0x59d374
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov ah, al
xor ah, dl
test dl, dl
mov edx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edx, ebx
test al, al
mov ebx, 0xdbbf45d4
cmove edx, ebx
test ah, ah
mov eax, 0x3983e5e3
cmovne edx, eax
jmp 0x59d374
cmp edx, 0xdbbf45d4
je 0x59d3d1
cmp edx, 0x3983e5e3
jne 0x59d374
mov edx, ecx
jmp 0x59d374
mov edx, 0x3983e5e3
jmp 0x59d374
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ecx, dword [ecx + 4]
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
mov edx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp edx, 0xa
setl byte [esi + 0x24]
mov ebx, 0xb8cd7b43
cmp ebx, 0xceb3811a
jg 0x59d454
cmp ebx, 0x82f24137
je 0x59d4b4
cmp ebx, 0xb8cd7b43
jne 0x59d412
movzx edx, byte [esi + 0x3c]
mov dh, byte [esi + 0x24]
mov ebx, edx
xor bl, dh
mov edi, 0x82f24137
mov eax, 0x47b76182
cmovne edi, eax
test dh, dh
mov ebx, edi
cmovne ebx, eax
test dl, dl
cmove ebx, edi
jmp 0x59d412
cmp ebx, 0xceb3811b
je 0x59d260
cmp ebx, 0x47b76182
jne 0x59d412
lea edx, [esi + 0xc]
mov dword [esi + 4], edx
mov edx, dword [esi + 4]
add dword [edx], 8
mov edx, dword [0x60aa98]
lea edi, [edx + 1]
imul edi, edx
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
sete dl
mov ebx, 0x82f24137
mov edi, 0xceb3811b
cmove ebx, edi
cmp dword [0x60aa9c], 0xa
mov eax, 0x82f24137
cmovge ebx, eax
setl dh
xor dh, dl
cmovne ebx, edi
jmp 0x59d412
add dword [esi + 0xc], 8
mov ebx, 0x47b76182
jmp 0x59d412
cmp dword [esi + 8], 0x12345678
jne 0x59d4d5
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x59d500
xor cl, al
je 0x59d6cd
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59d56e
cmp eax, 0x892b3f0e
je 0x59d5d1
cmp eax, 0xbb35c726
jne 0x59d529
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59d529
cmp eax, 0x363212d3
je 0x59d58b
cmp eax, 0x41d9d43f
jne 0x59d529
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59d529
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59d529
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59d63a
cmp eax, 0x892b3f0e
je 0x59d69d
cmp eax, 0xbb35c726
jne 0x59d5fa
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59d5fa
cmp eax, 0x363212d3
je 0x59d657
cmp eax, 0x41d9d43f
jne 0x59d5fa
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59d5fa
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59d5fa
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x59d872
xor cl, al
jne 0x59d872
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x59d73f
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x41d9d43f
mov edi, 0x892b3f0e
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
cmp eax, 0x363212d2
jg 0x59d780
cmp eax, 0x892b3f0e
je 0x59d7a1
cmp eax, 0xbb35c726
jne 0x59d73f
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59d73f
cmp eax, 0x363212d3
je 0x59d6f7
cmp eax, 0x41d9d43f
jne 0x59d73f
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59d73f
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59d80e
cmp eax, 0x892b3f0e
je 0x59d500
cmp eax, 0xbb35c726
jne 0x59d7c9
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59d7c9
cmp eax, 0x363212d3
je 0x59d82b
cmp eax, 0x41d9d43f
jne 0x59d7c9
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59d7c9
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59d7c9
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
mov dword [esi + 8], ecx
cmp ecx, 0x64
jae 0x59d959
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0x80
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x60aa7c], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x59d8fd
or dl, cl
jne 0x5cb140
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
cmp dword [0x60aa7c], 0xa
setl al
or al, cl
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x59d956
inc ecx
test al, al
jne 0x59d8a1
inc ecx
jmp 0x59d94d
mov edx, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea eax, [edx + 1]
imul eax, edx
mov edi, eax
xor edi, 0xfffffffe
test edi, eax
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xd78bfc94
mov ebx, 0x43b6ad13
cmovne edx, ebx
test edi, eax
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
sete byte [esi + 0xc]
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
cmovge eax, edx
mov ecx, 0x1c1ffc7c
cmp ecx, 0x43b6ad12
jg 0x59da09
cmp ecx, 0xd78bfc94
je 0x59da1d
cmp ecx, 0x1c1ffc7c
jne 0x59d9c5
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne ecx, ebx
test dl, dl
mov edi, 0xd78bfc94
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x59d9c5
cmp ecx, 0x43b6ad13
je 0x59da24
cmp ecx, 0x7df2dfc5
jne 0x59d9c5
mov ecx, eax
jmp 0x59d9c5
mov ecx, 0x7df2dfc5
jmp 0x59d9c5
jmp 0x59da29
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov eax, dword [0x60aa8c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete byte [esi + 0xc]
sete bl
mov edx, 0x8c874760
mov edi, 0x4d68e82b
cmove edx, edi
mov dword [esi + 0x10], eax
cmp eax, 0xa
setl byte [esi + 4]
setl bh
mov edi, 0x8c874760
cmovge edx, edi
xor bh, bl
mov eax, 0x4d68e82b
cmovne edx, eax
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x59da93
cmp edi, 0x36d61407
je 0x59dad4
cmp edi, 0x4d68e82b
jne 0x59da79
jmp 0x59dadf
cmp edi, 0x8c874760
je 0x59dad8
cmp edi, 0xbc4e5a6d
jne 0x59da79
movzx ebx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov bh, al
xor bh, bl
test al, al
mov edi, 0x8c874760
mov eax, 0x36d61407
cmovne edi, eax
test bl, bl
mov eax, 0x8c874760
cmove edi, eax
test bh, bh
mov eax, 0x36d61407
cmovne edi, eax
jmp 0x59da79
mov edi, edx
jmp 0x59da79
mov edi, 0x36d61407
jmp 0x59da79
mov eax, dword [esi + 0x24]
mov dword [esi + 8], eax
cmp eax, dword [esi + 0x2c]
je 0x59e1d3
mov eax, dword [0x60aa90]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [0x60aa94]
sete byte [esi + 0x3c]
sete dl
mov edi, 0xdbbf45d4
mov ebx, 0x89d6c0b5
cmove edi, ebx
cmp eax, 0xa
setl byte [esi + 0xc]
setl al
mov ebx, 0xdbbf45d4
cmovge edi, ebx
xor al, dl
mov eax, 0x89d6c0b5
cmovne edi, eax
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x59db83
cmp ebx, 0x89d6c0b5
je 0x59db9e
cmp ebx, 0xaf530581
jne 0x59db3a
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0xc]
mov ah, al
xor ah, dl
test dl, dl
mov ebx, 0xdbbf45d4
mov edx, 0x3983e5e3
cmovne ebx, edx
test al, al
mov edx, 0xdbbf45d4
cmove ebx, edx
test ah, ah
mov eax, 0x3983e5e3
cmovne ebx, eax
jmp 0x59db3a
cmp ebx, 0xdbbf45d4
je 0x59db97
cmp ebx, 0x3983e5e3
jne 0x59db3a
mov ebx, edi
jmp 0x59db3a
mov ebx, 0x3983e5e3
jmp 0x59db3a
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
mov dword [esi + 0x14], edi
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp edi, 0xa
setl bh
xor bh, bl
mov ebx, 0xd78bfc94
mov edi, 0x43b6ad13
cmovne ebx, edi
test eax, edx
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
sete byte [esi + 0xc]
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov edi, ebx
mov eax, 0x43b6ad13
cmove edi, eax
cmp dword [esi + 0x14], 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x34]
cmovge edi, ebx
mov ebx, 0x1c1ffc7c
mov edx, dword [esi + 0x10]
cmp ebx, 0x43b6ad12
jg 0x59dc5b
cmp ebx, 0xd78bfc94
je 0x59dc72
cmp ebx, 0x1c1ffc7c
jne 0x59dc09
movzx edx, byte [esi + 0xc]
mov dword [esi + 0x14], eax
mov ah, byte [esi + 4]
mov al, dl
xor al, ah
test ah, ah
mov ebx, 0xd78bfc94
mov dword [esi + 0x18], edi
mov edi, 0x7df2dfc5
cmovne ebx, edi
test dl, dl
mov edx, 0xd78bfc94
cmove ebx, edx
mov edx, dword [esi + 0x10]
test al, al
mov eax, dword [esi + 0x14]
cmovne ebx, edi
mov edi, dword [esi + 0x18]
jmp 0x59dc09
cmp ebx, 0x43b6ad13
je 0x59dc7c
cmp ebx, 0x7df2dfc5
jne 0x59dc09
mov dword [esi + 0x20], eax
mov ebx, edi
jmp 0x59dc09
mov ebx, 0x7df2dfc5
mov dword [esi + 0x20], eax
jmp 0x59dc09
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
jmp 0x59dc96
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edx, dword [0x60aa8c]
lea eax, [ecx + 1]
imul eax, ecx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete byte [esi + 0xc]
sete al
mov ecx, 0x8c874760
mov edi, 0x4d68e82b
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 4]
setl dl
mov ebx, 0x8c874760
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x59dceb
cmp eax, 0x36d61407
je 0x59dd20
cmp eax, 0x4d68e82b
jne 0x59dcd4
jmp 0x59dd2b
cmp eax, 0x8c874760
je 0x59dd24
cmp eax, 0xbc4e5a6d
jne 0x59dcd4
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov edi, 0x8c874760
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
mov eax, edi
cmovne eax, ebx
test dl, dl
cmove eax, edi
jmp 0x59dcd4
mov eax, ecx
jmp 0x59dcd4
mov eax, 0x36d61407
jmp 0x59dcd4
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x20]
je 0x59dfe2
mov ecx, dword [0x60aa90]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
mov edx, dword [0x60aa94]
sete byte [esi + 0x1f]
sete bl
mov ecx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0xc]
setl dl
mov edi, 0xdbbf45d4
cmovge ecx, edi
xor dl, bl
mov edx, 0x89d6c0b5
cmovne ecx, edx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x59ddce
cmp edx, 0x89d6c0b5
je 0x59dde9
cmp edx, 0xaf530581
jne 0x59dd85
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xdbbf45d4
mov edi, 0x3983e5e3
cmovne edx, edi
test bl, bl
mov edi, 0xdbbf45d4
cmove edx, edi
test bh, bh
mov edi, 0x3983e5e3
cmovne edx, edi
jmp 0x59dd85
cmp edx, 0xdbbf45d4
je 0x59dde2
cmp edx, 0x3983e5e3
jne 0x59dd85
mov edx, ecx
jmp 0x59dd85
mov edx, 0x3983e5e3
jmp 0x59dd85
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
cmp ecx, 0xce6e8c2e
jg 0x59de25
cmp ecx, 0x85fa3530
je 0x59de56
cmp ecx, 0xc79b93d4
jne 0x59de01
mov ecx, 0x85fa3530
mov ebx, eax
mov edi, dword [esi + 8]
jmp 0x59de01
cmp ecx, 0xe387238e
je 0x59de4a
cmp ecx, 0xce6e8c2f
jne 0x59de01
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x59de01
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edi, eax
jmp 0x59de01
mov dword [esi + 0x28], edi
lea edi, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
mov dword [esi + 0x18], edi
cmp ecx, 0xce6e8c2e
jg 0x59de97
cmp ecx, 0x85fa3530
je 0x59deda
cmp ecx, 0xc79b93d4
jne 0x59de72
mov ecx, 0x85fa3530
mov dword [esi + 0x14], edi
mov edx, dword [esi + 0x10]
jmp 0x59de72
cmp ecx, 0xe387238e
je 0x59decb
cmp ecx, 0xce6e8c2f
jne 0x59de72
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, edx
mov edx, eax
mov eax, ebx
mov ebx, 0xc79b93d4
cmovl ecx, ebx
mov ebx, eax
mov eax, edx
mov edx, edi
mov edi, dword [esi + 0x18]
jmp 0x59de72
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edx, edi
jmp 0x59de72
mov ecx, dword [ebx]
mov edi, dword [0x60aa78]
lea ebx, [edi + 1]
imul ebx, edi
not ebx
or ebx, 0xfffffffe
cmp ebx, 0xffffffff
sete bh
cmp dword [0x60aa7c], 0xa
setl bl
or bl, bh
cmp ecx, dword [edx]
jle 0x59dff9
test bl, bl
je 0x5cb1a0
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x59df78
cmp eax, 0x82f24137
je 0x59dfd4
cmp eax, 0xb8cd7b43
jne 0x59df38
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59df38
cmp eax, 0xceb3811b
je 0x59dc87
cmp eax, 0x47b76182
jne 0x59df38
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmove eax, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59df38
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x59df38
mov dword [esi + 0xb0], 0x81
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x59e03f
test bl, bl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x59e034
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x59e03f
xor dl, cl
jne 0x59e03f
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x59e003
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x59e0a7
cmp eax, 0x82f24137
je 0x59e10a
cmp eax, 0xb8cd7b43
jne 0x59e067
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59e067
cmp eax, 0xceb3811b
je 0x59da26
cmp eax, 0x47b76182
jne 0x59e067
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x59e067
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x59e067
mov edx, dword [esi + 0x2c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
and edx, eax
mov dword [esi + 0x28], edx
mov edi, dword [esi + 0x28]
test edi, edi
sete al
mov ebx, dword [esi + 8]
cmp ebx, 0xa
setl dl
xor dl, al
mov eax, 0xd78bfc94
mov edx, 0x43b6ad13
cmovne eax, edx
test edi, edi
sete byte [esi + 0x24]
mov edi, eax
cmove edi, edx
cmp ebx, 0xa
setl byte [esi + 4]
mov edx, dword [esi + 0x20]
mov dword [esi + 0xc], edx
cmovge edi, eax
mov ebx, 0x1c1ffc7c
jmp 0x59e172
mov ebx, 0x7df2dfc5
cmp ebx, 0x43b6ad12
jg 0x59e1bb
cmp ebx, 0xd78bfc94
je 0x59e16d
cmp ebx, 0x1c1ffc7c
jne 0x59e172
movzx eax, byte [esi + 0x24]
movzx edx, byte [esi + 4]
mov ah, dl
xor ah, al
test dl, dl
mov ebx, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne ebx, edx
test al, al
mov edx, 0xd78bfc94
cmove ebx, edx
test ah, ah
mov eax, 0x7df2dfc5
cmovne ebx, eax
jmp 0x59e172
cmp ebx, 0x43b6ad13
je 0x59d19f
cmp ebx, 0x7df2dfc5
jne 0x59e172
mov ebx, edi
jmp 0x59e172
mov eax, dword [0x60aa78]
lea edx, [eax + 1]
imul edx, eax
test dl, 1
sete al
cmp dword [0x60aa7c], 0xa
setge bl
setl ah
xor ah, al
or bl, dl
xor bl, 1
or bl, ah
mov eax, dword [esi + 0x30]
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x14], eax
mov eax, dword [0x60aa80]
mov dword [esi + 0x28], eax
mov eax, dword [0x60aa84]
mov dword [esi + 8], eax
mov byte [esi + 0x2c], bl
test bl, 1
je 0x59eca1
mov eax, dword [esi + 0x28]
lea edx, [eax + 1]
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
mov eax, edi
and eax, edx
sete al
cmp dword [esi + 8], 0xa
setl ah
xor ah, al
mov ebx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne ebx, eax
and edi, edx
mov dword [esi + 0x20], edi
sete byte [esi + 0x24]
mov edx, ebx
cmove edx, eax
cmp dword [esi + 8], 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x18]
mov dword [esi + 0xc], eax
cmovge edx, ebx
mov ebx, 0x1c1ffc7c
cmp ebx, 0x43b6ad12
jg 0x59e2ba
cmp ebx, 0xd78bfc94
je 0x59e2ce
cmp ebx, 0x1c1ffc7c
jne 0x59e271
movzx eax, byte [esi + 0x24]
movzx ebx, byte [esi + 4]
mov ah, bl
xor ah, al
test bl, bl
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test al, al
mov edi, 0xd78bfc94
cmove ebx, edi
test ah, ah
mov eax, 0x7df2dfc5
cmovne ebx, eax
jmp 0x59e271
cmp ebx, 0x43b6ad13
je 0x59e2d5
cmp ebx, 0x7df2dfc5
jne 0x59e271
mov ebx, edx
jmp 0x59e271
mov ebx, 0x7df2dfc5
jmp 0x59e271
test byte [esi + 0x2c], 1
je 0x59ecb0
mov dword [esi + 8], 0
mov edx, dword [esi + 0x10]
jmp 0x59e303
add ebx, dword [esi + 8]
sub ebx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edx, dword [0x60aa8c]
mov dword [esi + 8], ebx
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete byte [esi + 0x24]
sete al
mov ecx, 0x8c874760
mov edi, 0x4d68e82b
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 4]
setl dl
mov ebx, 0x8c874760
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x59e357
cmp eax, 0x36d61407
je 0x59e38c
cmp eax, 0x4d68e82b
jne 0x59e340
jmp 0x59e397
cmp eax, 0x8c874760
je 0x59e390
cmp eax, 0xbc4e5a6d
jne 0x59e340
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov ebx, 0x8c874760
mov edi, 0x36d61407
cmovne ebx, edi
test al, al
mov eax, ebx
cmovne eax, edi
test dl, dl
cmove eax, ebx
jmp 0x59e340
mov eax, ecx
jmp 0x59e340
mov eax, 0x36d61407
jmp 0x59e340
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x14]
je 0x59e538
mov ecx, dword [0x60aa90]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
mov edx, dword [0x60aa94]
sete byte [esi + 0x3c]
sete bl
mov ecx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
setl dl
mov edi, 0xdbbf45d4
cmovge ecx, edi
xor dl, bl
mov edx, 0x89d6c0b5
cmovne ecx, edx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x59e436
cmp edx, 0x89d6c0b5
je 0x59e451
cmp edx, 0xaf530581
jne 0x59e3f1
movzx ebx, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov dword [esi + 0x10], eax
mov eax, 0x3983e5e3
cmovne edi, eax
test dl, dl
mov edx, edi
cmovne edx, eax
mov eax, dword [esi + 0x10]
test bl, bl
cmove edx, edi
jmp 0x59e3f1
cmp edx, 0xdbbf45d4
je 0x59e44a
cmp edx, 0x3983e5e3
jne 0x59e3f1
mov edx, ecx
jmp 0x59e3f1
mov edx, 0x3983e5e3
jmp 0x59e3f1
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ebx, dword [ecx + 4]
mov ecx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0x24]
mov ecx, 0xb8cd7b43
cmp ecx, 0xceb3811a
jg 0x59e4ca
cmp ecx, 0x82f24137
je 0x59e52a
cmp ecx, 0xb8cd7b43
jne 0x59e487
movzx edx, byte [esi + 0x3c]
movzx ecx, byte [esi + 0x24]
mov ch, dl
xor ch, cl
mov edi, 0x82f24137
mov eax, 0x47b76182
cmovne edi, eax
test cl, cl
mov ecx, edi
cmovne ecx, eax
test dl, dl
cmove ecx, edi
jmp 0x59e487
cmp ecx, 0xceb3811b
je 0x59e2eb
cmp ecx, 0x47b76182
jne 0x59e487
lea ecx, [esi + 0xc]
mov dword [esi + 4], ecx
mov ecx, dword [esi + 4]
add dword [ecx], 8
mov ecx, dword [0x60aa98]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dl
mov ecx, 0x82f24137
mov edi, 0xceb3811b
cmove ecx, edi
cmp dword [0x60aa9c], 0xa
mov eax, 0x82f24137
cmovge ecx, eax
setl dh
xor dh, dl
cmovne ecx, edi
jmp 0x59e487
add dword [esi + 0xc], 8
mov ecx, 0x47b76182
jmp 0x59e487
cmp dword [esi + 8], 0x12345678
jne 0x59e54b
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete dl
cmp dword [0x60aa7c], 0xa
setge cl
setl ah
xor ah, dl
jne 0x59e57c
or cl, al
jne 0x59e758
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59e5e5
cmp eax, 0x892b3f0e
je 0x59e64d
cmp eax, 0xbb35c726
jne 0x59e5a5
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59e5a5
cmp eax, 0x363212d3
je 0x59e602
cmp eax, 0x41d9d43f
jne 0x59e5a5
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59e5a5
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x59e5a5
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59e6bb
cmp eax, 0x892b3f0e
je 0x59e723
cmp eax, 0xbb35c726
jne 0x59e676
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59e676
cmp eax, 0x363212d3
je 0x59e6d8
cmp eax, 0x41d9d43f
jne 0x59e676
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59e676
lea ecx, [esi + 0x60]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x59e676
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x60aa7c], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x59e8fa
or cl, al
je 0x59e8fa
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x59e7cb
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x41d9d43f
mov edi, 0x892b3f0e
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
cmp eax, 0x363212d2
jg 0x59e80c
cmp eax, 0x892b3f0e
je 0x59e82d
cmp eax, 0xbb35c726
jne 0x59e7cb
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59e7cb
cmp eax, 0x363212d3
je 0x59e783
cmp eax, 0x41d9d43f
jne 0x59e7cb
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59e7cb
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x59e896
cmp eax, 0x892b3f0e
je 0x59e57c
cmp eax, 0xbb35c726
jne 0x59e856
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59e856
cmp eax, 0x363212d3
je 0x59e8b3
cmp eax, 0x41d9d43f
jne 0x59e856
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x59e856
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59e856
mov eax, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x4c]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0x3def23ff
cmp eax, 0xde9169a
jg 0x59e948
cmp eax, 0x8e89d987
je 0x59e9c9
cmp eax, 0xcc8e990
jne 0x59e922
mov word [esi + 0x40], 0x7a61
mov eax, 0xde9169b
jmp 0x59e922
cmp eax, 0xde9169b
je 0x59e97d
cmp eax, 0x3def23ff
jne 0x59e922
movzx ecx, byte [esi + 0x4c]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0xcc8e990
mov edi, 0xde9169b
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x59e922
lea eax, [esi + 0x40]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x60]
mov word [eax], 0x7a61
mov eax, dword [0x60a988]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xcc8e990
mov edi, 0x8e89d987
cmove eax, edi
cmp dword [0x60a98c], 0xa
mov edx, 0xcc8e990
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x59e922
mov eax, dword [esi + 0x60]
sub esp, 4
movzx eax, byte [esi + 0x30]
mov byte [esp], al
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0043dd20
mov ecx, edi
call fcn.0040d170
mov dword [esi + 0xb0], 0x82
mov dword [esi + 0x10], 0
jmp 0x59ea0c
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
cmp eax, 0x3e8
je 0x59ed58
movsx eax, byte [esi + 0x41]
movsx edx, byte [esi + 0x40]
mov dword [esi + 0xb0], 0x82
lea ecx, [esi + 0x40]
push eax
push edx
lea eax, [esi + 0x24]
push eax
call fcn.00435510
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete ah
cmp dword [0x60a994], 0xa
setge dl
setl ch
xor ch, ah
jne 0x59ea5e
or dl, cl
jne 0x5cb1a4
movsx eax, al
lea ecx, [esi + 0x60]
push eax
call fcn.00436970
lea ecx, [esi + 0x60]
call fcn.005664d0
cmp byte [eax], 0x6f
je 0x59eae3
mov eax, dword [0x60a990]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60a994], 0xa
setl cl
test cl, al
jne 0x59ea9f
xor cl, al
je 0x59ead0
lea ecx, [esi + 0x60]
call fcn.005664d0
mov ecx, dword [0x60a990]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60a994], 0xa
setl dl
test dl, cl
jne 0x59eada
xor dl, cl
jne 0x59eada
lea ecx, [esi + 0x60]
call fcn.005664d0
jmp 0x59ea9f
cmp byte [eax], 0x75
jne 0x59e9fa
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0040d830
mov dword [esi + 0x4c], eax
mov ecx, edi
call fcn.0040d830
add eax, dword [esi + 0x70]
mov dword [esi + 8], eax
jmp 0x59eb02
mov eax, dword [esi + 0x30]
mov edx, dword [0x60a998]
mov ecx, dword [0x60a99c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x4a293c83
mov ebx, 0x61c5fcf1
cmovne edx, ebx
cmp eax, 0xffffffff
sete byte [esi + 4]
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x30]
cmovge eax, edx
mov ecx, 0x354728f5
cmp ecx, 0x4a293c82
jle 0x59eb69
cmp ecx, 0x4a293c83
je 0x59eba5
cmp ecx, 0x61c5fcf1
jne 0x59eb4f
jmp 0x59ebb0
cmp ecx, 0xb74ba074
je 0x59ebac
cmp ecx, 0x354728f5
jne 0x59eb4f
movzx edx, byte [esi + 4]
movzx ecx, byte [esi + 0x30]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0x4a293c83
mov edi, 0xb74ba074
cmovne ecx, edi
test dl, dl
mov ebx, 0x4a293c83
cmove ecx, ebx
test dh, dh
cmovne ecx, edi
jmp 0x59eb4f
mov ecx, 0xb74ba074
jmp 0x59eb4f
mov ecx, eax
jmp 0x59eb4f
mov ebx, dword [esi + 0x4c]
cmp ebx, dword [esi + 8]
je 0x59e9fa
movsx eax, byte [ebx]
push eax
call fcn.005de535
add esp, 4
and al, 0xa
mov byte [ebx], al
mov eax, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xc2538ca0
cmp eax, 0x1ec364a7
jg 0x59ec13
cmp eax, 0xc2538ca0
je 0x59ec72
cmp eax, 0xbc7d055
jne 0x59ebf4
inc dword [esi + 0x4c]
mov eax, 0x640d1264
jmp 0x59ebf4
cmp eax, 0x1ec364a8
je 0x59eaff
cmp eax, 0x640d1264
jne 0x59ebf4
lea eax, [esi + 0x4c]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x30]
inc dword [eax]
mov edx, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xbc7d055
mov edi, 0x1ec364a8
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x59ebf4
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xbc7d055
mov edi, 0x640d1264
cmovne eax, edi
test cl, cl
mov ecx, 0xbc7d055
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x59ebf4
mov eax, dword [esi + 0x28]
lea edx, [eax + 1]
imul edx, eax
and edx, 1
mov dword [esi + 0x20], edx
cmp dword [esi + 0x20], 0
sete byte [esi + 0x24]
sete al
mov edi, 0xd78bfc94
mov edx, 0x43b6ad13
cmove edi, edx
cmp dword [esi + 8], 0xa
setl byte [esi + 4]
mov edx, dword [esi + 0x18]
mov dword [esi + 0xc], edx
setl dl
mov ebx, 0xd78bfc94
cmovge edi, ebx
xor dl, al
mov eax, 0x43b6ad13
cmovne edi, eax
mov ebx, 0x1c1ffc7c
jmp 0x59ecf7
mov ebx, 0x7df2dfc5
cmp ebx, 0x43b6ad12
jg 0x59ed40
cmp ebx, 0xd78bfc94
je 0x59ecf2
cmp ebx, 0x1c1ffc7c
jne 0x59ecf7
movzx eax, byte [esi + 0x24]
movzx edx, byte [esi + 4]
mov ah, dl
xor ah, al
test dl, dl
mov ebx, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne ebx, edx
test al, al
mov edx, 0xd78bfc94
cmove ebx, edx
test ah, ah
mov eax, 0x7df2dfc5
cmovne ebx, eax
jmp 0x59ecf7
cmp ebx, 0x43b6ad13
je 0x59e222
cmp ebx, 0x7df2dfc5
jne 0x59ecf7
mov ebx, edi
jmp 0x59ecf7
mov ecx, dword [0x60a990]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60a994], 0xa
setge cl
setl ch
xor ch, dl
jne 0x59ed85
or cl, al
test cl, 1
jne 0x59ee95
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x59edc7
cmp eax, 0xcb7dce01
je 0x59ee01
cmp eax, 0xf454cecc
jne 0x59edad
jmp 0x59ee5f
cmp eax, 0xb86c543
je 0x59ee10
cmp eax, 0x1d50f87a
jne 0x59edad
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xcb7dce01
mov ebx, 0xb86c543
cmovne eax, ebx
test cl, cl
mov ecx, 0xcb7dce01
cmove eax, ecx
test dl, dl
cmovne eax, ebx
jmp 0x59edad
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x59edad
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, eax
add edi, 0xd7
mov eax, dword [0x60a9a8]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xcb7dce01
mov ebx, 0xf454cecc
cmove eax, ebx
cmp dword [0x60a9ac], 0xa
mov edx, 0xcb7dce01
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x59edad
mov dword [esi + 0x30], edi
mov eax, dword [esi + 0x30]
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60a994], 0xa
setl dl
test dl, cl
jne 0x59ef70
xor dl, cl
jne 0x59ef70
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
jmp 0x59ef0a
cmp eax, 0xb86c542
jg 0x59ef21
cmp byte [eax], 0x31
jne 0x59f074
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x59efbb
cmp eax, 0xcb7dce01
je 0x59eff0
cmp eax, 0xb86c543
je 0x59efff
lea ecx, [esi + 0x60]
call fcn.0040f050
mov eax, dword [0x60d648]
mov ecx, dword [0x60d64c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x92]
cmp ecx, 0xa
setl byte [esi + 0x93]
mov eax, 0xae58765
cmp eax, 0xae58764
jg 0x59f0c9
cmp eax, 0x95293c3e
je 0x59fdad
cmp eax, 0xae58765
je 0x5a0a7f
test edi, edi
sete al
mov edx, dword [esi + 0x20]
cmp edx, 0xa
setl cl
xor cl, al
mov eax, 0xd78bfc94
mov ecx, 0x43b6ad13
cmovne eax, ecx
test edi, edi
sete byte [esi + 0x24]
mov edi, eax
cmove edi, ecx
cmp edx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi + 0xc], ecx
cmovge edi, eax
mov ebx, 0x1c1ffc7c
jmp 0x5b38d9
mov ebx, 0x7df2dfc5
cmp ebx, 0x43b6ad12
jg 0x5b391d
cmp ebx, 0xd78bfc94
je 0x5b38d4
cmp ebx, 0x1c1ffc7c
jne 0x5b38d9
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov edx, eax
xor dl, cl
test cl, cl
mov ebx, 0xd78bfc94
mov ecx, 0x7df2dfc5
cmovne ebx, ecx
test al, al
mov eax, 0xd78bfc94
cmove ebx, eax
test dl, dl
cmovne ebx, ecx
jmp 0x5b38d9
cmp ebx, 0x43b6ad13
je 0x5b3931
cmp ebx, 0x7df2dfc5
jne 0x5b38d9
mov ebx, edi
jmp 0x5b38d9
mov ebx, dword [esi + 0x14]
mov eax, dword [esi + 0x48]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and eax, 1
sete ch
mov eax, dword [esi + 0x20]
cmp eax, 0xa
setl cl
xor cl, ch
mov edi, 0xd78bfc94
mov ecx, 0x43b6ad13
cmovne edi, ecx
and edx, 1
mov dword [esi + 0x28], edx
sete byte [esi + 0x24]
mov edx, edi
cmove edx, ecx
cmp eax, 0xa
setl byte [esi + 4]
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
cmovge edx, edi
mov edi, 0x1c1ffc7c
cmp edi, 0x43b6ad12
jg 0x5b39c8
cmp edi, 0xd78bfc94
je 0x5b39dc
cmp edi, 0x1c1ffc7c
jne 0x5b3981
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov ah, al
xor ah, cl
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test cl, cl
mov edi, ebx
mov ecx, 0x7df2dfc5
cmovne edi, ecx
test al, al
cmove edi, ebx
mov ebx, dword [esi + 0x14]
jmp 0x5b3981
cmp edi, 0x43b6ad13
je 0x5b39e3
cmp edi, 0x7df2dfc5
jne 0x5b3981
mov edi, edx
jmp 0x5b3981
mov edi, 0x7df2dfc5
jmp 0x5b3981
cmp byte [esi + 0x2c], 0
je 0x5b3c83
mov dword [esi + 8], 0
mov ecx, dword [esi + 0x10]
jmp 0x5b3a12
add ebx, dword [esi + 8]
sub ebx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov eax, dword [0x60aa8c]
mov dword [esi + 8], ebx
mov ebx, eax
lea eax, [ecx + 1]
imul eax, ecx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete byte [esi + 0x24]
sete al
mov ecx, 0x8c874760
mov edi, 0x4d68e82b
cmove ecx, edi
cmp ebx, 0xa
setl byte [esi + 4]
setl dl
mov ebx, 0x8c874760
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x5b3a70
cmp eax, 0x36d61407
je 0x5b3aaa
cmp eax, 0x4d68e82b
jne 0x5b3a50
jmp 0x5b3ab5
cmp eax, 0x8c874760
je 0x5b3aae
cmp eax, 0xbc4e5a6d
jne 0x5b3a50
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov dh, dl
xor dh, al
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x5b3a50
mov eax, ecx
jmp 0x5b3a50
mov eax, 0x36d61407
jmp 0x5b3a50
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x18]
je 0x5b3c8b
mov dword [esi + 0x10], eax
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
mov ebx, ecx
xor ebx, 0xfffffffe
test ebx, ecx
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne eax, edi
test ebx, ecx
sete byte [esi + 0x3c]
mov ecx, eax
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge ecx, eax
mov edx, 0xaf530581
nop
cmp edx, 0xdbbf45d3
jg 0x5b3b60
cmp edx, 0x89d6c0b5
je 0x5b3b7b
cmp edx, 0xaf530581
jne 0x5b3b10
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov ah, al
xor ah, dl
test dl, dl
mov edx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edx, ebx
test al, al
mov ebx, 0xdbbf45d4
cmove edx, ebx
test ah, ah
mov eax, 0x3983e5e3
cmovne edx, eax
jmp 0x5b3b10
cmp edx, 0xdbbf45d4
je 0x5b3b74
cmp edx, 0x3983e5e3
jne 0x5b3b10
mov edx, ecx
jmp 0x5b3b10
mov edx, 0x3983e5e3
jmp 0x5b3b10
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ebx, dword [ecx + 4]
mov ecx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0x24]
mov ecx, 0xb8cd7b43
nop word cs:[eax + eax]
cmp ecx, 0xceb3811a
jg 0x5b3c10
cmp ecx, 0x82f24137
je 0x5b3c75
cmp ecx, 0xb8cd7b43
jne 0x5b3bc0
movzx edx, byte [esi + 0x3c]
movzx ecx, byte [esi + 0x24]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0x82f24137
mov eax, 0x47b76182
cmovne ecx, eax
test dl, dl
mov edi, 0x82f24137
cmove ecx, edi
test dh, dh
cmovne ecx, eax
jmp 0x5b3bc0
cmp ecx, 0xceb3811b
je 0x5b39f9
cmp ecx, 0x47b76182
jne 0x5b3bc0
lea eax, [esi + 0xc]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
add dword [ecx], 8
mov edi, dword [0x60aa98]
mov edx, dword [0x60aa9c]
lea ecx, [edi + 1]
imul ecx, edi
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmovne eax, edi
cmp ecx, 0xffffffff
mov ecx, eax
cmove ecx, edi
cmp edx, 0xa
cmovge ecx, eax
jmp 0x5b3bc0
add dword [esi + 0xc], 8
mov ecx, 0x47b76182
jmp 0x5b3bc0
mov edi, dword [esi + 0x28]
jmp 0x5b3895
cmp dword [esi + 8], 0x12345678
jne 0x5b3c9e
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x5b3cca
xor cl, al
je 0x5b3e97
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b3d33
cmp eax, 0x892b3f0e
je 0x5b3d96
cmp eax, 0xbb35c726
jne 0x5b3cf3
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b3cf3
cmp eax, 0x363212d3
je 0x5b3d50
cmp eax, 0x41d9d43f
jne 0x5b3cf3
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b3cf3
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5b3cf3
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b3dff
cmp eax, 0x892b3f0e
je 0x5b3e67
cmp eax, 0xbb35c726
jne 0x5b3dbf
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b3dbf
cmp eax, 0x363212d3
je 0x5b3e1c
cmp eax, 0x41d9d43f
jne 0x5b3dbf
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b3dbf
lea ecx, [esi + 0x60]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x5b3dbf
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x5b4034
xor cl, al
jne 0x5b4034
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x5b3f02
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
cmp eax, 0x363212d2
jg 0x5b3f43
cmp eax, 0x892b3f0e
je 0x5b3f64
cmp eax, 0xbb35c726
jne 0x5b3f02
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b3f02
cmp eax, 0x363212d3
je 0x5b3ec1
cmp eax, 0x41d9d43f
jne 0x5b3f02
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b3f02
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b3fd1
cmp eax, 0x892b3f0e
je 0x5b3cca
cmp eax, 0xbb35c726
jne 0x5b3f8c
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b3f8c
cmp eax, 0x363212d3
je 0x5b3fee
cmp eax, 0x41d9d43f
jne 0x5b3f8c
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b3f8c
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5b3f8c
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
cmp ecx, 0x64
jae 0x5b4127
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0xbb
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x60aa7c], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x5b40bf
or dl, cl
jne 0x5cb0b0
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne cl
sete dl
cmp dword [0x60aa7c], 0xa
setge al
setl ah
xor ah, dl
or al, cl
xor al, 1
or al, ah
cmp al, 1
mov ecx, dword [esi + 8]
jne 0x5b4124
inc ecx
test al, al
jne 0x5b4063
inc ecx
jmp 0x5b411b
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
cmp ecx, 0x43b6ad12
jg 0x5b41d0
cmp ecx, 0xd78bfc94
je 0x5b41e4
cmp ecx, 0x1c1ffc7c
jne 0x5b4191
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ch, dl
xor ch, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x5b4191
cmp ecx, 0x43b6ad13
je 0x5b41eb
cmp ecx, 0x7df2dfc5
jne 0x5b4191
mov ecx, eax
jmp 0x5b4191
mov ecx, 0x7df2dfc5
jmp 0x5b4191
jmp 0x5b41f0
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov ecx, dword [0x60aa8c]
lea edx, [eax + 1]
mov dword [esi + 0x10], eax
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x8c874760
mov eax, 0x4d68e82b
cmovne ebx, eax
test edi, edx
sete byte [esi + 0xc]
mov edx, ebx
cmove edx, eax
mov dword [esi + 0x18], ecx
cmp ecx, 0xa
setl byte [esi + 4]
cmovge edx, ebx
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x5b425a
cmp edi, 0x36d61407
je 0x5b4295
cmp edi, 0x4d68e82b
jne 0x5b4240
jmp 0x5b42a0
cmp edi, 0x8c874760
je 0x5b4299
cmp edi, 0xbc4e5a6d
jne 0x5b4240
movzx eax, byte [esi + 0xc]
mov bh, byte [esi + 4]
mov bl, al
xor bl, bh
mov ecx, 0x8c874760
mov edi, 0x36d61407
cmovne ecx, edi
test bh, bh
mov edi, ecx
mov ebx, 0x36d61407
cmovne edi, ebx
test al, al
cmove edi, ecx
jmp 0x5b4240
mov edi, edx
jmp 0x5b4240
mov edi, 0x36d61407
jmp 0x5b4240
mov eax, dword [esi + 0x24]
cmp eax, dword [esi + 0x2c]
je 0x5b490f
mov dword [esi + 8], eax
mov eax, dword [0x60aa90]
mov ebx, dword [0x60aa94]
lea edi, [eax + 1]
imul edi, eax
mov eax, edi
xor eax, 0xfffffffe
test eax, edi
sete cl
cmp ebx, 0xa
setl ch
xor ch, cl
mov ecx, 0xdbbf45d4
mov edx, 0x89d6c0b5
cmovne ecx, edx
test eax, edi
sete byte [esi + 0x3c]
mov edi, ecx
cmove edi, edx
cmp ebx, 0xa
setl byte [esi + 0xc]
cmovge edi, ecx
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x5b433d
cmp ebx, 0x89d6c0b5
je 0x5b4358
cmp ebx, 0xaf530581
jne 0x5b42f9
movzx eax, byte [esi + 0x3c]
movzx ecx, byte [esi + 0xc]
mov ah, al
xor ah, cl
mov edx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edx, ebx
test cl, cl
mov ebx, edx
mov ecx, 0x3983e5e3
cmovne ebx, ecx
test al, al
cmove ebx, edx
jmp 0x5b42f9
cmp ebx, 0xdbbf45d4
je 0x5b4351
cmp ebx, 0x3983e5e3
jne 0x5b42f9
mov ebx, edi
jmp 0x5b42f9
mov ebx, 0x3983e5e3
jmp 0x5b42f9
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov eax, dword [0x60aa80]
mov edi, dword [0x60aa84]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete byte [esi + 0xc]
sete al
mov edx, 0xd78bfc94
mov ebx, 0x43b6ad13
cmove edx, ebx
cmp edi, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x14], ecx
setl cl
mov edi, 0xd78bfc94
cmovge edx, edi
xor cl, al
cmovne edx, ebx
mov ebx, 0x1c1ffc7c
mov ecx, dword [esi + 0x10]
cmp ebx, 0x43b6ad12
jg 0x5b4404
cmp ebx, 0xd78bfc94
je 0x5b441e
cmp ebx, 0x1c1ffc7c
jne 0x5b43bb
mov ah, byte [esi + 0xc]
mov byte [esi + 0x28], ah
movzx ecx, byte [esi + 4]
xor ah, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ecx, dword [esi + 0x10]
mov ebx, edi
mov eax, 0x7df2dfc5
cmovne ebx, eax
cmp byte [esi + 0x28], 0
cmove ebx, edi
jmp 0x5b43bb
cmp ebx, 0x43b6ad13
je 0x5b442b
cmp ebx, 0x7df2dfc5
jne 0x5b43bb
mov eax, dword [esi + 0x14]
mov dword [esi + 0x20], eax
mov ebx, edx
jmp 0x5b43bb
mov ebx, 0x7df2dfc5
mov eax, dword [esi + 0x14]
mov dword [esi + 0x20], eax
jmp 0x5b43bb
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0x18]
jmp 0x5b4448
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edx, dword [0x60aa8c]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete byte [esi + 0xc]
sete al
mov ecx, 0x8c874760
mov edi, 0x4d68e82b
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 4]
setl dl
mov ebx, 0x8c874760
cmovge ecx, ebx
xor dl, al
cmovne ecx, edi
mov eax, 0xbc4e5a6d
nop word cs:[eax + eax]
cmp eax, 0x36d61406
jle 0x5b44b0
cmp eax, 0x36d61407
je 0x5b44ea
cmp eax, 0x4d68e82b
jne 0x5b4490
jmp 0x5b44f5
cmp eax, 0x8c874760
je 0x5b44ee
cmp eax, 0xbc4e5a6d
jne 0x5b4490
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov dh, al
xor dh, dl
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x5b4490
mov eax, ecx
jmp 0x5b4490
mov eax, 0x36d61407
jmp 0x5b4490
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x20]
je 0x5b47df
mov edi, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [edi + 1]
imul ecx, edi
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov edi, 0xdbbf45d4
mov ebx, 0x89d6c0b5
cmovne edi, ebx
cmp ecx, 0xffffffff
sete byte [esi + 0x1f]
mov eax, edi
cmove eax, ebx
cmp edx, 0xa
setl byte [esi + 0xc]
cmovge eax, edi
mov edx, 0xaf530581
nop word cs:[eax + eax]
cmp edx, 0xdbbf45d3
jg 0x5b45a0
cmp edx, 0x89d6c0b5
je 0x5b45bb
cmp edx, 0xaf530581
jne 0x5b4560
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov ecx, 0x3983e5e3
cmovne edi, ecx
test dl, dl
mov edx, edi
cmovne edx, ecx
test bl, bl
cmove edx, edi
jmp 0x5b4560
cmp edx, 0xdbbf45d4
je 0x5b45b4
cmp edx, 0x3983e5e3
jne 0x5b4560
mov edx, eax
jmp 0x5b4560
mov edx, 0x3983e5e3
jmp 0x5b4560
mov eax, dword [esi + 0x14]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop word cs:[eax + eax]
cmp ecx, 0xce6e8c2e
jg 0x5b4610
cmp ecx, 0x85fa3530
je 0x5b4641
cmp ecx, 0xc79b93d4
jne 0x5b45e0
mov ecx, 0x85fa3530
mov ebx, eax
mov edx, dword [esi + 8]
jmp 0x5b45e0
cmp ecx, 0xe387238e
je 0x5b4635
cmp ecx, 0xce6e8c2f
jne 0x5b45e0
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, 0xc79b93d4
cmovl ecx, edi
jmp 0x5b45e0
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edx, eax
jmp 0x5b45e0
mov dword [esi + 0x18], ebx
mov dword [esi + 0x28], edx
lea ebx, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
nop dword [eax]
cmp ecx, 0xce6e8c2e
jg 0x5b4690
cmp ecx, 0x85fa3530
je 0x5b46c4
cmp ecx, 0xc79b93d4
jne 0x5b4660
mov ecx, 0x85fa3530
mov dword [esi + 0x14], ebx
mov edi, dword [esi + 0x10]
jmp 0x5b4660
cmp ecx, 0xe387238e
je 0x5b46b5
cmp ecx, 0xce6e8c2f
jne 0x5b4660
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x5b4660
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edi, ebx
jmp 0x5b4660
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx]
mov edx, dword [0x60aa78]
lea ebx, [edx + 1]
imul ebx, edx
mov edx, ebx
xor edx, 0xfffffffe
test edx, ebx
setne dh
sete bl
cmp dword [0x60aa7c], 0xa
setge dl
setl bh
xor bh, bl
or dl, dh
xor dl, 1
or dl, bh
cmp ecx, dword [edi]
jle 0x5b47f6
test dl, dl
je 0x5cb100
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x5b4770
cmp eax, 0x82f24137
je 0x5b47d1
cmp eax, 0xb8cd7b43
jne 0x5b4730
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b4730
cmp eax, 0xceb3811b
je 0x5b4439
cmp eax, 0x47b76182
jne 0x5b4730
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x82f24137
mov ebx, 0xceb3811b
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x5b4730
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x5b4730
mov dword [esi + 0xb0], 0xbc
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x5b483d
test dl, dl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x5b4832
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60aa7c], 0xa
setl dl
test dl, cl
jne 0x5b483d
xor dl, cl
jne 0x5b483d
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x5b4800
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x5b48a5
cmp eax, 0x82f24137
je 0x5b4901
cmp eax, 0xb8cd7b43
jne 0x5b4865
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b4865
cmp eax, 0xceb3811b
je 0x5b41ed
cmp eax, 0x47b76182
jne 0x5b4865
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmove eax, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5b4865
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x5b4865
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
or cl, al
mov byte [esi + 0x5c], cl
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x14], eax
mov eax, dword [0x60aa80]
mov dword [esi + 0x2c], eax
mov eax, dword [0x60aa84]
mov dword [esi + 0x20], eax
je 0x5b58db
mov eax, dword [esi + 0x2c]
lea edx, [eax + 1]
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
mov eax, edi
and eax, edx
sete al
mov ebx, dword [esi + 0x20]
cmp ebx, 0xa
setl cl
xor cl, al
mov ecx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne ecx, eax
and edi, edx
mov dword [esi + 0x28], edi
sete byte [esi + 0x24]
mov edx, ecx
cmove edx, eax
cmp ebx, 0xa
setl byte [esi + 4]
mov eax, dword [esi + 8]
mov dword [esi + 0xc], eax
cmovge edx, ecx
mov edi, 0x1c1ffc7c
mov ecx, dword [esi + 0x10]
cmp edi, 0x43b6ad12
jg 0x5b49f1
cmp edi, 0xd78bfc94
je 0x5b4a05
cmp edi, 0x1c1ffc7c
jne 0x5b49a8
mov ah, byte [esi + 0x24]
mov byte [esi + 0x48], ah
movzx ecx, byte [esi + 4]
xor ah, cl
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test cl, cl
mov ecx, dword [esi + 0x10]
mov edi, ebx
mov eax, 0x7df2dfc5
cmovne edi, eax
cmp byte [esi + 0x48], 0
cmove edi, ebx
jmp 0x5b49a8
cmp edi, 0x43b6ad13
je 0x5b4a0c
cmp edi, 0x7df2dfc5
jne 0x5b49a8
mov edi, edx
jmp 0x5b49a8
mov edi, 0x7df2dfc5
jmp 0x5b49a8
cmp byte [esi + 0x5c], 0
je 0x5b58ee
mov dword [esi + 8], 0
mov edi, dword [esi + 0x18]
jmp 0x5b4a3a
add ebx, dword [esi + 8]
sub ebx, dword [esi + 0x10]
mov eax, dword [esi + 4]
mov ecx, dword [0x60aa88]
mov edi, dword [0x60aa8c]
mov dword [esi + 8], ebx
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp edi, 0xa
setl cl
xor cl, al
mov eax, 0x8c874760
mov ebx, 0x4d68e82b
cmovne eax, ebx
cmp edx, 0xffffffff
sete byte [esi + 0x24]
mov ecx, eax
cmove ecx, ebx
cmp edi, 0xa
setl byte [esi + 4]
cmovge ecx, eax
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x5b4a92
cmp eax, 0x36d61407
je 0x5b4ac7
cmp eax, 0x4d68e82b
jne 0x5b4a7b
jmp 0x5b4ad2
cmp eax, 0x8c874760
je 0x5b4acb
cmp eax, 0xbc4e5a6d
jne 0x5b4a7b
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov ebx, 0x8c874760
mov edi, 0x36d61407
cmovne ebx, edi
test al, al
mov eax, ebx
cmovne eax, edi
test dl, dl
cmove eax, ebx
jmp 0x5b4a7b
mov eax, ecx
jmp 0x5b4a7b
mov eax, 0x36d61407
jmp 0x5b4a7b
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x14]
je 0x5b4c79
mov dword [esi + 0x10], eax
mov ebx, dword [0x60aa90]
mov edx, dword [0x60aa94]
lea ecx, [ebx + 1]
imul ecx, ebx
mov ebx, ecx
xor ebx, 0xfffffffe
test ebx, ecx
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmovne eax, edi
test ebx, ecx
sete byte [esi + 0x3c]
mov ecx, eax
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
cmovge ecx, eax
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x5b4b75
cmp edx, 0x89d6c0b5
je 0x5b4b90
cmp edx, 0xaf530581
jne 0x5b4b2c
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov ah, dl
xor ah, al
test dl, dl
mov edx, 0xdbbf45d4
mov ebx, 0x3983e5e3
cmovne edx, ebx
test al, al
mov ebx, 0xdbbf45d4
cmove edx, ebx
test ah, ah
mov eax, 0x3983e5e3
cmovne edx, eax
jmp 0x5b4b2c
cmp edx, 0xdbbf45d4
je 0x5b4b89
cmp edx, 0x3983e5e3
jne 0x5b4b2c
mov edx, ecx
jmp 0x5b4b2c
mov edx, 0x3983e5e3
jmp 0x5b4b2c
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ebx, dword [ecx + 4]
mov ecx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0x24]
mov ecx, 0xb8cd7b43
cmp ecx, 0xceb3811a
jg 0x5b4c0c
cmp ecx, 0x82f24137
je 0x5b4c6b
cmp ecx, 0xb8cd7b43
jne 0x5b4bc9
movzx edx, byte [esi + 0x3c]
movzx ecx, byte [esi + 0x24]
mov ch, dl
xor ch, cl
mov edi, 0x82f24137
mov eax, 0x47b76182
cmovne edi, eax
test cl, cl
mov ecx, edi
cmovne ecx, eax
test dl, dl
cmove ecx, edi
jmp 0x5b4bc9
cmp ecx, 0xceb3811b
je 0x5b4a22
cmp ecx, 0x47b76182
jne 0x5b4bc9
lea ecx, [esi + 0xc]
mov dword [esi + 4], ecx
mov ecx, dword [esi + 4]
add dword [ecx], 8
mov ecx, dword [0x60aa98]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete dl
mov ecx, 0x82f24137
mov edi, 0xceb3811b
cmove ecx, edi
cmp dword [0x60aa9c], 0xa
mov eax, 0x82f24137
cmovge ecx, eax
setl dh
xor dh, dl
cmovne ecx, edi
jmp 0x5b4bc9
add dword [esi + 0xc], 8
mov ecx, 0x47b76182
jmp 0x5b4bc9
cmp dword [esi + 8], 0x12345678
jne 0x5b4c8c
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov ecx, dword [0x60aa78]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x60aa7c], 0xa
setge cl
setl ch
xor ch, dl
jne 0x5b4cb9
or cl, al
test cl, 1
jne 0x5b4e90
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b4d22
cmp eax, 0x892b3f0e
je 0x5b4d8c
cmp eax, 0xbb35c726
jne 0x5b4ce2
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b4ce2
cmp eax, 0x363212d3
je 0x5b4d3f
cmp eax, 0x41d9d43f
jne 0x5b4ce2
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b4ce2
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x41d9d43f
mov edi, 0x892b3f0e
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x5b4ce2
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b4df9
cmp eax, 0x892b3f0e
je 0x5b4e61
cmp eax, 0xbb35c726
jne 0x5b4db4
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b4db4
cmp eax, 0x363212d3
je 0x5b4e16
cmp eax, 0x41d9d43f
jne 0x5b4db4
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b4db4
lea ecx, [esi + 0x60]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x5b4db4
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x5b5039
xor cl, al
jne 0x5b5039
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x5b4f01
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
cmp eax, 0x363212d2
jg 0x5b4f42
cmp eax, 0x892b3f0e
je 0x5b4f63
cmp eax, 0xbb35c726
jne 0x5b4f01
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b4f01
cmp eax, 0x363212d3
je 0x5b4ebb
cmp eax, 0x41d9d43f
jne 0x5b4f01
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b4f01
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b4fd1
cmp eax, 0x892b3f0e
je 0x5b4cb9
cmp eax, 0xbb35c726
jne 0x5b4f8c
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b4f8c
cmp eax, 0x363212d3
je 0x5b4fee
cmp eax, 0x41d9d43f
jne 0x5b4f8c
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b4f8c
lea ecx, [esi + 0x60]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0x41d9d43f
mov ebx, 0x892b3f0e
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x5b4f8c
lea ecx, [esi + 0x4c]
push 0xa
push 1
call fcn.005cd470
lea ecx, [esi + 0x40]
push 0x1e
push 0xf
call fcn.005cd470
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
xor ecx, ecx
mov dword [esi + 8], ecx
cmp ecx, 0x64
jae 0x5b5121
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x44]
mov dword [esi + 0xb0], 0xbd
lea ecx, [esi + 0x40]
push edx
push eax
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov edx, dword [0x60aa78]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dh
cmp dword [0x60aa7c], 0xa
setl bl
setge dl
cmp bl, dh
jne 0x5b50c0
or dl, cl
test dl, 1
jne 0x5cb160
mov dword [esi + 0x30], eax
lea ecx, [esi + 0x4c]
push dword [esi + 0x50]
push dword [esi + 0x4c]
lea eax, [esi + 0x58]
push eax
call fcn.00433d70
mov dword [esi + 4], eax
lea ecx, [esi + 0x60]
lea eax, [esi + 0x30]
push eax
lea eax, [esi + 4]
push eax
call fcn.00432bd0
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete dl
cmp dword [0x60aa7c], 0xa
setge al
setl ah
xor ah, dl
or al, cl
xor al, 1
or al, ah
test al, 1
mov ecx, dword [esi + 8]
je 0x5b511e
inc ecx
test al, 1
jne 0x5b5068
inc ecx
jmp 0x5b5115
mov dword [esi + 0x30], 0
mov dword [esi + 0x34], 0
mov dword [esi + 0x38], 0
mov eax, dword [esi + 0x60]
mov dword [esi + 0x24], eax
mov eax, dword [0x60aa80]
mov ecx, dword [0x60aa84]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
sete dl
mov eax, 0xd78bfc94
mov edi, 0x43b6ad13
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 0x64]
mov dword [esi + 0x2c], ecx
setl cl
mov ebx, 0xd78bfc94
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x1c1ffc7c
cmp ecx, 0x43b6ad12
jg 0x5b51c9
cmp ecx, 0xd78bfc94
je 0x5b51dd
cmp ecx, 0x1c1ffc7c
jne 0x5b518a
movzx edx, byte [esi + 0xc]
movzx ecx, byte [esi + 4]
mov ch, dl
xor ch, cl
mov edi, 0xd78bfc94
mov ebx, 0x7df2dfc5
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x5b518a
cmp ecx, 0x43b6ad13
je 0x5b51e4
cmp ecx, 0x7df2dfc5
jne 0x5b518a
mov ecx, eax
jmp 0x5b518a
mov ecx, 0x7df2dfc5
jmp 0x5b518a
jmp 0x5b51e9
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov edi, dword [0x60aa8c]
lea edx, [eax + 1]
mov dword [esi + 0x18], eax
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
sete bl
mov edx, 0x8c874760
mov eax, 0x4d68e82b
cmove edx, eax
mov dword [esi + 0x14], edi
cmp edi, 0xa
setl byte [esi + 4]
setl bh
mov edi, 0x8c874760
cmovge edx, edi
xor bh, bl
cmovne edx, eax
mov edi, 0xbc4e5a6d
cmp edi, 0x36d61406
jle 0x5b5252
cmp edi, 0x36d61407
je 0x5b528d
cmp edi, 0x4d68e82b
jne 0x5b5238
jmp 0x5b5298
cmp edi, 0x8c874760
je 0x5b5291
cmp edi, 0xbc4e5a6d
jne 0x5b5238
movzx eax, byte [esi + 0xc]
mov bh, byte [esi + 4]
mov bl, al
xor bl, bh
test bh, bh
mov edi, 0x8c874760
mov ecx, 0x36d61407
cmovne edi, ecx
test al, al
mov eax, 0x8c874760
cmove edi, eax
test bl, bl
cmovne edi, ecx
jmp 0x5b5238
mov edi, edx
jmp 0x5b5238
mov edi, 0x36d61407
jmp 0x5b5238
mov eax, dword [esi + 0x24]
mov dword [esi + 8], eax
cmp eax, dword [esi + 0x2c]
je 0x5b598c
mov eax, dword [0x60aa90]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
mov eax, dword [0x60aa94]
sete byte [esi + 0x3c]
sete dl
mov edi, 0xdbbf45d4
mov ebx, 0x89d6c0b5
cmove edi, ebx
cmp eax, 0xa
setl byte [esi + 0xc]
setl al
mov ebx, 0xdbbf45d4
cmovge edi, ebx
xor al, dl
mov eax, 0x89d6c0b5
cmovne edi, eax
mov ebx, 0xaf530581
cmp ebx, 0xdbbf45d3
jg 0x5b5337
cmp ebx, 0x89d6c0b5
je 0x5b5352
cmp ebx, 0xaf530581
jne 0x5b52f3
movzx eax, byte [esi + 0x3c]
movzx edx, byte [esi + 0xc]
mov ah, dl
xor ah, al
test dl, dl
mov ebx, 0xdbbf45d4
mov ecx, 0x3983e5e3
cmovne ebx, ecx
test al, al
mov edx, 0xdbbf45d4
cmove ebx, edx
test ah, ah
cmovne ebx, ecx
jmp 0x5b52f3
cmp ebx, 0xdbbf45d4
je 0x5b534b
cmp ebx, 0x3983e5e3
jne 0x5b52f3
mov ebx, edi
jmp 0x5b52f3
mov ebx, 0x3983e5e3
jmp 0x5b52f3
mov eax, dword [0x60aa80]
mov edx, dword [0x60aa84]
mov dword [esi + 0x10], edx
lea ebx, [eax + 1]
imul ebx, eax
not ebx
or ebx, 0xfffffffe
cmp ebx, 0xffffffff
sete al
cmp edx, 0xa
setl dl
xor dl, al
mov edx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne edx, eax
cmp ebx, 0xffffffff
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov dword [esi + 8], eax
sete byte [esi + 0xc]
mov eax, dword [esi + 0x30]
mov dword [esi + 0x3c], eax
mov edi, edx
mov eax, 0x43b6ad13
cmove edi, eax
cmp dword [esi + 0x10], 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x34]
cmovge edi, edx
mov ebx, 0x1c1ffc7c
cmp ebx, 0x43b6ad12
jg 0x5b540b
cmp ebx, 0xd78bfc94
je 0x5b5422
cmp ebx, 0x1c1ffc7c
jne 0x5b53bc
mov dword [esi + 0x10], eax
movzx eax, byte [esi + 0xc]
movzx edx, byte [esi + 4]
mov ah, al
xor ah, dl
test dl, dl
mov ebx, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne ebx, edx
mov ecx, 0x7df2dfc5
test al, al
mov edx, 0xd78bfc94
cmove ebx, edx
test ah, ah
mov eax, dword [esi + 0x10]
cmovne ebx, ecx
jmp 0x5b53bc
cmp ebx, 0x43b6ad13
je 0x5b542c
cmp ebx, 0x7df2dfc5
jne 0x5b53bc
mov dword [esi + 0x20], eax
mov ebx, edi
jmp 0x5b53bc
mov ebx, 0x7df2dfc5
mov dword [esi + 0x20], eax
jmp 0x5b53bc
mov eax, dword [esi + 8]
add eax, 4
mov dword [esi + 0x10], eax
mov ebx, dword [esi + 0x14]
mov eax, dword [esi + 0x18]
jmp 0x5b544b
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov ebx, dword [0x60aa8c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp ebx, 0xa
setl ch
xor ch, cl
mov edi, 0x8c874760
mov ecx, 0x4d68e82b
cmovne edi, ecx
test eax, edx
sete byte [esi + 0xc]
mov ecx, edi
mov eax, 0x4d68e82b
cmove ecx, eax
cmp ebx, 0xa
setl byte [esi + 4]
cmovge ecx, edi
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x5b54a6
cmp eax, 0x36d61407
je 0x5b54e0
cmp eax, 0x4d68e82b
jne 0x5b548f
jmp 0x5b54eb
cmp eax, 0x8c874760
je 0x5b54e4
cmp eax, 0xbc4e5a6d
jne 0x5b548f
movzx edx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov dh, dl
xor dh, al
test al, al
mov eax, 0x8c874760
mov ebx, 0x36d61407
cmovne eax, ebx
test dl, dl
mov edi, 0x8c874760
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x5b548f
mov eax, ecx
jmp 0x5b548f
mov eax, 0x36d61407
jmp 0x5b548f
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x20]
je 0x5b57a5
mov edi, dword [0x60aa90]
mov edx, dword [0x60aa94]
mov dword [esi + 0x18], edx
lea ecx, [edi + 1]
imul ecx, edi
mov edi, ecx
xor edi, 0xfffffffe
test edi, ecx
sete bl
cmp edx, 0xa
setl bh
xor bh, bl
mov ebx, 0xdbbf45d4
mov edx, 0x89d6c0b5
cmovne ebx, edx
test edi, ecx
sete byte [esi + 0x1f]
mov eax, ebx
cmove eax, edx
cmp dword [esi + 0x18], 0xa
setl byte [esi + 0xc]
cmovge eax, ebx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x5b5588
cmp edx, 0x89d6c0b5
je 0x5b55a3
cmp edx, 0xaf530581
jne 0x5b5549
movzx ebx, byte [esi + 0x1f]
movzx edx, byte [esi + 0xc]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov ecx, 0x3983e5e3
cmovne edi, ecx
test dl, dl
mov edx, edi
cmovne edx, ecx
test bl, bl
cmove edx, edi
jmp 0x5b5549
cmp edx, 0xdbbf45d4
je 0x5b559c
cmp edx, 0x3983e5e3
jne 0x5b5549
mov edx, eax
jmp 0x5b5549
mov edx, 0x3983e5e3
jmp 0x5b5549
mov eax, dword [esi + 0x14]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
cmp ecx, 0xce6e8c2e
jg 0x5b55e2
cmp ecx, 0x85fa3530
je 0x5b5613
cmp ecx, 0xc79b93d4
jne 0x5b55be
mov ecx, 0x85fa3530
mov ebx, eax
mov edx, dword [esi + 8]
jmp 0x5b55be
cmp ecx, 0xe387238e
je 0x5b5607
cmp ecx, 0xce6e8c2f
jne 0x5b55be
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edi, 0xc79b93d4
cmovl ecx, edi
jmp 0x5b55be
mov ecx, 0x85fa3530
mov ebx, dword [esi + 8]
mov edx, eax
jmp 0x5b55be
mov dword [esi + 0x18], ebx
mov dword [esi + 0x28], edx
lea ebx, [eax + 4]
mov ecx, dword [esi + 0x10]
mov ecx, dword [ecx]
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 4]
mov dword [esi + 4], ecx
mov ecx, 0xce6e8c2f
cmp ecx, 0xce6e8c2e
jg 0x5b5654
cmp ecx, 0x85fa3530
je 0x5b5688
cmp ecx, 0xc79b93d4
jne 0x5b562f
mov ecx, 0x85fa3530
mov dword [esi + 0x14], ebx
mov edi, dword [esi + 0x10]
jmp 0x5b562f
cmp ecx, 0xe387238e
je 0x5b5679
cmp ecx, 0xce6e8c2f
jne 0x5b562f
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 4]
mov ecx, 0xe387238e
mov edx, 0xc79b93d4
cmovl ecx, edx
jmp 0x5b562f
mov ecx, 0x85fa3530
mov edx, dword [esi + 0x10]
mov dword [esi + 0x14], edx
mov edi, ebx
jmp 0x5b562f
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx]
mov edx, dword [0x60aa78]
lea ebx, [edx + 1]
imul ebx, edx
mov edx, ebx
xor edx, 0xfffffffe
test edx, ebx
setne dh
sete bl
cmp dword [0x60aa7c], 0xa
setge dl
setl bh
xor bh, bl
or dl, dh
xor dl, 1
or dl, bh
cmp ecx, dword [edi]
jle 0x5b57bc
test dl, dl
je 0x5cb190
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x1f]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x5b5734
cmp eax, 0x82f24137
je 0x5b5797
cmp eax, 0xb8cd7b43
jne 0x5b56f4
movzx ecx, byte [esi + 0x1f]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b56f4
cmp eax, 0xceb3811b
je 0x5b543d
cmp eax, 0x47b76182
jne 0x5b56f4
lea eax, [esi + 0x3c]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov edx, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x82f24137
mov edi, 0xceb3811b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x5b56f4
add dword [esi + 0x3c], 8
mov eax, 0x47b76182
jmp 0x5b56f4
mov dword [esi + 0xb0], 0xbe
lea ecx, [esi + 0x30]
push dword [esi + 8]
call fcn.0044f650
jmp 0x5b5808
test dl, dl
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x14]
je 0x5b57fd
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
mov ecx, dword [0x60aa78]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x60aa7c], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x5b5808
or dl, cl
je 0x5b5808
mov ecx, dword [edi]
mov dword [eax], ecx
mov ecx, dword [ebx]
mov dword [eax + 4], ecx
jmp 0x5b57c6
mov eax, dword [0x60aa98]
mov ecx, dword [0x60aa9c]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x3c]
cmp ecx, 0xa
setl byte [esi + 0xc]
mov eax, 0xb8cd7b43
cmp eax, 0xceb3811a
jg 0x5b5871
cmp eax, 0x82f24137
je 0x5b58cd
cmp eax, 0xb8cd7b43
jne 0x5b5831
movzx ecx, byte [esi + 0x3c]
movzx eax, byte [esi + 0xc]
mov edx, ecx
xor dl, al
mov edx, 0x82f24137
mov edi, 0x47b76182
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b5831
cmp eax, 0xceb3811b
je 0x5b51e6
cmp eax, 0x47b76182
jne 0x5b5831
lea eax, [esi + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
add dword [eax], 8
mov eax, dword [0x60aa98]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x82f24137
mov edi, 0xceb3811b
cmove eax, edi
cmp dword [0x60aa9c], 0xa
mov edx, 0x82f24137
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5b5831
add dword [esi + 0x24], 8
mov eax, 0x47b76182
jmp 0x5b5831
mov ecx, dword [esi + 0x2c]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
and ecx, eax
mov dword [esi + 0x28], ecx
cmp dword [esi + 0x28], 0
sete byte [esi + 0x24]
sete al
mov ebx, 0xd78bfc94
mov edx, 0x43b6ad13
cmove ebx, edx
cmp dword [esi + 0x20], 0xa
setl byte [esi + 4]
mov ecx, dword [esi + 8]
mov dword [esi + 0xc], ecx
setl cl
mov edi, 0xd78bfc94
cmovge ebx, edi
xor cl, al
cmovne ebx, edx
mov edx, 0x1c1ffc7c
jmp 0x5b5930
mov edx, 0x7df2dfc5
cmp edx, 0x43b6ad12
jg 0x5b5974
cmp edx, 0xd78bfc94
je 0x5b592b
cmp edx, 0x1c1ffc7c
jne 0x5b5930
movzx eax, byte [esi + 0x24]
movzx ecx, byte [esi + 4]
mov edx, eax
xor dl, cl
mov edi, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne edi, edx
test cl, cl
mov edx, edi
mov ecx, 0x7df2dfc5
cmovne edx, ecx
test al, al
cmove edx, edi
jmp 0x5b5930
cmp edx, 0x43b6ad13
je 0x5b4955
cmp edx, 0x7df2dfc5
jne 0x5b5930
mov edx, ebx
jmp 0x5b5930
mov eax, dword [0x60aa78]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
setne al
sete dl
cmp dword [0x60aa7c], 0xa
setge dh
setl ah
xor ah, dl
or dh, al
xor dh, 1
or dh, ah
mov byte [esi + 0x48], dh
mov eax, dword [esi + 0x30]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x34]
mov dword [esi + 0x20], eax
mov eax, dword [0x60aa80]
mov dword [esi + 0x2c], eax
mov eax, dword [0x60aa84]
mov dword [esi + 8], eax
je 0x5b6457
mov eax, dword [esi + 0x2c]
lea edx, [eax + 1]
imul edx, eax
mov edi, edx
xor edi, 0xfffffffe
mov eax, edi
and eax, edx
sete al
cmp dword [esi + 8], 0xa
setl ah
xor ah, al
mov ebx, 0xd78bfc94
mov eax, 0x43b6ad13
cmovne ebx, eax
and edi, edx
mov dword [esi + 0x28], edi
sete byte [esi + 0x24]
mov edx, ebx
cmove edx, eax
cmp dword [esi + 8], 0xa
setl byte [esi + 4]
mov eax, dword [esi + 0x10]
mov dword [esi + 0xc], eax
cmovge edx, ebx
mov edi, 0x1c1ffc7c
cmp edi, 0x43b6ad12
jg 0x5b5a73
cmp edi, 0xd78bfc94
je 0x5b5a87
cmp edi, 0x1c1ffc7c
jne 0x5b5a2e
movzx ebx, byte [esi + 0x24]
mov ah, byte [esi + 4]
mov al, bl
mov ecx, ebx
xor al, ah
mov ebx, 0xd78bfc94
mov edi, 0x7df2dfc5
cmovne ebx, edi
test ah, ah
mov edi, ebx
mov eax, 0x7df2dfc5
cmovne edi, eax
test cl, cl
cmove edi, ebx
jmp 0x5b5a2e
cmp edi, 0x43b6ad13
je 0x5b5a8e
cmp edi, 0x7df2dfc5
jne 0x5b5a2e
mov edi, edx
jmp 0x5b5a2e
mov edi, 0x7df2dfc5
jmp 0x5b5a2e
cmp byte [esi + 0x48], 0
je 0x5b6466
mov dword [esi + 8], 0
mov edi, dword [esi + 0x14]
mov eax, dword [esi + 0x18]
jmp 0x5b5ac0
mov eax, dword [esi + 8]
add eax, ecx
sub eax, dword [esi + 0x10]
mov dword [esi + 8], eax
mov eax, dword [esi + 4]
mov eax, dword [0x60aa88]
mov edi, dword [0x60aa8c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete cl
cmp edi, 0xa
setl ch
xor ch, cl
mov ebx, 0x8c874760
mov ecx, 0x4d68e82b
cmovne ebx, ecx
test eax, edx
sete byte [esi + 0x24]
mov ecx, ebx
mov eax, 0x4d68e82b
cmove ecx, eax
cmp edi, 0xa
setl byte [esi + 4]
cmovge ecx, ebx
mov eax, 0xbc4e5a6d
cmp eax, 0x36d61406
jle 0x5b5b1b
cmp eax, 0x36d61407
je 0x5b5b50
cmp eax, 0x4d68e82b
jne 0x5b5b04
jmp 0x5b5b5b
cmp eax, 0x8c874760
je 0x5b5b54
cmp eax, 0xbc4e5a6d
jne 0x5b5b04
movzx edx, byte [esi + 0x24]
movzx eax, byte [esi + 4]
mov ah, dl
xor ah, al
mov ebx, 0x8c874760
mov edi, 0x36d61407
cmovne ebx, edi
test al, al
mov eax, ebx
cmovne eax, edi
test dl, dl
cmove eax, ebx
jmp 0x5b5b04
mov eax, ecx
jmp 0x5b5b04
mov eax, 0x36d61407
jmp 0x5b5b04
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x20]
je 0x5b5d01
mov ecx, dword [0x60aa90]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
mov edx, dword [0x60aa94]
sete byte [esi + 0x3c]
sete bl
mov ecx, 0xdbbf45d4
mov edi, 0x89d6c0b5
cmove ecx, edi
cmp edx, 0xa
setl byte [esi + 0x24]
setl dl
mov edi, 0xdbbf45d4
cmovge ecx, edi
xor dl, bl
mov edx, 0x89d6c0b5
cmovne ecx, edx
mov edx, 0xaf530581
cmp edx, 0xdbbf45d3
jg 0x5b5bfa
cmp edx, 0x89d6c0b5
je 0x5b5c15
cmp edx, 0xaf530581
jne 0x5b5bb5
movzx ebx, byte [esi + 0x3c]
movzx edx, byte [esi + 0x24]
mov dh, bl
xor dh, dl
mov edi, 0xdbbf45d4
mov dword [esi + 0x10], eax
mov eax, 0x3983e5e3
cmovne edi, eax
test dl, dl
mov edx, edi
cmovne edx, eax
mov eax, dword [esi + 0x10]
test bl, bl
cmove edx, edi
jmp 0x5b5bb5
cmp edx, 0xdbbf45d4
je 0x5b5c0e
cmp edx, 0x3983e5e3
jne 0x5b5bb5
mov edx, ecx
jmp 0x5b5bb5
mov edx, 0x3983e5e3
jmp 0x5b5bb5
mov dword [esi + 4], eax
mov ecx, dword [esi + 4]
mov eax, dword [0x60aa98]
lea edx, [eax + 1]
imul edx, eax
mov eax, dword [ecx]
mov dword [esi + 0x10], eax
mov ecx, dword [ecx + 4]
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
mov edx, dword [0x60aa9c]
sete byte [esi + 0x3c]
cmp edx, 0xa
setl byte [esi + 0x24]
mov ebx, 0xb8cd7b43
cmp ebx, 0xceb3811a
jg 0x5b5c94
cmp ebx, 0x82f24137
je 0x5b5cf3
cmp ebx, 0xb8cd7b43
jne 0x5b5c4c
movzx edx, byte [esi + 0x3c]
movzx ebx, byte [esi + 0x24]
mov dh, bl
xor dh, dl
test bl, bl
mov ebx, 0x82f24137
mov edi, 0x47b76182
cmovne ebx, edi
test dl, dl
mov eax, 0x82f24137
cmove ebx, eax
test dh, dh
cmovne ebx, edi
jmp 0x5b5c4c
cmp ebx, 0xceb3811b
je 0x5b5aa7
cmp ebx, 0x47b76182
jne 0x5b5c4c
lea edx, [esi + 0xc]
mov dword [esi + 4], edx
mov edx, dword [esi + 4]
add dword [edx], 8
mov edx, dword [0x60aa98]
lea edi, [edx + 1]
imul edi, edx
mov edx, edi
xor edx, 0xfffffffe
test edx, edi
sete dl
mov ebx, 0x82f24137
mov eax, 0xceb3811b
cmove ebx, eax
cmp dword [0x60aa9c], 0xa
mov edi, 0x82f24137
cmovge ebx, edi
setl dh
xor dh, dl
cmovne ebx, eax
jmp 0x5b5c4c
add dword [esi + 0xc], 8
mov ebx, 0x47b76182
jmp 0x5b5c4c
cmp dword [esi + 8], 0x12345678
jne 0x5b5d14
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x5b5d3f
xor cl, al
je 0x5b5f0a
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b5da7
cmp eax, 0x892b3f0e
je 0x5b5e0b
cmp eax, 0xbb35c726
jne 0x5b5d67
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b5d67
cmp eax, 0x363212d3
je 0x5b5dc4
cmp eax, 0x41d9d43f
jne 0x5b5d67
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b5d67
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5b5d67
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b5e78
cmp eax, 0x892b3f0e
je 0x5b5edb
cmp eax, 0xbb35c726
jne 0x5b5e33
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b5e33
cmp eax, 0x363212d3
je 0x5b5e95
cmp eax, 0x41d9d43f
jne 0x5b5e33
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b5e33
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5b5e33
mov eax, dword [0x60aa78]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60aa7c], 0xa
setl cl
test cl, al
jne 0x5b60ab
xor cl, al
jne 0x5b60ab
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xbb35c726
jmp 0x5b5f7d
lea ecx, [esi + 0x30]
call fcn.00434d30
mov edx, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x41d9d43f
mov edi, 0x892b3f0e
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
cmp eax, 0x363212d2
jg 0x5b5fbe
cmp eax, 0x892b3f0e
je 0x5b5fdf
cmp eax, 0xbb35c726
jne 0x5b5f7d
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x41d9d43f
mov edi, 0x363212d3
cmovne eax, edi
test cl, cl
mov ecx, 0x41d9d43f
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b5f7d
cmp eax, 0x363212d3
je 0x5b5f35
cmp eax, 0x41d9d43f
jne 0x5b5f7d
lea ecx, [esi + 0x30]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b5f7d
mov eax, dword [0x60aaa0]
mov ecx, dword [0x60aaa4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0xbb35c726
cmp eax, 0x363212d2
jg 0x5b6047
cmp eax, 0x892b3f0e
je 0x5b5d3f
cmp eax, 0xbb35c726
jne 0x5b6007
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
mov edx, 0x41d9d43f
mov edi, 0x363212d3
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b6007
cmp eax, 0x363212d3
je 0x5b6064
cmp eax, 0x41d9d43f
jne 0x5b6007
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, 0x363212d3
jmp 0x5b6007
lea ecx, [esi + 0x60]
call fcn.00434d30
mov eax, dword [0x60aaa0]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x41d9d43f
mov edi, 0x892b3f0e
cmove eax, edi
cmp dword [0x60aaa4], 0xa
mov edx, 0x41d9d43f
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5b6007
mov eax, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea edx, [eax - 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x4c]
cmp ecx, 0xa
setl byte [esi + 0x30]
mov eax, 0x3def23ff
cmp eax, 0xde9169a
jg 0x5b60fa
cmp eax, 0x8e89d987
je 0x5b6185
cmp eax, 0xcc8e990
jne 0x5b60d4
mov word [esi + 0x40], 0x7a61
mov eax, 0xde9169b
jmp 0x5b60d4
cmp eax, 0xde9169b
je 0x5b6134
cmp eax, 0x3def23ff
jne 0x5b60d4
movzx ecx, byte [esi + 0x4c]
movzx eax, byte [esi + 0x30]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0xcc8e990
mov edi, 0xde9169b
cmovne eax, edi
test cl, cl
mov ecx, 0xcc8e990
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b60d4
lea eax, [esi + 0x40]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x60]
mov word [eax], 0x7a61
mov edx, dword [0x60a988]
mov ecx, dword [0x60a98c]
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
test edx, eax
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov edi, 0xcc8e990
mov ebx, 0x8e89d987
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x5b60d4
mov eax, dword [esi + 0x60]
sub esp, 4
movzx eax, byte [esi + 0x30]
mov byte [esp], al
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0043dd20
mov ecx, edi
call fcn.0040d170
mov dword [esi + 0xb0], 0xbf
mov dword [esi + 0x10], 0
jmp 0x5b61c8
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
cmp eax, 0x3e8
je 0x5b650e
movsx eax, byte [esi + 0x41]
movsx edx, byte [esi + 0x40]
mov dword [esi + 0xb0], 0xbf
lea ecx, [esi + 0x40]
push eax
push edx
lea eax, [esi + 0x24]
push eax
call fcn.00435510
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x60a994], 0xa
setl dl
test dl, cl
jne 0x5b6215
xor dl, cl
je 0x5cb1a6
movsx eax, al
lea ecx, [esi + 0x60]
push eax
call fcn.00436970
lea ecx, [esi + 0x60]
call fcn.005664d0
cmp byte [eax], 0x6f
je 0x5b62a4
mov eax, dword [0x60a990]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete dl
setne al
cmp dword [0x60a994], 0xa
setl ah
setge cl
cmp ah, dl
jne 0x5b625b
or cl, al
jne 0x5b6291
lea ecx, [esi + 0x60]
call fcn.005664d0
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete ch
cmp dword [0x60a994], 0xa
setge dl
setl dh
xor dh, ch
jne 0x5b629b
or dl, cl
je 0x5b629b
lea ecx, [esi + 0x60]
call fcn.005664d0
jmp 0x5b625b
cmp byte [eax], 0x75
jne 0x5b61b6
lea edi, [esi + 0x60]
mov ecx, edi
call fcn.0040d830
mov dword [esi + 0x4c], eax
mov ecx, edi
call fcn.0040d830
add eax, dword [esi + 0x70]
mov dword [esi + 8], eax
jmp 0x5b62c3
mov eax, dword [esi + 0x30]
mov eax, dword [0x60a998]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, dword [0x60a99c]
sete byte [esi + 4]
sete dl
mov eax, 0x4a293c83
mov ebx, 0x61c5fcf1
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x30]
setl cl
mov edi, 0x4a293c83
cmovge eax, edi
xor cl, dl
cmovne eax, ebx
mov ecx, 0x354728f5
cmp ecx, 0x4a293c82
jle 0x5b6325
cmp ecx, 0x4a293c83
je 0x5b635c
cmp ecx, 0x61c5fcf1
jne 0x5b630b
jmp 0x5b6367
cmp ecx, 0xb74ba074
je 0x5b6363
cmp ecx, 0x354728f5
jne 0x5b630b
movzx edx, byte [esi + 4]
movzx ecx, byte [esi + 0x30]
mov ch, dl
xor ch, cl
mov ebx, 0x4a293c83
mov edi, 0xb74ba074
cmovne ebx, edi
test cl, cl
mov ecx, ebx
cmovne ecx, edi
test dl, dl
cmove ecx, ebx
jmp 0x5b630b
mov ecx, 0xb74ba074
jmp 0x5b630b
mov ecx, eax
jmp 0x5b630b
mov ebx, dword [esi + 0x4c]
cmp ebx, dword [esi + 8]
je 0x5b61b6
movsx eax, byte [ebx]
push eax
call fcn.005de535
add esp, 4
mov ecx, eax
xor cl, 0xf5
and cl, al
mov byte [ebx], cl
mov eax, dword [0x60a9a0]
mov ecx, dword [0x60a9a4]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xc]
cmp ecx, 0xa
setl byte [esi + 4]
mov eax, 0xc2538ca0
cmp eax, 0x1ec364a7
jg 0x5b63cf
cmp eax, 0xc2538ca0
je 0x5b6428
cmp eax, 0xbc7d055
jne 0x5b63b0
inc dword [esi + 0x4c]
mov eax, 0x640d1264
jmp 0x5b63b0
cmp eax, 0x1ec364a8
je 0x5b62c0
cmp eax, 0x640d1264
jne 0x5b63b0
lea eax, [esi + 0x4c]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x30]
inc dword [eax]
mov eax, dword [0x60a9a0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xbc7d055
mov edi, 0x1ec364a8
cmove eax, edi
cmp dword [0x60a9a4], 0xa
mov edx, 0xbc7d055
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x5b63b0
movzx ecx, byte [esi + 0xc]
movzx eax, byte [esi + 4]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0xbc7d055
mov edi, 0x640d1264
cmovne eax, edi
test cl, cl
mov ecx, 0xbc7d055
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x5b63b0
mov eax, dword [esi + 0x2c]
lea edx, [eax - 1]
imul edx, eax
and edx, 1
mov dword [esi + 0x28], edx
mov edi, dword [esi + 0x28]
test edi, edi
sete al
mov ebx, dword [esi + 8]
cmp ebx, 0xa
setl dl
xor dl, al
mov eax, 0xd78bfc94
mov edx, 0x43b6ad13
cmovne eax, edx
test edi, edi
sete byte [esi + 0x24]
mov edi, eax
cmove edi, edx
cmp ebx, 0xa
setl byte [esi + 4]
mov edx, dword [esi + 0x10]
mov dword [esi + 0xc], edx
cmovge edi, eax
mov ebx, 0x1c1ffc7c
jmp 0x5b64ad
mov ebx, 0x7df2dfc5
cmp ebx, 0x43b6ad12
jg 0x5b64f6
cmp ebx, 0xd78bfc94
je 0x5b64a8
cmp ebx, 0x1c1ffc7c
jne 0x5b64ad
movzx eax, byte [esi + 0x24]
movzx edx, byte [esi + 4]
mov ah, al
xor ah, dl
test dl, dl
mov ebx, 0xd78bfc94
mov edx, 0x7df2dfc5
cmovne ebx, edx
mov ecx, 0x7df2dfc5
test al, al
mov edx, 0xd78bfc94
cmove ebx, edx
test ah, ah
cmovne ebx, ecx
jmp 0x5b64ad
cmp ebx, 0x43b6ad13
je 0x5b59df
cmp ebx, 0x7df2dfc5
jne 0x5b64ad
mov ebx, edi
jmp 0x5b64ad
mov eax, dword [0x60a990]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x60a994], 0xa
setl cl
test cl, al
jne 0x5b6539
xor cl, al
je 0x5b6649
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x5b657c
cmp eax, 0xcb7dce01
je 0x5b65b6
cmp eax, 0xf454cecc
jne 0x5b6562
jmp 0x5b6613
cmp eax, 0xb86c543
je 0x5b65c5
cmp eax, 0x1d50f87a
jne 0x5b6562
movzx ecx, byte [esi + 4]
movzx eax, byte [esi + 0x4c]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xcb7dce01
mov ebx, 0xb86c543
cmovne eax, ebx
test cl, cl
mov ecx, 0xcb7dce01
cmove eax, ecx
test dl, dl
cmovne eax, ebx
jmp 0x5b6562
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x5b6562
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, eax
add edi, 0xd7
mov eax, dword [0x60a9a8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xcb7dce01
mov ebx, 0xf454cecc
cmove eax, ebx
cmp dword [0x60a9ac], 0xa
mov edx, 0xcb7dce01
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x5b6562
mov dword [esi + 0x30], edi
mov eax, dword [esi + 0x30]
mov ecx, dword [0x60a990]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x60a994], 0xa
setl dl
test dl, cl
jne 0x5b6738
xor dl, cl
jne 0x5b6738
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
jmp 0x5b66cd
cmp eax, 0xb86c542
jg 0x5b66e4
cmp eax, 0xcb7dce01
je 0x5b671e
cmp eax, 0xb86c543
je 0x5b6674
cmp byte [eax], 0x31
jne 0x5b6842
mov eax, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 4]
cmp ecx, 0xa
setl byte [esi + 0x4c]
mov eax, 0x1d50f87a
cmp eax, 0xb86c542
jg 0x5b6784
cmp eax, 0xcb7dce01
je 0x5b67be
cmp eax, 0xf454cecc
jne 0x5b676a
cmp eax, 0xb86c543
je 0x5b67cd
cmp eax, 0x1d50f87a
jne 0x5b676a
lea ecx, [esi + 0x60]
call fcn.0040d830
mov eax, 0xb86c543
jmp 0x5b676a
lea ecx, [esi + 0x60]
call fcn.0040d830
mov edi, dword [0x60a9a8]
mov ecx, dword [0x60a9ac]
mov dword [esi + 8], ecx
lea edx, [edi + 1]
imul edx, edi
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
sete byte [esi + 0x10]
cmp ecx, 0xa
setl cl
xor cl, byte [esi + 0x10]
mov ecx, 0xcb7dce01
mov edi, 0xf454cecc
cmovne ecx, edi
mov edi, eax
test ebx, edx
mov eax, ecx
mov edx, 0xf454cecc
cmove eax, edx
cmp dword [esi + 8], 0xa
cmovge eax, ecx
add edi, 0x2d0
mov ebx, edi
jmp 0x5b676a
lea ecx, [esi + 0x60]
call fcn.0040f050
mov eax, dword [0x60d648]
mov ecx, dword [0x60d64c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x92]
cmp ecx, 0xa
setl byte [esi + 0x93]
mov eax, 0xae58765
cmp eax, 0xae58764
jg 0x5b6897
cmp eax, 0x95293c3e
je 0x5b7555
cmp eax, 0xb854ed74
jne 0x5b6879
cmp eax, 0xae58765
je 0x5b823e
cmp eax, 0x31f4da3c
jne 0x5b6879
mov edi, 0xa
jmp fcn.005b756a
movzx ecx, byte [esi + 0x92]
movzx eax, byte [esi + 0x93]
mov edx, ecx
xor dl, al
mov edx, 0x95293c3e
mov edi, 0x31f4da3c
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x5b6879
mov eax, dword [esi + 0x98]
mov dword [eax], 5
mov edi, dword [esi + 0x9c]
mov ecx, edi
push eax
call fcn.005cd360
push edi
call fcn.005cd220
add esp, 4
mov dword [esi + 0xb0], 0xffffffff
call fcn.00467080
mov eax, 0xe9b87c2
jmp 0x569a80
jmp 0x5cb000
jmp 0x5cb010
jmp 0x5cb020
jmp 0x5cb030
jmp 0x5cb040
jmp 0x5cb050
jmp 0x5cb060
jmp 0x5cb070
jmp 0x5cb080
jmp 0x5cb090
jmp 0x5cb0a0
jmp 0x5cb0b0
jmp 0x5cb0c0
jmp 0x5cb0d0
jmp 0x5cb0e0
jmp 0x5cb0f0
jmp 0x5cb100
jmp 0x5cb110
mov eax, dword [esi + 0xa8]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
jmp 0x5cb130
jmp 0x5cb140
jmp 0x5cb150
jmp 0x5cb160
jmp 0x5cb170
jmp 0x5cb180
jmp 0x5cb190
jmp 0x5cb1a0
jmp 0x5cb1a2
jmp 0x5cb1a4
jmp 0x5cb1a6
jmp 0x5cb1a8