Function at 0x4424c0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0x4a0
mov esi, esp
mov dword [esi + 0x478], ebp
mov dword [esi + 0x47c], esp
mov dword [esi + 0x488], 0xffffffff
lea eax, [esi + 0x480]
mov dword [esi + 0x484], 0x593a60
mov ecx, dword fs:[0]
mov dword [esi + 0x480], ecx
mov dword fs:[0], eax
mov dword [esi + 0x200], 1
mov dword [esi + 0x204], 0xa
mov dword [esi + 0x1e8], 0xf
mov dword [esi + 0x1ec], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor edi, edi
mov eax, dword [0x5cf58c]
lea ebx, [esi + 0x348]
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
cmp eax, 0xa
setl ah
setge al
cmp ah, cl
jne 0x442573
or al, dl
test al, 1
jne 0x442660
cmp edi, 0x63
ja 0x442672
mov dword [esi + 0x14], edi
mov eax, dword [esi + 0x1e8]
mov edx, dword [esi + 0x1ec]
mov dword [esi + 0x488], 0
lea ecx, [esi + 0x1e8]
push edx
push eax
push ebx
call fcn.0041de80
mov edx, dword [0x5cf588]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dh
cmp dword [0x5cf58c], 0xa
setge dl
setl bl
xor bl, dh
jne 0x4425d1
or dl, cl
test dl, 1
jne 0x442670
mov dword [esi + 0x230], eax
lea ecx, [esi + 0x200]
push dword [esi + 0x204]
push dword [esi + 0x200]
lea eax, [esi + 0x348]
push eax
call fcn.0041de80
mov dword [esi + 0x104], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x230]
push eax
lea eax, [esi + 0x104]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
lea ebx, [esi + 0x348]
mov edi, dword [esi + 0x14]
jne 0x442659
nop word cs:[eax + eax]
inc edi
test dl, dl
jne 0x442550
inc edi
jmp 0x442650
jmp 0x442660
jmp 0x442670
lea ecx, [esi + 0x230]
call fcn.00540a80
mov edi, dword [esi + 0x120]
mov eax, dword [esi + 0x124]
mov dword [esi + 0x6c], eax
cmp edi, eax
jne 0x4426e5
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
sete cl
cmp eax, 0xa
setl al
test cl, al
jne 0x442b12
xor cl, al
jne 0x442b12
nop word cs:[eax + eax]
jmp 0x4426d0
cmp edi, dword [esi + 0x6c]
je 0x4426a8
mov eax, dword [0x5cf590]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, dword [0x5cf594]
sete byte [esi + 0x74]
sete dl
mov eax, 0xbd723542
mov ebx, 0xd08af799
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0xec]
setl cl
mov ebx, 0xbd723542
cmovge eax, ebx
xor cl, dl
mov ecx, 0xd08af799
cmovne eax, ecx
mov ecx, 0x553a1bc1
mov dword [esi + 0x2c], edi
nop dword [eax + eax]
cmp ecx, 0xd08af798
jg 0x442760
cmp ecx, 0xb4e27a0f
je 0x44279d
cmp ecx, 0xbd723542
jne 0x442740
mov ecx, 0xb4e27a0f
jmp 0x442740
cmp ecx, 0xd08af799
je 0x4427b0
cmp ecx, 0x553a1bc1
jne 0x442740
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
mov edi, dword [esi + 0x2c]
jmp 0x442740
mov ecx, eax
jmp 0x442740
mov dword [esi + 0x104], edi
mov eax, dword [esi + 0x104]
mov edx, dword [esi + 0x230]
mov ebx, dword [esi + 0x234]
mov cl, 1
mov dword [esi + 0x34], ecx
mov dword [esi + 0x14], edx
mov dword [esi + 0x38], ebx
cmp edx, ebx
mov dword [esi + 0x18], eax
je 0x442a76
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov edx, dword [0x5cf58c]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete ch
cmp edx, 0xa
setge cl
setl dl
xor dl, ch
jne 0x442840
or cl, al
test cl, 1
jne 0x442965
jmp 0x442840
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x38]
jne 0x4427f0
jmp 0x442a73
mov eax, dword [0x5cf590]
lea ecx, [eax - 1]
imul ecx, eax
mov edx, dword [0x5cf594]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0x74]
sete cl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0xec]
setl dl
mov ebx, 0xbd723542
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
mov ecx, 0x553a1bc1
nop dword [eax]
cmp ecx, 0xd08af798
jg 0x4428b0
cmp ecx, 0xb4e27a0f
je 0x4428ef
cmp ecx, 0xbd723542
jne 0x442890
mov ecx, 0xb4e27a0f
jmp 0x442890
cmp ecx, 0xd08af799
je 0x442900
cmp ecx, 0x553a1bc1
jne 0x442890
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x442890
mov ecx, eax
jmp 0x442890
mov eax, dword [esi + 0x14]
mov dword [esi + 0x104], eax
mov edi, dword [esi + 0x104]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], edx
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x28], edx
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
mov edx, dword [0x5cf58c]
sete bl
cmp edx, 0xa
setl bh
test bh, bl
jne 0x442a50
xor bh, bl
jne 0x442a50
mov eax, dword [0x5cf590]
lea ecx, [eax - 1]
imul ecx, eax
mov edx, dword [0x5cf594]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0x74]
sete cl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0xec]
setl dl
mov ebx, 0xbd723542
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
mov ecx, 0x553a1bc1
jmp 0x4429c0
mov ecx, eax
nop word cs:[eax + eax]
cmp ecx, 0xd08af798
jg 0x4429e0
cmp ecx, 0xb4e27a0f
je 0x4429b3
cmp ecx, 0xbd723542
jne 0x4429c0
mov ecx, 0xb4e27a0f
jmp 0x4429c0
cmp ecx, 0xd08af799
je 0x442a20
cmp ecx, 0x553a1bc1
jne 0x4429c0
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x4429c0
mov eax, dword [esi + 0x14]
mov dword [esi + 0x104], eax
mov edi, dword [esi + 0x104]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x442840
mov ebx, dword [esi + 0x20]
mov ebx, dword [ebx]
cmp ebx, dword [eax]
jg 0x442820
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov dword [esi + 0x34], 0
mov edi, dword [esi + 0x2c]
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
setne dl
sete bl
cmp eax, 0xa
setge dh
setl bh
xor bh, bl
jne 0x442aa5
or dh, dl
jne 0x442b10
cmp byte [esi + 0x34], 0
je 0x442ada
mov dword [esi + 0x488], 1
lea ecx, [esi + 0x230]
push dword [esi + 0x18]
call fcn.00540ea0
mov edx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
mov edi, dword [esi + 0x2c]
test ecx, ecx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
lea ebx, [esi + 0x348]
jne 0x442b0b
nop word cs:[eax + eax]
add edi, 8
test dl, dl
jne 0x4426e0
add edi, 8
jmp 0x442b00
jmp 0x442b10
mov eax, dword [esi + 0x230]
mov ecx, dword [esi + 0x234]
mov dword [esi + 0x18], ecx
cmp eax, ecx
je 0x442c41
mov ecx, dword [0x5cf590]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
mov dword [esi + 0x1c], edx
mov dword [esi + 0x20], ecx
test ecx, edx
mov edx, 0xd08af799
mov ecx, 0xbd723542
cmove ecx, edx
sete bl
mov edi, dword [0x5cf594]
mov dword [esi + 0x28], edi
cmp edi, 0xa
mov edi, 0xbd723542
cmovge ecx, edi
setl bh
xor bh, bl
cmovne ecx, edx
mov dword [esi + 0x24], ecx
xor edi, edi
jmp 0x442b9d
mov dword [esi + 0x104], eax
mov ecx, dword [esi + 0x104]
add edi, dword [ecx + 4]
sub edi, dword [ecx]
add eax, 8
cmp eax, dword [esi + 0x18]
je 0x442c29
mov ecx, dword [esi + 0x20]
test dword [esi + 0x1c], ecx
sete byte [esi + 0x74]
cmp dword [esi + 0x28], 0xa
setl byte [esi + 0xec]
mov ebx, 0x553a1bc1
nop word [eax + eax]
cmp ebx, 0xd08af798
jg 0x442be0
cmp ebx, 0xb4e27a0f
je 0x442c24
cmp ebx, 0xbd723542
jne 0x442bc0
mov ebx, 0xb4e27a0f
jmp 0x442bc0
cmp ebx, 0xd08af799
je 0x442b80
cmp ebx, 0x553a1bc1
jne 0x442bc0
movzx ecx, byte [esi + 0x74]
mov dh, byte [esi + 0xec]
mov dl, cl
xor dl, dh
test dh, dh
mov ebx, 0xbd723542
mov dword [esi + 0x14], eax
mov eax, 0xb4e27a0f
cmovne ebx, eax
test cl, cl
mov ecx, 0xbd723542
cmove ebx, ecx
test dl, dl
cmovne ebx, eax
mov eax, dword [esi + 0x14]
jmp 0x442bc0
mov ebx, dword [esi + 0x24]
jmp 0x442bc0
cmp edi, 0x12345678
lea ebx, [esi + 0x348]
jne 0x442c41
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x230]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, dword [0x5cf598]
mov ecx, dword [0x5cf59c]
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 + 0x418]
mov eax, 0x72e26def
nop word cs:[eax + eax]
cmp eax, 0x65392562
jg 0x442e00
cmp eax, 0x97591152
je 0x442e46
cmp eax, 0xf486492b
jne 0x442c90
mov dword [esi + 0x200], 1
mov dword [esi + 0x204], 0xa
mov dword [esi + 0x1e8], 0xf
mov dword [esi + 0x1ec], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor edi, edi
mov eax, dword [0x5cf58c]
nop dword [eax]
lea edx, [ecx + 1]
imul edx, ecx
test dl, 1
sete cl
cmp eax, 0xa
setge al
setl ah
xor ah, cl
jne 0x442d13
or al, dl
test al, 1
jne 0x443ca0
cmp edi, 0x63
ja 0x442f9c
mov dword [esi + 0x14], edi
mov eax, dword [esi + 0x1e8]
mov edx, dword [esi + 0x1ec]
mov dword [esi + 0x488], 2
lea ecx, [esi + 0x1e8]
push edx
push eax
push ebx
call fcn.0041de80
mov edx, dword [0x5cf588]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dh
cmp dword [0x5cf58c], 0xa
setl bl
setge dl
cmp bl, dh
jne 0x442d71
or dl, cl
test dl, 1
jne 0x443cd0
mov dword [esi + 0x230], eax
lea ecx, [esi + 0x200]
push dword [esi + 0x204]
push dword [esi + 0x200]
lea eax, [esi + 0x348]
push eax
call fcn.0041de80
mov dword [esi + 0x104], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x230]
push eax
lea eax, [esi + 0x104]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
lea ebx, [esi + 0x348]
mov edi, dword [esi + 0x14]
jne 0x442df9
nop word cs:[eax + eax]
inc edi
test dl, dl
jne 0x442cf0
inc edi
jmp 0x442df0
cmp eax, 0x65392563
je 0x443d12
cmp eax, 0x72e26def
jne 0x442c90
movzx ecx, byte [esi + 0x94]
movzx eax, byte [esi + 0x418]
mov edx, ecx
xor dl, al
mov edx, 0x97591152
mov edi, 0xf486492b
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x442c90
mov dword [esi + 0x200], 1
mov dword [esi + 0x204], 0xa
mov dword [esi + 0x1e8], 0xf
mov dword [esi + 0x1ec], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor edi, edi
mov eax, dword [0x5cf58c]
nop word cs:[eax + eax]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp eax, 0xa
setl al
test al, cl
jne 0x442eb3
xor al, cl
je 0x443cb0
cmp edi, 0x63
ja 0x443510
mov dword [esi + 0x14], edi
mov eax, dword [esi + 0x1e8]
mov edx, dword [esi + 0x1ec]
mov dword [esi + 0x488], 4
lea ecx, [esi + 0x1e8]
push edx
push eax
push ebx
call fcn.0041de80
mov ecx, dword [0x5cf588]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x5cf58c], 0xa
setl dl
test dl, cl
jne 0x442f10
xor dl, cl
je 0x443cc0
mov dword [esi + 0x230], eax
lea ecx, [esi + 0x200]
push dword [esi + 0x204]
push dword [esi + 0x200]
lea eax, [esi + 0x348]
push eax
call fcn.0041de80
mov dword [esi + 0x104], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x230]
push eax
lea eax, [esi + 0x104]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
lea ebx, [esi + 0x348]
mov edi, dword [esi + 0x14]
jne 0x442f99
nop word cs:[eax + eax]
inc edi
test dl, dl
jne 0x442e90
inc edi
jmp 0x442f90
lea ecx, [esi + 0x230]
call fcn.00540a80
mov edi, dword [esi + 0x120]
mov eax, dword [esi + 0x124]
mov dword [esi + 0x8c], eax
cmp edi, eax
jne 0x4430f5
mov edx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea ecx, [edx - 1]
imul ecx, edx
and ecx, 1
test ecx, ecx
sete cl
cmp eax, 0xa
setl al
test cl, al
jne 0x442fec
xor cl, al
je 0x443d10
mov edi, dword [esi + 0x230]
mov eax, dword [esi + 0x234]
mov dword [esi + 0x18], eax
cmp edi, eax
je 0x443a82
mov ecx, dword [0x5cf590]
mov edx, dword [0x5cf594]
lea eax, [ecx - 1]
imul eax, ecx
and eax, 1
mov dword [esi + 0x20], eax
sete cl
mov ebx, 0xbd723542
mov eax, 0xd08af799
cmove ebx, eax
mov dword [esi + 0x1c], edx
cmp edx, 0xa
setl ch
mov edx, 0xbd723542
cmovge ebx, edx
xor ch, cl
cmovne ebx, eax
mov dword [esi + 0x24], ebx
xor ecx, ecx
jmp 0x443065
mov dword [esi + 0x104], edi
mov eax, dword [esi + 0x104]
add ecx, dword [eax + 4]
sub ecx, dword [eax]
add edi, 8
cmp edi, dword [esi + 0x18]
je 0x443a70
cmp dword [esi + 0x20], 0
sete byte [esi + 0x74]
cmp dword [esi + 0x1c], 0xa
setl byte [esi + 0xec]
mov ebx, 0x553a1bc1
nop dword [eax]
cmp ebx, 0xd08af798
jg 0x4430a0
cmp ebx, 0xb4e27a0f
je 0x4430e4
cmp ebx, 0xbd723542
jne 0x443080
mov ebx, 0xb4e27a0f
jmp 0x443080
cmp ebx, 0xd08af799
je 0x443048
cmp ebx, 0x553a1bc1
jne 0x443080
movzx eax, byte [esi + 0x74]
mov dh, byte [esi + 0xec]
mov dl, al
xor dl, dh
test dh, dh
mov ebx, 0xbd723542
mov dword [esi + 0x14], edi
mov edi, 0xb4e27a0f
cmovne ebx, edi
test al, al
mov eax, 0xbd723542
cmove ebx, eax
test dl, dl
cmovne ebx, edi
mov edi, dword [esi + 0x14]
jmp 0x443080
mov ebx, dword [esi + 0x24]
jmp 0x443080
cmp edi, dword [esi + 0x8c]
je 0x442fd5
mov dword [esi + 0x6c], edi
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x74]
mov eax, edi
cmove eax, ebx
mov ebx, dword [esi + 0x6c]
cmp ecx, 0xa
setl byte [esi + 0xec]
cmovge eax, edi
mov ecx, 0x553a1bc1
nop dword [eax]
cmp ecx, 0xd08af798
jg 0x443170
cmp ecx, 0xb4e27a0f
je 0x4431ad
cmp ecx, 0xbd723542
jne 0x443150
mov ecx, 0xb4e27a0f
jmp 0x443150
cmp ecx, 0xd08af799
je 0x4431b1
cmp ecx, 0x553a1bc1
jne 0x443150
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
mov ebx, dword [esi + 0x6c]
test dl, dl
cmove ecx, edi
jmp 0x443150
mov ecx, eax
jmp 0x443150
mov dword [esi + 0x104], ebx
mov edi, dword [esi + 0x104]
mov ecx, dword [esi + 0x230]
mov edx, dword [esi + 0x234]
mov al, 1
mov dword [esi + 0x70], eax
mov dword [esi + 0x14], ecx
mov dword [esi + 0x34], edx
cmp ecx, edx
je 0x443479
mov dword [esi + 0x18], edi
lea eax, [edi + 4]
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp eax, 0xa
setl al
test al, cl
jne 0x443240
xor al, cl
je 0x44336c
jmp 0x443240
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x34]
mov eax, dword [esi + 0x28]
jne 0x4431f0
jmp 0x443476
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x74]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0xec]
cmovge eax, edi
mov ecx, 0x553a1bc1
nop
cmp ecx, 0xd08af798
jg 0x4432b0
cmp ecx, 0xb4e27a0f
je 0x4432ef
cmp ecx, 0xbd723542
jne 0x443290
mov ecx, 0xb4e27a0f
jmp 0x443290
cmp ecx, 0xd08af799
je 0x443300
cmp ecx, 0x553a1bc1
jne 0x443290
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x443290
mov ecx, eax
jmp 0x443290
mov eax, dword [esi + 0x14]
mov dword [esi + 0x104], eax
mov edi, dword [esi + 0x104]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x38], eax
mov dword [esi + 0x20], edx
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x24], eax
mov dword [esi + 0x2c], edx
mov ecx, dword [0x5cf588]
lea ebx, [ecx + 1]
imul ebx, ecx
test bl, 1
sete dh
mov eax, dword [0x5cf58c]
mov dword [esi + 0x28], eax
cmp eax, 0xa
setl al
setge dl
cmp al, dh
jne 0x443450
or dl, bl
test dl, 1
je 0x443450
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x74]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0xec]
cmovge eax, edi
mov ecx, 0x553a1bc1
jmp 0x4433c0
mov ecx, eax
nop
cmp ecx, 0xd08af798
jg 0x4433e0
cmp ecx, 0xb4e27a0f
je 0x4433bc
cmp ecx, 0xbd723542
jne 0x4433c0
mov ecx, 0xb4e27a0f
jmp 0x4433c0
cmp ecx, 0xd08af799
je 0x443420
cmp ecx, 0x553a1bc1
jne 0x4433c0
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x4433c0
mov eax, dword [esi + 0x14]
mov dword [esi + 0x104], eax
mov edi, dword [esi + 0x104]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x443240
mov eax, dword [esi + 0x20]
mov eax, dword [eax]
mov edx, dword [esi + 0x24]
cmp eax, dword [edx]
jg 0x443220
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov dword [esi + 0x70], 0
mov edi, dword [esi + 0x18]
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
setne dl
sete bl
cmp eax, 0xa
setge dh
setl bh
xor bh, bl
jne 0x4434ac
or dh, dl
jne 0x443cf0
cmp byte [esi + 0x70], 0
je 0x4434dc
mov dword [esi + 0x488], 3
lea ecx, [esi + 0x230]
push edi
call fcn.00540ea0
mov edx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
test ecx, ecx
setne dl
cmp eax, 0xa
setge dh
mov ebx, edx
xor bl, dh
or dl, dh
xor dl, 1
or dl, bl
cmp dl, 1
mov edi, dword [esi + 0x6c]
jne 0x44350b
nop word [eax + eax]
add edi, 8
test dl, dl
jne 0x4430e9
add edi, 8
jmp 0x443500
lea ecx, [esi + 0x230]
call fcn.00540a80
mov edi, dword [esi + 0x120]
mov eax, dword [esi + 0x124]
mov dword [esi + 0x34], eax
cmp edi, eax
jne 0x443672
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
sete cl
cmp eax, 0xa
setl al
test cl, al
jne 0x443561
xor cl, al
je 0x443d00
mov eax, dword [esi + 0x230]
mov ecx, dword [esi + 0x234]
mov dword [esi + 0x18], ecx
cmp eax, ecx
je 0x443bb6
mov ecx, dword [0x5cf590]
mov edi, dword [0x5cf594]
lea edx, [ecx + 1]
imul edx, ecx
and edx, 1
mov dword [esi + 0x20], edx
sete cl
mov ebx, 0xbd723542
mov edx, 0xd08af799
cmove ebx, edx
mov dword [esi + 0x1c], edi
cmp edi, 0xa
setl ch
mov edi, 0xbd723542
cmovge ebx, edi
xor ch, cl
cmovne ebx, edx
mov dword [esi + 0x24], ebx
xor ecx, ecx
jmp 0x4435da
mov dword [esi + 0x104], eax
mov edx, dword [esi + 0x104]
add ecx, dword [edx + 4]
sub ecx, dword [edx]
add eax, 8
cmp eax, dword [esi + 0x18]
je 0x443ba4
cmp dword [esi + 0x20], 0
sete byte [esi + 0x74]
cmp dword [esi + 0x1c], 0xa
setl byte [esi + 0xec]
mov ebx, 0x553a1bc1
nop word cs:[eax + eax]
cmp ebx, 0xd08af798
jg 0x443620
cmp ebx, 0xb4e27a0f
je 0x443664
cmp ebx, 0xbd723542
jne 0x443600
mov ebx, 0xb4e27a0f
jmp 0x443600
cmp ebx, 0xd08af799
je 0x4435bd
cmp ebx, 0x553a1bc1
jne 0x443600
movzx edx, byte [esi + 0x74]
mov dh, byte [esi + 0xec]
mov ebx, edx
xor bl, dh
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test dh, dh
mov ebx, edi
mov dword [esi + 0x14], eax
mov eax, 0xb4e27a0f
cmovne ebx, eax
mov eax, dword [esi + 0x14]
test dl, dl
cmove ebx, edi
jmp 0x443600
mov ebx, dword [esi + 0x24]
jmp 0x443600
cmp edi, dword [esi + 0x34]
je 0x44354a
mov dword [esi + 0x2c], edi
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x74]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0xec]
cmovge eax, edi
mov edi, dword [esi + 0x2c]
mov ecx, 0x553a1bc1
nop word cs:[eax + eax]
cmp ecx, 0xd08af798
jg 0x4436f0
cmp ecx, 0xb4e27a0f
je 0x44372d
cmp ecx, 0xbd723542
jne 0x4436d0
mov ecx, 0xb4e27a0f
jmp 0x4436d0
cmp ecx, 0xd08af799
je 0x443731
cmp ecx, 0x553a1bc1
jne 0x4436d0
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
mov edi, dword [esi + 0x2c]
jmp 0x4436d0
mov ecx, eax
jmp 0x4436d0
mov dword [esi + 0x104], edi
mov eax, dword [esi + 0x104]
mov ecx, dword [esi + 0x230]
mov edx, dword [esi + 0x234]
mov bl, 1
mov dword [esi + 0x14], ecx
mov dword [esi + 0x38], edx
cmp ecx, edx
mov dword [esi + 0x18], eax
je 0x4439e6
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov edx, dword [0x5cf58c]
nop
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete al
cmp edx, 0xa
setl cl
test cl, al
jne 0x4437a0
xor cl, al
je 0x4438c5
nop word cs:[eax + eax]
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x74]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0xec]
cmovge eax, edx
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x443810
cmp ecx, 0xb4e27a0f
je 0x44384f
cmp ecx, 0xbd723542
jne 0x4437f0
mov ecx, 0xb4e27a0f
jmp 0x4437f0
cmp ecx, 0xd08af799
je 0x443860
cmp ecx, 0x553a1bc1
jne 0x4437f0
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x4437f0
mov ecx, eax
jmp 0x4437f0
mov eax, dword [esi + 0x14]
mov dword [esi + 0x104], eax
mov edi, dword [esi + 0x104]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], edx
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x28], edx
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
mov edx, dword [0x5cf58c]
sete bl
cmp edx, 0xa
setl bh
test bh, bl
jne 0x4439b0
xor bh, bl
jne 0x4439b0
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x74]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0xec]
cmovge eax, edx
mov ecx, 0x553a1bc1
jmp 0x443920
mov ecx, eax
nop dword [eax]
cmp ecx, 0xd08af798
jg 0x443940
cmp ecx, 0xb4e27a0f
je 0x443917
cmp ecx, 0xbd723542
jne 0x443920
mov ecx, 0xb4e27a0f
jmp 0x443920
cmp ecx, 0xd08af799
je 0x443980
cmp ecx, 0x553a1bc1
jne 0x443920
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0xec]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x443920
mov eax, dword [esi + 0x14]
mov dword [esi + 0x104], eax
mov edi, dword [esi + 0x104]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x4437a0
mov ebx, dword [esi + 0x20]
mov ebx, dword [ebx]
cmp ebx, dword [eax]
jle 0x4439d2
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x38]
jne 0x443770
mov edi, dword [esi + 0x2c]
mov bl, 1
jmp 0x4439e6
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov dword [edi + 4], eax
xor ebx, ebx
mov edi, dword [esi + 0x2c]
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x443a13
xor dh, dl
je 0x443ce0
test bl, bl
je 0x443a4a
mov dword [esi + 0x488], 5
lea ecx, [esi + 0x230]
push dword [esi + 0x18]
call fcn.00540ea0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
mov edi, dword [esi + 0x2c]
test ecx, ecx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
jne 0x443a6b
nop dword [eax]
add edi, 8
test dl, dl
jne 0x443669
add edi, 8
jmp 0x443a60
cmp ecx, 0x12345678
jne 0x443a82
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x230]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, dword [0x5cf5a0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, dword [0x5cf5a4]
sete byte [esi + 0x230]
sete dl
mov eax, 0x43bb2170
mov edi, 0x5b725506
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x120]
setl cl
mov ebx, 0x43bb2170
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x3407aa19
nop word cs:[eax + eax]
cmp ecx, 0x43bb216f
jle 0x443b0a
cmp ecx, 0x43bb2170
je 0x443b4c
cmp ecx, 0x5b725506
jne 0x443af0
jmp 0x443b57
cmp ecx, 0xffce4f15
je 0x443b53
cmp ecx, 0x3407aa19
jne 0x443af0
movzx edx, byte [esi + 0x230]
movzx ecx, byte [esi + 0x120]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0x43bb2170
mov ebx, 0xffce4f15
cmovne ecx, ebx
test dl, dl
mov edi, 0x43bb2170
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x443af0
mov ecx, 0xffce4f15
jmp 0x443af0
mov ecx, eax
jmp 0x443af0
mov edx, dword [0x5cf598]
mov ecx, dword [0x5cf59c]
mov dword [esi + 0x14], ecx
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
lea ebx, [esi + 0x348]
mov edi, 0x97591152
mov ecx, 0x65392563
cmovne edi, ecx
test edx, eax
mov eax, edi
cmove eax, ecx
cmp dword [esi + 0x14], 0xa
cmovge eax, edi
jmp 0x442c90
cmp ecx, 0x12345678
jne 0x443bb6
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x230]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, dword [0x5cf5a0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, dword [0x5cf5a4]
sete byte [esi + 0x230]
sete dl
mov eax, 0x43bb2170
mov edi, 0x5b725506
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x120]
setl cl
mov ebx, 0x43bb2170
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x3407aa19
lea ebx, [esi + 0x348]
cmp ecx, 0x43bb216f
jle 0x443c3a
cmp ecx, 0x43bb2170
je 0x443c81
cmp ecx, 0x5b725506
jne 0x443c20
jmp 0x443c8c
cmp ecx, 0xffce4f15
je 0x443c88
cmp ecx, 0x3407aa19
jne 0x443c20
movzx edx, byte [esi + 0x230]
movzx ecx, byte [esi + 0x120]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0x43bb2170
mov edi, 0xffce4f15
cmovne ecx, edi
test dl, dl
mov edi, 0x43bb2170
cmove ecx, edi
test dh, dh
mov edx, 0xffce4f15
cmovne ecx, edx
jmp 0x443c20
mov ecx, 0xffce4f15
jmp 0x443c20
mov ecx, eax
jmp 0x443c20
mov eax, 0xf486492b
jmp 0x442c90
jmp 0x443ca0
jmp 0x443cb0
jmp 0x443cc0
jmp 0x443cd0
jmp 0x443ce0
jmp 0x443cf0
jmp 0x443d00
jmp 0x443d10
mov eax, dword [0x5cf5a8]
mov ecx, dword [0x5cf5ac]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x104]
cmp ecx, 0xa
setl byte [esi + 0x230]
mov edi, 0x8382f484
mov edx, 0xb12102fb
mov ebx, 0x1be5140a
nop word [eax + eax]
cmp edi, 0xb12102fa
jle 0x443d80
cmp edi, 0xb12102fb
je 0x443df9
cmp edi, 0x1be5140a
jne 0x443d50
jmp 0x443e68
cmp edi, 0x8382f484
je 0x443e2f
cmp edi, 0x84e51c43
jne 0x443d50
lea eax, [esi + 0x200]
mov dword [esi + 0x120], eax
mov eax, dword [esi + 0x120]
mov ecx, 0x1f7ba238
mov edi, 0xf478c48b
mov dword [eax + 4], ecx
mov dword [eax], edi
mov ecx, 0x2f61b855
mov edi, 0xa3583a04
mov dword [eax + 0xc], ecx
mov dword [eax + 8], edi
mov eax, dword [0x5cf5a8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov edi, 0xb12102fb
cmove edi, ebx
cmp dword [0x5cf5ac], 0xa
cmovge edi, edx
setl cl
xor cl, al
cmovne edi, ebx
jmp 0x443d50
mov eax, 0x1f7ba238
mov ecx, 0xf478c48b
mov dword [esi + 0x204], eax
mov dword [esi + 0x200], ecx
mov eax, 0x2f61b855
mov ecx, 0xa3583a04
mov dword [esi + 0x20c], eax
mov dword [esi + 0x208], ecx
mov edi, 0x84e51c43
jmp 0x443d50
movzx ecx, byte [esi + 0x104]
mov bh, byte [esi + 0x230]
mov bl, cl
xor bl, bh
mov eax, 0xb12102fb
mov edx, 0x84e51c43
cmovne eax, edx
test bh, bh
mov ebx, 0x1be5140a
mov edi, eax
cmovne edi, edx
mov edx, 0xb12102fb
test cl, cl
cmove edi, eax
jmp 0x443d50
mov eax, 0x911aa5e7
mov edi, 0x1f439354
mov dword [esi + 0x6c], eax
mov ebx, 0xa3583a04
mov edx, 0x2f61b855
xor eax, eax
lea ecx, [esi + 0x230]
mov eax, dword [esi + 0x120]
mov dword [esi + 0x70], edi
mov dword [esi + 0x234], edi
mov eax, dword [esi + 0x6c]
mov dword [esi + 0x230], eax
mov dword [esi + 0x90], edx
mov dword [esi + 0x23c], edx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x238], ebx
vmovaps xmm0, xmmword [ecx]
mov eax, dword [0x5cf4c8]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0xec]
mov edx, 0x529938f9
mov eax, 0x3a5e4de9
cmove eax, edx
sete bl
mov ecx, dword [0x5cf4cc]
cmp ecx, 0xa
setl byte [esi + 0x104]
mov ecx, 0x3a5e4de9
cmovge eax, ecx
setl bh
xor bh, bl
cmovne eax, edx
vmovaps xmm1, xmmword [esi + 0x200]
vmovddup xmm2, qword [0x5b6eb0]
vandnps xmm3, xmm1, xmm2
vandnps xmm4, xmm0, xmm2
vandnps xmm1, xmm2, xmm1
vorps xmm1, xmm3, xmm1
vandnps xmm0, xmm2, xmm0
vorps xmm0, xmm4, xmm0
vxorps xmm0, xmm1, xmm0
mov edi, 0x9c60b94a
mov edx, 0x17b769ba
nop dword [eax + eax]
cmp edi, 0x3a5e4de8
jle 0x443f60
cmp edi, 0x3a5e4de9
je 0x443f74
cmp edi, 0x529938f9
jne 0x443f40
jmp 0x443fa7
cmp edi, 0x9c60b94a
je 0x443f7b
cmp edi, 0x17b769ba
jne 0x443f40
mov edi, eax
jmp 0x443f40
mov edi, 0x17b769ba
jmp 0x443f40
movzx ecx, byte [esi + 0xec]
mov bh, byte [esi + 0x104]
mov bl, cl
xor bl, bh
test bh, bh
mov edi, 0x3a5e4de9
cmovne edi, edx
test cl, cl
mov ecx, 0x3a5e4de9
cmove edi, ecx
test bl, bl
cmovne edi, edx
jmp 0x443f40
vmovaps xmmword [esi + 0x120], xmm0
vmovaps xmm0, xmmword [esi + 0x120]
vmovaps xmmword [esi + 0x200], xmm0
mov dword [esi + 0x488], 0xffffffff
lea ecx, [esi + 0x1e8]
lea eax, [esi + 0x200]
push eax
call fcn.00420e10
vmovddup xmm0, qword [0x5b6eb8]
vmovaps xmmword [esi + 0x430], xmm0
vbroadcastsd ymm0, qword [0x5b6f10]
vmovaps ymmword [esi + 0x440], ymm0
mov dword [esi + 0x488], 7
push 0x1bb
push 0x5555
lea eax, [esi + 0x104]
push eax
vzeroupper
call fcn.0043ff40
add esp, 0xc
cmp dword [esi + 0x114], 0
je 0x4495c9
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne cl
cmp dword [0x5cf5b4], 0xa
setge al
mov edx, eax
xor dl, cl
or al, cl
xor al, 1
or al, dl
mov byte [esi + 0x24], al
mov eax, dword [0x5cf4c8]
mov ecx, dword [0x5cf4cc]
mov dword [esi + 0x18], ecx
vmovaps xmm5, xmmword [esi + 0x430]
mov dword [esi + 0x28], eax
jne 0x4441b0
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
and eax, ecx
mov dword [esi + 0x20], eax
mov eax, 0xa22e91dd
mov ecx, 0x1f439354
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb0], eax
lea eax, [esi + 0x50]
xor ecx, ecx
mov edx, dword [esi + 0x8c]
mov dword [esi + 0xb8], edx
mov edi, dword [esi + 0x90]
mov dword [esi + 0xbc], edi
mov ecx, dword [esi + 0x70]
mov dword [esi + 0x54], ecx
mov ecx, dword [esi + 0x6c]
mov dword [esi + 0x50], ecx
mov dword [esi + 0x5c], edi
mov dword [esi + 0x58], edx
vmovaps xmm0, xmmword [eax]
cmp dword [esi + 0x20], 0
sete byte [esi + 0x3e]
sete al
mov edi, 0x3a5e4de9
mov edx, 0x529938f9
cmove edi, edx
cmp dword [esi + 0x18], 0xa
setl byte [esi + 0x3f]
vmovaps xmm1, xmmword [esi + 0xb0]
setl cl
vmovddup xmm2, qword [0x5b6ec0]
vandnps xmm3, xmm1, xmm2
vandnps xmm4, xmm0, xmm2
vandnps xmm1, xmm2, xmm1
vorps xmm1, xmm3, xmm1
vandnps xmm0, xmm2, xmm0
vorps xmm0, xmm4, xmm0
vxorps xmm0, xmm1, xmm0
mov ebx, 0x3a5e4de9
cmovge edi, ebx
xor cl, al
cmovne edi, edx
mov ecx, 0x9c60b94a
jmp 0x444160
movzx eax, byte [esi + 0x3e]
movzx ecx, byte [esi + 0x3f]
mov edx, eax
xor dl, cl
mov edx, 0x3a5e4de9
mov ebx, 0x17b769ba
cmovne edx, ebx
test cl, cl
mov ecx, edx
cmovne ecx, ebx
test al, al
cmove ecx, edx
nop dword [eax + eax]
cmp ecx, 0x3a5e4de8
jle 0x444180
cmp ecx, 0x3a5e4de9
je 0x444194
cmp ecx, 0x529938f9
jne 0x444160
jmp 0x44419b
cmp ecx, 0x9c60b94a
je 0x444136
cmp ecx, 0x17b769ba
jne 0x444160
mov ecx, edi
jmp 0x444160
mov ecx, 0x17b769ba
jmp 0x444160
vmovaps xmmword [esi + 0x40], xmm0
vmovaps xmm0, xmmword [esi + 0x40]
vmovaps xmmword [esi + 0xb0], xmm0
mov eax, dword [esi + 0x28]
lea edi, [eax - 1]
imul edi, eax
mov ecx, edi
and ecx, 1
sete cl
cmp dword [esi + 0x18], 0xa
setl ah
xor ah, cl
mov edx, 0x3a5e4de9
mov eax, 0x529938f9
cmovne edx, eax
mov dword [esi + 0x1c], edx
mov ecx, edi
and ecx, 1
cmove edx, eax
mov dword [esi + 0x14], edx
mov edx, 0xa22e91dd
mov eax, 0x1f439354
mov dword [esi + 0xb4], eax
mov dword [esi + 0xb0], edx
lea eax, [esi + 0x50]
xor edx, edx
mov ebx, dword [esi + 0x8c]
mov dword [esi + 0xb8], ebx
mov edx, dword [esi + 0x90]
mov dword [esi + 0xbc], edx
mov ecx, dword [esi + 0x6c]
mov dword [esi + 0x50], ecx
mov ecx, dword [esi + 0x70]
mov dword [esi + 0x54], ecx
mov dword [esi + 0x58], ebx
mov dword [esi + 0x5c], edx
vmovaps xmm0, xmmword [eax]
and edi, 1
mov dword [esi + 0x20], edi
sete byte [esi + 0x3e]
cmp dword [esi + 0x18], 0xa
setl byte [esi + 0x3f]
vmovaps xmm1, xmmword [esi + 0xb0]
vandnps xmm2, xmm1, xmm5
vandnps xmm3, xmm0, xmm5
vandnps xmm1, xmm5, xmm1
vorps xmm1, xmm2, xmm1
vandnps xmm0, xmm5, xmm0
vorps xmm0, xmm3, xmm0
vxorps xmm0, xmm1, xmm0
mov eax, dword [esi + 0x14]
cmovge eax, dword [esi + 0x1c]
mov dword [esi + 0x14], eax
mov ebx, 0x9c60b94a
lea ecx, [esi + 0xec]
nop word cs:[eax + eax]
cmp ebx, 0x3a5e4de8
jle 0x4442a0
cmp ebx, 0x3a5e4de9
je 0x4442b5
cmp ebx, 0x529938f9
jne 0x444280
jmp 0x4442e3
cmp ebx, 0x9c60b94a
je 0x4442bc
cmp ebx, 0x17b769ba
jne 0x444280
mov ebx, dword [esi + 0x14]
jmp 0x444280
mov ebx, 0x17b769ba
jmp 0x444280
movzx eax, byte [esi + 0x3e]
movzx edx, byte [esi + 0x3f]
mov ah, al
xor ah, dl
mov ecx, 0x3a5e4de9
mov edi, 0x17b769ba
cmovne ecx, edi
test dl, dl
mov ebx, ecx
cmovne ebx, edi
test al, al
cmove ebx, ecx
jmp 0x444270
vmovaps xmmword [esi + 0x40], xmm0
vmovaps xmm0, xmmword [esi + 0x40]
vmovaps xmmword [esi + 0xb0], xmm0
cmp byte [esi + 0x24], 0
je 0x44408a
mov dword [esi + 0x488], 8
lea eax, [esi + 0xb0]
push eax
lea eax, [esi + 0x104]
push eax
push ecx
call fcn.0044ae00
add esp, 0xc
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x44434c
xor cl, al
je 0x44a5c0
mov dword [esi + 0x488], 9
lea ecx, [esi + 0x11c]
lea eax, [esi + 0xec]
push eax
call fcn.00441570
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete dl
cmp dword [0x5cf5b4], 0xa
setge cl
setl ah
xor ah, dl
jne 0x44439b
or cl, al
jne 0x444cbd
jmp 0x44439b
lea ecx, [esi + 0xec]
vzeroupper
call fcn.0040ed30
mov dword [esi + 0x378], esp
mov edx, 0x1f20933d
mov eax, dword [0x5cf5b8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, 0x9157a5bb
mov dword [esi + 0x20], eax
mov dword [esi + 0x1c], edx
mov edx, 0x2f0eb826
mov eax, 0xa3373a76
mov dword [esi + 0x28], edx
mov dword [esi + 0x24], eax
mov edx, 0x91308726
mov eax, 0x917ddf77
mov dword [esi + 0x2c], edx
mov dword [esi + 0x38], eax
mov edx, 0x94fea477
mov eax, 0x705e7e77
mov dword [esi + 0x30], edx
mov dword [esi + 0x34], eax
mov edx, 0xf9a6114c
mov eax, 0x8e56839c
mov dword [esi + 0x398], edx
mov dword [esi + 0xac], eax
mov edx, 0x658b68f5
mov eax, 0x1f8db881
mov dword [esi + 0x390], edx
mov dword [esi + 0x394], eax
mov edx, 0x81ff7907
mov eax, 0xd41b2c58
mov dword [esi + 0x384], edx
mov dword [esi + 0x388], eax
mov ebx, 0x59bd57ea
mov eax, 0x94b742f9
mov dword [esi + 0x37c], eax
mov edx, 0x93739c2c
mov eax, 0x2be9daca
mov dword [esi + 0x38c], edx
mov dword [esi + 0x68], eax
mov eax, 0x5bf6382d
mov edx, 0x4ae9d9cc
mov dword [esi + 0x18], edx
mov dword [esi + 0x14], eax
mov edx, ecx
xor edx, 0xfffffffe
test edx, ecx
sete byte [esi + 0xe5]
mov eax, dword [0x5cf5bc]
mov dword [esi + 0x380], eax
cmp eax, 0xa
setl ah
xor ah, byte [esi + 0xe5]
mov eax, 0x708fa04c
mov edi, 0xe8089bcc
cmovne eax, edi
test edx, ecx
mov ecx, dword [esi + 0x1c]
mov dword [esi + 0x124], ecx
mov ecx, dword [esi + 0x20]
mov dword [esi + 0x120], ecx
mov ecx, dword [esi + 0x28]
mov dword [esi + 0x12c], ecx
mov ecx, dword [esi + 0x24]
mov dword [esi + 0x128], ecx
mov ecx, dword [esi + 0x2c]
mov dword [esi + 0x134], ecx
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x130], ecx
mov ecx, dword [esi + 0x30]
mov dword [esi + 0x13c], ecx
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x138], ecx
mov ecx, dword [esi + 0x398]
mov dword [esi + 0x144], ecx
mov ecx, dword [esi + 0xac]
mov dword [esi + 0x140], ecx
mov ecx, dword [esi + 0x390]
mov dword [esi + 0x14c], ecx
mov ecx, dword [esi + 0x394]
mov dword [esi + 0x148], ecx
mov ecx, dword [esi + 0x384]
mov dword [esi + 0x154], ecx
mov ecx, dword [esi + 0x388]
mov dword [esi + 0x150], ecx
sete byte [esi + 0x3e]
mov dword [esi + 0x15c], ebx
mov ecx, dword [esi + 0x37c]
mov dword [esi + 0x158], ecx
mov ecx, eax
cmove ecx, edi
mov edx, dword [esi + 0x38c]
mov dword [esi + 0x164], edx
cmp dword [esi + 0x380], 0xa
cmovge ecx, eax
mov dword [esi + 0x34], ecx
mov eax, dword [esi + 0x68]
mov dword [esi + 0x160], eax
setl byte [esi + 0x3f]
mov eax, dword [0x5cf4c8]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and eax, 1
sete al
mov edi, dword [0x5cf4cc]
cmp edi, 0xa
setl cl
xor cl, al
mov eax, 0x3a5e4de9
mov ecx, 0x529938f9
cmovne eax, ecx
and edx, 1
mov dword [esi + 0x1c], edx
mov edx, eax
cmove edx, ecx
mov dword [esi + 0x20], edi
cmp edi, 0xa
cmovge edx, eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x14]
mov dword [esi + 0x16c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x168], eax
vmovaps ymm0, ymmword [esi + 0x120]
vmovaps ymm1, ymmword [esi + 0x140]
vmovaps xmm2, xmmword [esi + 0x160]
mov eax, 0x56c0bc0c
nop dword [eax + eax]
cmp eax, 0x56c0bc0b
jg 0x444610
cmp eax, 0x8fe954d9
je 0x444649
cmp eax, 0xe8089bcc
jne 0x4445f0
jmp 0x444c7a
cmp eax, 0x708fa04c
je 0x4447eb
cmp eax, 0x56c0bc0c
jne 0x4445f0
movzx ecx, byte [esi + 0x3e]
movzx eax, byte [esi + 0x3f]
mov edx, ecx
xor dl, al
mov edx, 0x708fa04c
mov edi, 0x8fe954d9
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x4445f0
push eax
sub esp, 0x4c
mov ecx, esp
and ecx, 0xffffffe0
mov esp, ecx
mov eax, dword [esi + 0x70]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x6c]
mov dword [ecx], eax
mov eax, dword [esi + 0x90]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x8c]
mov dword [ecx + 8], eax
mov eax, 0x9167877a
mov edx, 0x9109df11
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x10], edx
mov eax, 0x9491a413
mov edx, 0x70307e1e
mov dword [ecx + 0x1c], eax
mov dword [ecx + 0x18], edx
mov eax, 0xf9d51110
mov edx, 0x8e2583eb
mov dword [ecx + 0x24], eax
mov dword [ecx + 0x20], edx
mov eax, 0x65ee6881
mov edx, 0x1ffeb8f8
mov dword [ecx + 0x2c], eax
mov dword [ecx + 0x28], edx
mov eax, 0x818c7966
mov edx, 0xd46f2c35
mov dword [ecx + 0x34], eax
mov dword [ecx + 0x30], edx
mov eax, 0x59c5578f
mov edx, 0x94994292
mov dword [ecx + 0x3c], eax
mov dword [ecx + 0x38], edx
mov eax, 0x93739c2c
mov edx, 0x2be9daaf
mov dword [ecx + 0x44], eax
mov dword [ecx + 0x40], edx
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x4c], eax
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x48], eax
xor eax, eax
vmovaps ymm3, ymmword [ecx]
mov eax, dword [0x5cf4d8]
mov ebx, dword [0x5cf4dc]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
mov dword [esi + 0x2c], eax
mov dword [esi + 0x30], edx
test eax, edx
sete byte [esi + 0x50]
mov eax, 0xfea9a5a5
mov edx, 0x5b56981
cmove eax, edx
sete dl
mov dword [esi + 0x38], ebx
cmp ebx, 0xa
setl byte [esi + 0x40]
mov ebx, 0xfea9a5a5
cmovge eax, ebx
setl dh
xor dh, dl
vmovaps ymm7, ymmword [esi + 0x440]
vandnps ymm4, ymm0, ymm7
vandnps ymm5, ymm3, ymm7
vandnps ymm6, ymm7, ymm0
vorps ymm4, ymm4, ymm6
vandnps ymm3, ymm7, ymm3
vorps ymm3, ymm5, ymm3
vxorps ymm3, ymm4, ymm3
mov edx, 0x5b56981
cmovne eax, edx
mov dword [esi + 0x28], eax
mov edx, 0x66f0faa2
cmp edx, 0x27b3207c
jg 0x444790
cmp edx, 0xfea9a5a5
je 0x4447c7
cmp edx, 0x5b56981
jne 0x444770
jmp 0x444990
cmp edx, 0x27b3207d
je 0x4447da
cmp edx, 0x66f0faa2
jne 0x444770
movzx eax, byte [esi + 0x50]
movzx edx, byte [esi + 0x40]
mov ah, al
xor ah, dl
mov ebx, 0xfea9a5a5
mov edi, 0x27b3207d
cmovne ebx, edi
test dl, dl
mov edx, ebx
cmovne edx, edi
test al, al
cmove edx, ebx
jmp 0x444770
mov edx, 0x27b3207d
vmovaps ymmword [esi + 0x120], ymm3
vmovaps ymm0, ymm3
jmp 0x444770
vmovaps ymmword [esi + 0x120], ymm3
vmovaps ymm0, ymm3
mov edx, dword [esi + 0x28]
jmp 0x444770
push eax
sub esp, 0x4c
mov ecx, esp
and ecx, 0xffffffe0
mov esp, ecx
mov eax, dword [esi + 0x70]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x6c]
mov dword [ecx], eax
mov eax, dword [esi + 0x90]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x8c]
mov dword [ecx + 8], eax
mov eax, 0x9167877a
mov edx, 0x9109df11
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x10], edx
mov eax, 0x9491a413
mov edx, 0x70307e1e
mov dword [ecx + 0x1c], eax
mov dword [ecx + 0x18], edx
mov eax, 0xf9d51110
mov edx, 0x8e2583eb
mov dword [ecx + 0x24], eax
mov dword [ecx + 0x20], edx
mov eax, 0x65ee6881
mov edx, 0x1ffeb8f8
mov dword [ecx + 0x2c], eax
mov dword [ecx + 0x28], edx
mov eax, 0x818c7966
mov edx, 0xd46f2c35
mov dword [ecx + 0x34], eax
mov dword [ecx + 0x30], edx
mov eax, 0x59c5578f
mov edx, 0x94994292
mov dword [ecx + 0x3c], eax
mov dword [ecx + 0x38], edx
mov eax, 0x93739c2c
mov edx, 0x2be9daaf
mov dword [ecx + 0x44], eax
mov dword [ecx + 0x40], edx
mov edx, dword [0x5cf4d8]
mov edi, dword [0x5cf4dc]
mov dword [esi + 0x38], edi
lea eax, [edx + 1]
imul eax, edx
mov edx, eax
xor edx, 0xfffffffe
mov dword [esi + 0x2c], edx
test edx, eax
sete dl
cmp edi, 0xa
setl dh
xor dh, dl
mov edx, 0xfea9a5a5
mov edi, 0x5b56981
cmovne edx, edi
mov ebx, dword [esi + 0x14]
mov dword [ecx + 0x4c], ebx
test dword [esi + 0x2c], eax
mov ebx, edx
cmove ebx, edi
mov edi, dword [esi + 0x18]
mov dword [ecx + 0x48], edi
xor edi, edi
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x2c]
test edi, eax
mov eax, edi
mov dword [esi + 0x68], ecx
vmovaps ymm3, ymmword [ecx]
sete byte [esi + 0x50]
cmp dword [esi + 0x38], 0xa
cmovge ebx, edx
mov dword [esi + 0x28], ebx
vandnps ymm4, ymm0, ymm3
vandnps ymm3, ymm3, ymm0
vorps ymm3, ymm4, ymm3
setl byte [esi + 0x40]
mov edx, 0x66f0faa2
nop word cs:[eax + eax]
cmp edx, 0x27b3207c
jg 0x444930
cmp edx, 0xfea9a5a5
je 0x44496c
cmp edx, 0x5b56981
jne 0x444910
jmp 0x444a39
cmp edx, 0x27b3207d
je 0x44497f
cmp edx, 0x66f0faa2
jne 0x444910
movzx ebx, byte [esi + 0x50]
movzx edx, byte [esi + 0x40]
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0xfea9a5a5
mov ecx, 0x27b3207d
cmovne edx, ecx
test bl, bl
mov edi, 0xfea9a5a5
cmove edx, edi
test bh, bh
cmovne edx, ecx
jmp 0x444910
mov edx, 0x27b3207d
vmovaps ymmword [esi + 0x120], ymm3
vmovaps ymm0, ymm3
jmp 0x444910
vmovaps ymmword [esi + 0x120], ymm3
vmovaps ymm0, ymm3
mov edx, dword [esi + 0x28]
jmp 0x444910
mov eax, dword [esi + 0x30]
test dword [esi + 0x2c], eax
vmovaps ymm3, ymmword [ecx + 0x20]
sete byte [esi + 0x50]
cmp dword [esi + 0x38], 0xa
vandnps ymm4, ymm3, ymm1
vandnps ymm3, ymm1, ymm3
vorps ymm3, ymm4, ymm3
setl byte [esi + 0x40]
mov eax, 0x66f0faa2
nop dword [eax + eax]
cmp eax, 0x27b3207c
jg 0x4449e0
cmp eax, 0xfea9a5a5
je 0x444a15
cmp eax, 0x5b56981
jne 0x4449c0
jmp 0x444afe
cmp eax, 0x27b3207d
je 0x444a28
cmp eax, 0x66f0faa2
jne 0x4449c0
movzx edx, byte [esi + 0x50]
movzx eax, byte [esi + 0x40]
mov ah, dl
xor ah, al
mov edi, 0xfea9a5a5
mov ebx, 0x27b3207d
cmovne edi, ebx
test al, al
mov eax, edi
cmovne eax, ebx
test dl, dl
cmove eax, edi
jmp 0x4449c0
mov eax, 0x27b3207d
vmovaps ymmword [esi + 0x140], ymm3
vmovaps ymm1, ymm3
jmp 0x4449c0
vmovaps ymmword [esi + 0x140], ymm3
vmovaps ymm1, ymm3
mov eax, dword [esi + 0x28]
jmp 0x4449c0
test dword [esi + 0x30], eax
mov ecx, dword [esi + 0x68]
vmovaps ymm3, ymmword [ecx + 0x20]
sete byte [esi + 0x50]
cmp dword [esi + 0x38], 0xa
vbroadcastsd ymm4, qword [0x5b6ec8]
vandnps ymm5, ymm3, ymm4
vandnps ymm6, ymm1, ymm4
vandnps ymm3, ymm4, ymm3
vorps ymm3, ymm5, ymm3
vandnps ymm4, ymm4, ymm1
vorps ymm4, ymm6, ymm4
vxorps ymm3, ymm3, ymm4
setl byte [esi + 0x40]
mov eax, 0x66f0faa2
nop word [eax + eax]
cmp eax, 0x27b3207c
jg 0x444aa0
cmp eax, 0xfea9a5a5
je 0x444ada
cmp eax, 0x5b56981
jne 0x444a80
jmp 0x444b94
cmp eax, 0x27b3207d
je 0x444aed
cmp eax, 0x66f0faa2
jne 0x444a80
movzx edx, byte [esi + 0x50]
movzx eax, byte [esi + 0x40]
mov dh, dl
xor dh, al
test al, al
mov eax, 0xfea9a5a5
mov ebx, 0x27b3207d
cmovne eax, ebx
test dl, dl
mov edi, 0xfea9a5a5
cmove eax, edi
test dh, dh
cmovne eax, ebx
jmp 0x444a80
mov eax, 0x27b3207d
vmovaps ymmword [esi + 0x140], ymm3
vmovaps ymm1, ymm3
jmp 0x444a80
vmovaps ymmword [esi + 0x140], ymm3
vmovaps ymm1, ymm3
mov eax, dword [esi + 0x28]
jmp 0x444a80
cmp dword [esi + 0x1c], 0
vmovaps xmm3, xmmword [ecx + 0x40]
sete byte [esi + 0xb0]
cmp dword [esi + 0x20], 0xa
setl byte [esi + 0x50]
vandnps xmm4, xmm3, xmm2
vandnps xmm2, xmm2, xmm3
vorps xmm2, xmm4, xmm2
mov eax, 0x9c60b94a
nop word [eax + eax]
cmp eax, 0x3a5e4de8
jle 0x444b50
cmp eax, 0x3a5e4de9
je 0x444b63
cmp eax, 0x529938f9
jne 0x444b30
jmp 0x444c44
cmp eax, 0x9c60b94a
je 0x444b6a
cmp eax, 0x17b769ba
jne 0x444b30
mov eax, dword [esi + 0x24]
jmp 0x444b30
mov eax, 0x17b769ba
jmp 0x444b30
movzx ecx, byte [esi + 0xb0]
movzx eax, byte [esi + 0x50]
mov edx, ecx
xor dl, al
mov edx, 0x3a5e4de9
mov edi, 0x17b769ba
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x444b30
cmp dword [esi + 0x1c], 0
vmovaps xmm3, xmmword [ecx + 0x40]
sete byte [esi + 0xb0]
cmp dword [esi + 0x20], 0xa
setl byte [esi + 0x50]
vmovddup xmm4, qword [0x5b6ed0]
vandnps xmm5, xmm3, xmm4
vandnps xmm6, xmm2, xmm4
vandnps xmm3, xmm4, xmm3
vorps xmm3, xmm5, xmm3
vandnps xmm2, xmm4, xmm2
vorps xmm2, xmm6, xmm2
vxorps xmm2, xmm3, xmm2
mov eax, 0x9c60b94a
nop word cs:[eax + eax]
cmp eax, 0x3a5e4de8
jle 0x444c00
cmp eax, 0x3a5e4de9
je 0x444c13
cmp eax, 0x529938f9
jne 0x444be0
jmp 0x444c5e
cmp eax, 0x9c60b94a
je 0x444c1a
cmp eax, 0x17b769ba
jne 0x444be0
mov eax, dword [esi + 0x24]
jmp 0x444be0
mov eax, 0x17b769ba
jmp 0x444be0
movzx ecx, byte [esi + 0xb0]
movzx eax, byte [esi + 0x50]
mov edx, ecx
xor dl, al
mov edx, 0x3a5e4de9
mov edi, 0x17b769ba
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x444be0
vmovaps xmmword [esi + 0x40], xmm2
vmovaps xmm2, xmmword [esi + 0x40]
vmovaps xmmword [esi + 0x160], xmm2
mov eax, dword [esi + 0x34]
jmp 0x4445f0
vmovaps xmmword [esi + 0x40], xmm2
vmovaps xmm2, xmmword [esi + 0x40]
vmovaps xmmword [esi + 0x160], xmm2
mov eax, 0x8fe954d9
jmp 0x4445f0
lea eax, [esi + 0x120]
mov dword [esi + 0x40], eax
mov edi, dword [esi + 0x40]
mov esp, dword [esi + 0x378]
mov ecx, dword [0x5cf5b0]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x5cf5b4], 0xa
setge cl
setl ch
xor ch, dl
jne 0x445547
or cl, al
test cl, 1
je 0x445547
lea ecx, [esi + 0xec]
vzeroupper
call fcn.0040ed30
mov dword [esi + 0x30], esp
mov eax, 0x1f20933d
mov ecx, 0x9157a5bb
mov dword [esi + 0x124], eax
mov dword [esi + 0x120], ecx
mov eax, 0x2f0eb826
mov ecx, 0xa3373a76
mov dword [esi + 0x12c], eax
mov dword [esi + 0x128], ecx
mov eax, 0x91308726
mov ecx, 0x917ddf77
mov dword [esi + 0x134], eax
mov dword [esi + 0x130], ecx
mov eax, 0x94fea477
mov ecx, 0x705e7e77
mov dword [esi + 0x13c], eax
mov dword [esi + 0x138], ecx
mov eax, 0xf9a6114c
mov ecx, 0x8e56839c
mov dword [esi + 0x144], eax
mov dword [esi + 0x140], ecx
mov eax, 0x658b68f5
mov ecx, 0x1f8db881
mov dword [esi + 0x14c], eax
mov dword [esi + 0x148], ecx
mov eax, 0x81ff7907
mov ecx, 0xd41b2c58
mov dword [esi + 0x154], eax
mov dword [esi + 0x150], ecx
mov eax, 0x59bd57ea
mov ecx, dword [0x5cf5b8]
lea edi, [ecx + 1]
imul edi, ecx
mov ebx, 0x94b742f9
mov dword [esi + 0x20], eax
mov edx, 0x93739c2c
mov eax, 0x2be9daca
mov dword [esi + 0x1c], eax
mov eax, 0x5bf6382d
mov ecx, 0x4ae9d9cc
mov dword [esi + 0x18], ecx
mov dword [esi + 0x14], eax
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
sete cl
mov eax, dword [0x5cf5bc]
mov dword [esi + 0x24], eax
cmp eax, 0xa
setl al
xor al, cl
mov eax, 0x708fa04c
mov ecx, 0xe8089bcc
cmovne eax, ecx
cmp edi, 0xffffffff
sete byte [esi + 0x3e]
mov ecx, dword [esi + 0x20]
mov dword [esi + 0x15c], ecx
mov dword [esi + 0x158], ebx
mov edi, eax
mov ecx, 0xe8089bcc
cmove edi, ecx
mov dword [esi + 0x164], edx
cmp dword [esi + 0x24], 0xa
cmovge edi, eax
mov dword [esi + 0x68], edi
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x160], eax
setl byte [esi + 0x3f]
mov eax, dword [0x5cf4c8]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
and eax, 1
sete al
mov edi, dword [0x5cf4cc]
cmp edi, 0xa
setl cl
xor cl, al
mov eax, 0x3a5e4de9
mov ecx, 0x529938f9
cmovne eax, ecx
and edx, 1
mov dword [esi + 0x24], edx
mov edx, eax
cmove edx, ecx
mov dword [esi + 0x28], edi
cmp edi, 0xa
cmovge edx, eax
mov dword [esi + 0x38], edx
mov eax, dword [esi + 0x14]
mov dword [esi + 0x16c], eax
mov eax, dword [esi + 0x18]
mov dword [esi + 0x168], eax
vmovaps ymm0, ymmword [esi + 0x120]
vmovaps ymm1, ymmword [esi + 0x140]
vmovaps xmm2, xmmword [esi + 0x160]
mov eax, 0x56c0bc0c
jmp 0x444e90
vmovaps xmmword [esi + 0x40], xmm2
vmovaps xmm2, xmmword [esi + 0x40]
vmovaps xmmword [esi + 0x160], xmm2
mov eax, 0x8fe954d9
cmp eax, 0x56c0bc0b
jg 0x444eb0
cmp eax, 0x8fe954d9
je 0x444ee9
cmp eax, 0xe8089bcc
jne 0x444e90
jmp 0x445533
cmp eax, 0x708fa04c
je 0x44509b
cmp eax, 0x56c0bc0c
jne 0x444e90
movzx ecx, byte [esi + 0x3e]
movzx eax, byte [esi + 0x3f]
mov edx, ecx
xor dl, al
mov edx, 0x708fa04c
mov edi, 0x8fe954d9
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x444e90
push eax
sub esp, 0x4c
mov edi, esp
and edi, 0xffffffe0
mov esp, edi
mov eax, dword [esi + 0x70]
mov dword [edi + 4], eax
mov eax, dword [esi + 0x6c]
mov dword [edi], eax
mov eax, dword [esi + 0x90]
mov dword [edi + 0xc], eax
mov eax, dword [esi + 0x8c]
mov dword [edi + 8], eax
mov eax, 0x9167877a
mov ecx, 0x9109df11
mov dword [edi + 0x14], eax
mov dword [edi + 0x10], ecx
mov eax, 0x9491a413
mov ecx, 0x70307e1e
mov dword [edi + 0x1c], eax
mov dword [edi + 0x18], ecx
mov eax, 0xf9d51110
mov ecx, 0x8e2583eb
mov dword [edi + 0x24], eax
mov dword [edi + 0x20], ecx
mov eax, 0x65ee6881
mov ecx, 0x1ffeb8f8
mov dword [edi + 0x2c], eax
mov dword [edi + 0x28], ecx
mov eax, 0x818c7966
mov ecx, 0xd46f2c35
mov dword [edi + 0x34], eax
mov dword [edi + 0x30], ecx
mov eax, 0x59c5578f
mov ecx, 0x94994292
mov dword [edi + 0x3c], eax
mov dword [edi + 0x38], ecx
mov eax, 0x93739c2c
mov ecx, 0x2be9daaf
mov dword [edi + 0x44], eax
mov dword [edi + 0x40], ecx
mov ecx, dword [0x5cf4d8]
mov ebx, dword [0x5cf4dc]
mov dword [esi + 0x20], ebx
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
mov dword [esi + 0x34], ecx
test ecx, eax
sete dh
cmp ebx, 0xa
setl dl
xor dl, dh
mov ebx, 0xfea9a5a5
mov edx, 0x5b56981
cmovne ebx, edx
mov edx, ebx
mov dword [esi + 0x1c], ebx
mov ebx, dword [esi + 0x14]
mov dword [edi + 0x4c], ebx
test ecx, eax
mov ebx, edx
mov edx, 0x5b56981
cmove ebx, edx
mov edx, dword [esi + 0x18]
mov dword [edi + 0x48], edx
xor edx, edx
mov dword [esi + 0x2c], eax
test ecx, eax
vmovaps ymm3, ymmword [edi]
sete byte [esi + 0x50]
cmp dword [esi + 0x20], 0xa
cmovge ebx, dword [esi + 0x1c]
mov dword [esi + 0x1c], ebx
vbroadcastsd ymm4, qword [0x5b6ee8]
vandnps ymm5, ymm0, ymm4
vandnps ymm6, ymm3, ymm4
vandnps ymm7, ymm4, ymm0
vorps ymm5, ymm5, ymm7
vandnps ymm3, ymm4, ymm3
vorps ymm3, ymm6, ymm3
vxorps ymm3, ymm5, ymm3
setl byte [esi + 0x40]
mov ecx, 0x66f0faa2
nop dword [eax]
cmp ecx, 0x27b3207c
jg 0x445040
cmp ecx, 0xfea9a5a5
je 0x445077
cmp ecx, 0x5b56981
jne 0x445020
jmp 0x445250
cmp ecx, 0x27b3207d
je 0x44508a
cmp ecx, 0x66f0faa2
jne 0x445020
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov ebx, 0xfea9a5a5
mov eax, 0x27b3207d
cmovne ebx, eax
test cl, cl
mov ecx, ebx
cmovne ecx, eax
test dl, dl
cmove ecx, ebx
jmp 0x445020
mov ecx, 0x27b3207d
vmovaps ymmword [esi + 0x120], ymm3
vmovaps ymm0, ymm3
jmp 0x445020
vmovaps ymmword [esi + 0x120], ymm3
vmovaps ymm0, ymm3
mov ecx, dword [esi + 0x1c]
jmp 0x445020
push eax
sub esp, 0x4c
mov edi, esp
and edi, 0xffffffe0
mov esp, edi
mov eax, dword [esi + 0x70]
mov dword [edi + 4], eax
mov eax, dword [esi + 0x6c]
mov dword [edi], eax
mov eax, dword [esi + 0x90]
mov dword [edi + 0xc], eax
mov eax, dword [esi + 0x8c]
mov dword [edi + 8], eax
mov eax, 0x9167877a
mov ecx, 0x9109df11
mov dword [edi + 0x14], eax
mov dword [edi + 0x10], ecx
mov eax, 0x9491a413
mov ecx, 0x70307e1e
mov dword [edi + 0x1c], eax
mov dword [edi + 0x18], ecx
mov eax, 0xf9d51110
mov ecx, 0x8e2583eb
mov dword [edi + 0x24], eax
mov dword [edi + 0x20], ecx
mov eax, 0x65ee6881
mov ecx, 0x1ffeb8f8
mov dword [edi + 0x2c], eax
mov dword [edi + 0x28], ecx
mov eax, 0x818c7966
mov ecx, 0xd46f2c35
mov dword [edi + 0x34], eax
mov dword [edi + 0x30], ecx
mov eax, 0x59c5578f
mov ecx, 0x94994292
mov dword [edi + 0x3c], eax
mov dword [edi + 0x38], ecx
mov eax, 0x93739c2c
mov ecx, 0x2be9daaf
mov dword [edi + 0x44], eax
mov dword [edi + 0x40], ecx
mov eax, dword [esi + 0x14]
mov dword [edi + 0x4c], eax
mov eax, dword [esi + 0x18]
mov dword [edi + 0x48], eax
xor eax, eax
vmovaps ymm3, ymmword [edi]
mov eax, dword [0x5cf4d8]
mov edx, dword [0x5cf4dc]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x34], eax
test eax, ecx
sete byte [esi + 0x50]
mov ebx, 0xfea9a5a5
mov eax, 0x5b56981
cmove ebx, eax
sete cl
mov dword [esi + 0x20], edx
cmp edx, 0xa
setl byte [esi + 0x40]
mov eax, 0xfea9a5a5
cmovge ebx, eax
setl ch
xor ch, cl
vbroadcastsd ymm4, qword [0x5b6ed8]
vandnps ymm5, ymm0, ymm4
vandnps ymm6, ymm3, ymm4
vandnps ymm7, ymm4, ymm0
vorps ymm5, ymm5, ymm7
vandnps ymm3, ymm4, ymm3
vorps ymm3, ymm6, ymm3
vxorps ymm3, ymm5, ymm3
mov eax, 0x5b56981
cmovne ebx, eax
mov dword [esi + 0x1c], ebx
mov ecx, 0x66f0faa2
nop word cs:[eax + eax]
cmp ecx, 0x27b3207c
jg 0x4451f0
cmp ecx, 0xfea9a5a5
je 0x44522c
cmp ecx, 0x5b56981
jne 0x4451d0
jmp 0x445319
cmp ecx, 0x27b3207d
je 0x44523f
cmp ecx, 0x66f0faa2
jne 0x4451d0
movzx eax, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ah, al
xor ah, cl
test cl, cl
mov ecx, 0xfea9a5a5
mov edx, 0x27b3207d
cmovne ecx, edx
test al, al
mov ebx, 0xfea9a5a5
cmove ecx, ebx
test ah, ah
cmovne ecx, edx
jmp 0x4451d0
mov ecx, 0x27b3207d
vmovaps ymmword [esi + 0x120], ymm3
vmovaps ymm0, ymm3
jmp 0x4451d0
vmovaps ymmword [esi + 0x120], ymm3
vmovaps ymm0, ymm3
mov ecx, dword [esi + 0x1c]
jmp 0x4451d0
mov eax, dword [esi + 0x34]
test dword [esi + 0x2c], eax
vmovaps ymm3, ymmword [edi + 0x20]
sete byte [esi + 0x50]
cmp dword [esi + 0x20], 0xa
vbroadcastsd ymm4, qword [0x5b6ef0]
vandnps ymm5, ymm3, ymm4
vandnps ymm6, ymm1, ymm4
vandnps ymm3, ymm4, ymm3
vorps ymm3, ymm5, ymm3
vandnps ymm4, ymm4, ymm1
vorps ymm4, ymm6, ymm4
vxorps ymm3, ymm3, ymm4
setl byte [esi + 0x40]
mov eax, 0x66f0faa2
nop word cs:[eax + eax]
cmp eax, 0x27b3207c
jg 0x4452c0
cmp eax, 0xfea9a5a5
je 0x4452f5
cmp eax, 0x5b56981
jne 0x4452a0
jmp 0x4453de
cmp eax, 0x27b3207d
je 0x445308
cmp eax, 0x66f0faa2
jne 0x4452a0
movzx ecx, byte [esi + 0x50]
movzx eax, byte [esi + 0x40]
mov edx, ecx
xor dl, al
mov edx, 0xfea9a5a5
mov ebx, 0x27b3207d
cmovne edx, ebx
test al, al
mov eax, edx
cmovne eax, ebx
test cl, cl
cmove eax, edx
jmp 0x4452a0
mov eax, 0x27b3207d
vmovaps ymmword [esi + 0x140], ymm3
vmovaps ymm1, ymm3
jmp 0x4452a0
vmovaps ymmword [esi + 0x140], ymm3
vmovaps ymm1, ymm3
mov eax, dword [esi + 0x1c]
jmp 0x4452a0
mov eax, dword [esi + 0x34]
test dword [esi + 0x2c], eax
vmovaps ymm3, ymmword [edi + 0x20]
sete byte [esi + 0x50]
cmp dword [esi + 0x20], 0xa
vbroadcastsd ymm4, qword [0x5b6ee0]
vandnps ymm5, ymm3, ymm4
vandnps ymm6, ymm1, ymm4
vandnps ymm3, ymm4, ymm3
vorps ymm3, ymm5, ymm3
vandnps ymm4, ymm4, ymm1
vorps ymm4, ymm6, ymm4
vxorps ymm3, ymm3, ymm4
setl byte [esi + 0x40]
mov eax, 0x66f0faa2
nop word [eax + eax]
cmp eax, 0x27b3207c
jg 0x445380
cmp eax, 0xfea9a5a5
je 0x4453ba
cmp eax, 0x5b56981
jne 0x445360
jmp 0x445479
cmp eax, 0x27b3207d
je 0x4453cd
cmp eax, 0x66f0faa2
jne 0x445360
movzx ecx, byte [esi + 0x50]
movzx eax, byte [esi + 0x40]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0xfea9a5a5
mov ebx, 0x27b3207d
cmovne eax, ebx
test cl, cl
mov ecx, 0xfea9a5a5
cmove eax, ecx
test dl, dl
cmovne eax, ebx
jmp 0x445360
mov eax, 0x27b3207d
vmovaps ymmword [esi + 0x140], ymm3
vmovaps ymm1, ymm3
jmp 0x445360
vmovaps ymmword [esi + 0x140], ymm3
vmovaps ymm1, ymm3
mov eax, dword [esi + 0x1c]
jmp 0x445360
cmp dword [esi + 0x24], 0
vmovaps xmm3, xmmword [edi + 0x40]
sete byte [esi + 0xb0]
cmp dword [esi + 0x28], 0xa
setl byte [esi + 0x50]
vandnps xmm4, xmm3, xmm2
vandnps xmm2, xmm2, xmm3
vorps xmm2, xmm4, xmm2
mov eax, 0x9c60b94a
nop word [eax + eax]
cmp eax, 0x3a5e4de8
jle 0x445430
cmp eax, 0x3a5e4de9
je 0x445443
cmp eax, 0x529938f9
jne 0x445410
jmp 0x445519
cmp eax, 0x9c60b94a
je 0x44544a
cmp eax, 0x17b769ba
jne 0x445410
mov eax, dword [esi + 0x38]
jmp 0x445410
mov eax, 0x17b769ba
jmp 0x445410
movzx ecx, byte [esi + 0xb0]
movzx eax, byte [esi + 0x50]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x3a5e4de9
mov edi, 0x17b769ba
cmovne eax, edi
test cl, cl
mov ecx, 0x3a5e4de9
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x445410
cmp dword [esi + 0x24], 0
vmovaps xmm3, xmmword [edi + 0x40]
sete byte [esi + 0xb0]
cmp dword [esi + 0x28], 0xa
setl byte [esi + 0x50]
vandnps xmm4, xmm3, xmm2
vandnps xmm2, xmm2, xmm3
vorps xmm2, xmm4, xmm2
mov eax, 0x9c60b94a
nop word cs:[eax + eax]
cmp eax, 0x3a5e4de8
jle 0x4454d0
cmp eax, 0x3a5e4de9
je 0x4454e3
cmp eax, 0x529938f9
jne 0x4454b0
jmp 0x444e79
cmp eax, 0x9c60b94a
je 0x4454ea
cmp eax, 0x17b769ba
jne 0x4454b0
mov eax, dword [esi + 0x38]
jmp 0x4454b0
mov eax, 0x17b769ba
jmp 0x4454b0
movzx ecx, byte [esi + 0xb0]
movzx eax, byte [esi + 0x50]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x3a5e4de9
mov edi, 0x17b769ba
cmovne eax, edi
test cl, cl
mov ecx, 0x3a5e4de9
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x4454b0
vmovaps xmmword [esi + 0x40], xmm2
vmovaps xmm2, xmmword [esi + 0x40]
vmovaps xmmword [esi + 0x160], xmm2
mov eax, dword [esi + 0x68]
jmp 0x444e90
lea eax, [esi + 0x120]
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x40]
mov esp, dword [esi + 0x30]
jmp 0x44439b
mov dword [esi + 0x14], edi
mov dword [esi + 0x488], 0xa
lea eax, [esi + 0x74]
push eax
vzeroupper
call fcn.00441f40
add esp, 4
mov dword [esi + 0x488], 0xb
push dword [esi + 0x14]
lea eax, [esi + 0x74]
push eax
lea eax, [esi + 0xec]
push eax
call fcn.004421f0
add esp, 0xc
lea ecx, [esi + 0x74]
call fcn.00422cf0
mov dword [esi + 0x488], 0xc
lea ecx, [esi + 0x230]
push 1
push 0x40
push 0x20
lea eax, [esi + 0xec]
push eax
call fcn.004422f0
cmp dword [esi + 0x280], 0
je 0x4457d9
mov dword [esi + 0x488], 0x23
lea eax, [esi + 0x348]
push eax
call fcn.0041f140
add esp, 4
mov dword [esi + 0x488], 0x24
lea ecx, [esi + 0x120]
push 1
push 0x40
push 0x20
lea eax, [esi + 0x348]
push eax
call fcn.0041f410
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
lea edi, [esi + 0x348]
jne 0x445625
xor cl, al
je 0x445659
jmp 0x445625
mov ecx, edi
call fcn.00422cf0
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete dl
cmp dword [0x5cf5b4], 0xa
setge cl
setl ah
xor ah, dl
jne 0x445662
or cl, al
je 0x445662
mov ecx, edi
call fcn.00422cf0
jmp 0x445625
cmp dword [esi + 0x17c], 0
je 0x4457b9
lea edi, [esi + 0x410]
lea ebx, [esi + 0x1dc]
nop dword [eax + eax]
mov eax, dword [esi + 0x120]
mov eax, dword [eax + 4]
mov eax, dword [esi + eax + 0x158]
mov dword [esi + 0x1e0], eax
test eax, eax
sete byte [esi + 0x1e4]
mov byte [esi + 0x1e5], 0
mov ecx, edi
call fcn.0041fc70
mov ecx, ebx
call fcn.0044b040
mov ecx, dword [0x5cf5b0]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x5cf5b4], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x445716
or cl, al
test cl, 1
je 0x445716
mov eax, dword [esi + 0x120]
mov eax, dword [eax + 4]
mov eax, dword [esi + eax + 0x158]
mov dword [esi + 0x1e0], eax
test eax, eax
sete byte [esi + 0x1e4]
mov byte [esi + 0x1e5], 0
mov ecx, edi
call fcn.0041fc70
mov ecx, ebx
call fcn.0044b040
jmp 0x445680
mov dword [esi + 0x488], 0x25
sub esp, 0x14
vmovsd xmm0, qword [esi + 0x410]
vmovsd qword [esp + 8], xmm0
vmovsd xmm0, qword [esi + 0x1e0]
vmovsd qword [esp], xmm0
mov dword [esp + 0x10], ebx
lea ecx, [esi + 0x418]
call fcn.0040d060
mov dword [esi + 0x488], 0x26
lea eax, [esi + 0x418]
push eax
lea eax, [esi + 0x230]
push eax
call fcn.0041f870
add esp, 8
lea ecx, [esi + 0x418]
call fcn.0040ed30
mov dword [esi + 0x488], 0x25
lea ecx, [esi + 0x120]
call fcn.0041f550
mov eax, dword [0x5cf5b0]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x4457b9
xor cl, al
je 0x44a610
mov dword [esi + 0x488], 0x25
lea ecx, [esi + 0x230]
call fcn.0041f890
lea ecx, [esi + 0x120]
call fcn.0041f690
lea ecx, [esi + 0x230]
call fcn.0041faa0
mov dword [esi + 0x488], 0xc
call fcn.00434500
mov ecx, dword [0x5cf5b0]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete ah
cmp dword [0x5cf5b4], 0xa
setge dl
setl ch
xor ch, ah
jne 0x445825
or dl, cl
jne 0x44a5d0
test al, al
jne 0x4458c5
lea ecx, [esi + 0xec]
lea eax, [esi + 0x3f0]
push eax
call fcn.0041f710
push dword [esi + 0x3f4]
push dword [esi + 0x3f0]
call fcn.004352d0
add esp, 8
test eax, eax
jne 0x445899
call fcn.00417760
mov ecx, dword [0x5cf5b0]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x5cf5b4], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x44588e
or dl, cl
jne 0x44a640
push 0
push eax
call fcn.004189c0
add esp, 8
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x4458c5
xor cl, al
je 0x44a600
mov dword [esi + 0x230], 1
mov dword [esi + 0x234], 0xa
mov dword [esi + 0x74], 0xf
mov dword [esi + 0x78], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor edi, edi
mov eax, dword [0x5cf58c]
nop
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete dl
cmp eax, 0xa
setl al
test al, dl
lea ecx, [esi + 0x74]
jne 0x445925
xor al, dl
je 0x44a570
cmp edi, 0x63
ja 0x4459fc
mov dword [esi + 0x14], edi
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x488], 0xf
push edx
push eax
lea eax, [esi + 0xc8]
push eax
call fcn.0041de80
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x5cf58c], 0xa
setl dl
test dl, cl
jne 0x44597c
xor dl, cl
je 0x44a580
mov dword [esi + 0x3a4], eax
lea ecx, [esi + 0x230]
push dword [esi + 0x234]
push dword [esi + 0x230]
lea eax, [esi + 0xc8]
push eax
call fcn.0041de80
mov dword [esi + 0x3a0], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x3a4]
push eax
lea eax, [esi + 0x3a0]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
mov edi, dword [esi + 0x14]
jne 0x4459f9
nop word [eax + eax]
inc edi
test dl, dl
jne 0x445900
inc edi
jmp 0x4459f0
lea ecx, [esi + 0x2e0]
call fcn.00540a80
mov edi, dword [esi + 0x120]
mov eax, dword [esi + 0x124]
mov dword [esi + 0xac], eax
cmp edi, eax
jne 0x445b65
mov edx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
test ecx, ecx
sete dl
setne cl
cmp eax, 0xa
setl ah
setge al
cmp dl, ah
jne 0x445a52
or cl, al
jne 0x44a630
mov eax, dword [esi + 0x2e0]
mov ecx, dword [esi + 0x2e4]
mov dword [esi + 0x18], ecx
cmp eax, ecx
je 0x445f82
mov ecx, dword [0x5cf590]
mov edi, dword [0x5cf594]
mov dword [esi + 0x14], edi
lea ebx, [ecx + 1]
imul ebx, ecx
mov ecx, ebx
xor ecx, 0xfffffffe
test ecx, ebx
sete dh
cmp edi, 0xa
setl dl
xor dl, dh
mov edx, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x20], ecx
test ecx, ebx
mov ecx, edx
cmove ecx, edi
cmp dword [esi + 0x14], 0xa
cmovge ecx, edx
mov dword [esi + 0x24], ecx
xor edx, edx
jmp 0x445acf
mov dword [esi + 0x40], eax
mov ecx, dword [esi + 0x40]
add edx, dword [ecx + 4]
sub edx, dword [ecx]
add eax, 8
cmp eax, dword [esi + 0x18]
je 0x445f70
mov ecx, dword [esi + 0x20]
test dword [esi + 0x1c], ecx
sete byte [esi + 0xb0]
cmp dword [esi + 0x14], 0xa
setl byte [esi + 0x50]
mov ecx, 0x553a1bc1
nop dword [eax]
cmp ecx, 0xd08af798
jg 0x445b10
cmp ecx, 0xb4e27a0f
je 0x445b54
cmp ecx, 0xbd723542
jne 0x445af0
mov ecx, 0xb4e27a0f
jmp 0x445af0
cmp ecx, 0xd08af799
je 0x445ab8
cmp ecx, 0x553a1bc1
jne 0x445af0
movzx ebx, byte [esi + 0xb0]
movzx ecx, byte [esi + 0x50]
mov bh, cl
xor bh, bl
test cl, cl
mov ecx, 0xbd723542
mov edi, 0xb4e27a0f
cmovne ecx, edi
test bl, bl
mov edi, 0xbd723542
cmove ecx, edi
test bh, bh
mov edi, 0xb4e27a0f
cmovne ecx, edi
jmp 0x445af0
mov ecx, dword [esi + 0x24]
jmp 0x445af0
cmp edi, dword [esi + 0xac]
je 0x445a35
mov dword [esi + 0x30], edi
mov eax, dword [0x5cf590]
lea ecx, [eax + 1]
imul ecx, eax
mov edx, dword [0x5cf594]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0xb0]
sete cl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0x50]
setl dl
mov ebx, 0xbd723542
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
mov edi, dword [esi + 0x30]
mov ecx, 0x553a1bc1
nop word [eax + eax]
cmp ecx, 0xd08af798
jg 0x445be0
cmp ecx, 0xb4e27a0f
je 0x445c1d
cmp ecx, 0xbd723542
jne 0x445bc0
mov ecx, 0xb4e27a0f
jmp 0x445bc0
cmp ecx, 0xd08af799
je 0x445c21
cmp ecx, 0x553a1bc1
jne 0x445bc0
movzx edx, byte [esi + 0xb0]
movzx ecx, byte [esi + 0x50]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
mov edi, dword [esi + 0x30]
jmp 0x445bc0
mov ecx, eax
jmp 0x445bc0
mov dword [esi + 0x40], edi
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x2e0]
mov ebx, dword [esi + 0x2e4]
mov cl, 1
mov dword [esi + 0x68], ecx
mov dword [esi + 0x14], edx
mov dword [esi + 0x34], ebx
cmp edx, ebx
mov dword [esi + 0x18], eax
je 0x445ed9
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
nop word [eax + eax]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp eax, 0xa
setl al
test al, cl
jne 0x445cb0
xor al, cl
je 0x445dc6
jmp 0x445cb0
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x34]
mov eax, dword [esi + 0x28]
jne 0x445c60
jmp 0x445ed6
mov eax, dword [0x5cf590]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, dword [0x5cf594]
sete byte [esi + 0xb0]
sete dl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x50]
setl cl
mov ebx, 0xbd723542
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x553a1bc1
nop dword [eax + eax]
cmp ecx, 0xd08af798
jg 0x445d20
cmp ecx, 0xb4e27a0f
je 0x445d5a
cmp ecx, 0xbd723542
jne 0x445d00
mov ecx, 0xb4e27a0f
jmp 0x445d00
cmp ecx, 0xd08af799
je 0x445d60
cmp ecx, 0x553a1bc1
jne 0x445d00
movzx edx, byte [esi + 0xb0]
movzx ecx, byte [esi + 0x50]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x445d00
mov ecx, eax
jmp 0x445d00
mov eax, dword [esi + 0x14]
mov dword [esi + 0x40], eax
mov edi, dword [esi + 0x40]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x38], eax
mov dword [esi + 0x20], edx
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x24], eax
mov dword [esi + 0x2c], edx
mov ecx, dword [0x5cf588]
lea ebx, [ecx + 1]
imul ebx, ecx
test bl, 1
sete dh
mov eax, dword [0x5cf58c]
mov dword [esi + 0x28], eax
cmp eax, 0xa
setge dl
setl al
xor al, dh
jne 0x445eb0
or dl, bl
test dl, 1
je 0x445eb0
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0xb0]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x50]
cmovge eax, edx
mov ecx, 0x553a1bc1
jmp 0x445e20
mov ecx, eax
nop word [eax + eax]
cmp ecx, 0xd08af798
jg 0x445e40
cmp ecx, 0xb4e27a0f
je 0x445e18
cmp ecx, 0xbd723542
jne 0x445e20
mov ecx, 0xb4e27a0f
jmp 0x445e20
cmp ecx, 0xd08af799
je 0x445e80
cmp ecx, 0x553a1bc1
jne 0x445e20
movzx edx, byte [esi + 0xb0]
movzx ecx, byte [esi + 0x50]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x445e20
mov eax, dword [esi + 0x14]
mov dword [esi + 0x40], eax
mov edi, dword [esi + 0x40]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x445cb0
mov eax, dword [esi + 0x20]
mov eax, dword [eax]
mov edx, dword [esi + 0x24]
cmp eax, dword [edx]
jg 0x445c90
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov dword [esi + 0x68], 0
mov edi, dword [esi + 0x30]
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
sete bl
setne dl
cmp eax, 0xa
setl bh
setge dh
cmp bh, bl
jne 0x445f0c
or dh, dl
jne 0x44a590
cmp byte [esi + 0x68], 0
je 0x445f45
mov dword [esi + 0x488], 0x10
lea ecx, [esi + 0x2e0]
push dword [esi + 0x18]
call fcn.00540ea0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
mov edi, dword [esi + 0x30]
test ecx, ecx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
jne 0x445f6b
nop word [eax + eax]
add edi, 8
test dl, dl
jne 0x445b59
add edi, 8
jmp 0x445f60
cmp edx, 0x12345678
jne 0x445f82
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x2e0]
call fcn.0041e540
lea edi, [esi + 0x120]
mov ecx, edi
call fcn.0041e540
mov dword [esi + 0x230], 1
mov dword [esi + 0x234], 0xa
mov dword [esi + 0x74], 0xf
mov dword [esi + 0x78], 0x1e
mov ecx, edi
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor edi, edi
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete dl
cmp eax, 0xa
setl al
test al, dl
lea ecx, [esi + 0x74]
jne 0x445ff5
xor al, dl
je 0x44a5a0
cmp edi, 0x63
ja 0x4460dc
mov dword [esi + 0x14], edi
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x488], 0xd
push edx
push eax
lea eax, [esi + 0xcc]
push eax
call fcn.0041de80
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5cf58c], 0xa
setl dl
test dl, cl
jne 0x44604b
xor dl, cl
je 0x44a5b0
mov dword [esi + 0x3ac], eax
lea ecx, [esi + 0x230]
push dword [esi + 0x234]
push dword [esi + 0x230]
lea eax, [esi + 0xcc]
push eax
call fcn.0041de80
mov dword [esi + 0x3a8], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x3ac]
push eax
lea eax, [esi + 0x3a8]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
setne dh
sete bl
cmp eax, 0xa
setge dl
setl bh
xor bh, bl
or dl, dh
xor dl, 1
or dl, bh
cmp dl, 1
mov edi, dword [esi + 0x14]
jne 0x4460d9
nop word cs:[eax + eax]
inc edi
test dl, dl
jne 0x445fd0
inc edi
jmp 0x4460d0
lea ecx, [esi + 0x2ec]
call fcn.00540a80
mov eax, dword [esi + 0x120]
mov ecx, dword [esi + 0x124]
mov dword [esi + 0x30], ecx
cmp eax, ecx
jne 0x44623e
mov ecx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
sete cl
cmp edi, 0xa
setl al
test cl, al
jne 0x44612e
xor cl, al
je 0x44a690
mov eax, dword [esi + 0x2ec]
mov ecx, dword [esi + 0x2f0]
mov dword [esi + 0x1c], ecx
cmp eax, ecx
je 0x446652
mov ecx, dword [0x5cf590]
mov edi, dword [0x5cf594]
mov dword [esi + 0x18], edi
lea ebx, [ecx + 1]
imul ebx, ecx
mov ecx, ebx
xor ecx, 0xfffffffe
test ecx, ebx
sete dh
cmp edi, 0xa
setl dl
xor dl, dh
mov edx, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], ecx
test ecx, ebx
mov ecx, edx
cmove ecx, edi
cmp dword [esi + 0x18], 0xa
cmovge ecx, edx
mov dword [esi + 0x28], ecx
xor edx, edx
jmp 0x4461ab
mov dword [esi + 0x40], eax
mov ecx, dword [esi + 0x40]
add edx, dword [ecx + 4]
sub edx, dword [ecx]
add eax, 8
cmp eax, dword [esi + 0x1c]
je 0x446640
mov ecx, dword [esi + 0x24]
test dword [esi + 0x20], ecx
sete byte [esi + 0xb0]
cmp dword [esi + 0x18], 0xa
setl byte [esi + 0x50]
mov ecx, 0x553a1bc1
nop word cs:[eax + eax]
cmp ecx, 0xd08af798
jg 0x4461f0
cmp ecx, 0xb4e27a0f
je 0x446230
cmp ecx, 0xbd723542
jne 0x4461d0
mov ecx, 0xb4e27a0f
jmp 0x4461d0
cmp ecx, 0xd08af799
je 0x446194
cmp ecx, 0x553a1bc1
jne 0x4461d0
movzx ebx, byte [esi + 0xb0]
movzx ecx, byte [esi + 0x50]
mov ch, bl
xor ch, cl
mov edi, 0xbd723542
mov dword [esi + 0x14], eax
mov eax, 0xb4e27a0f
cmovne edi, eax
test cl, cl
mov ecx, edi
cmovne ecx, eax
mov eax, dword [esi + 0x14]
test bl, bl
cmove ecx, edi
jmp 0x4461d0
mov ecx, dword [esi + 0x28]
jmp 0x4461d0
cmp eax, dword [esi + 0x30]
je 0x446117
mov dword [esi + 0x2c], eax
mov eax, dword [0x5cf590]
lea ecx, [eax + 1]
imul ecx, eax
mov edx, dword [0x5cf594]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0xb0]
sete cl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0x50]
setl dl
mov ebx, 0xbd723542
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
mov ecx, 0x553a1bc1
nop dword [eax]
cmp ecx, 0xd08af798
jg 0x4462b0
cmp ecx, 0xb4e27a0f
je 0x4462ea
cmp ecx, 0xbd723542
jne 0x446290
mov ecx, 0xb4e27a0f
jmp 0x446290
cmp ecx, 0xd08af799
je 0x4462ee
cmp ecx, 0x553a1bc1
jne 0x446290
movzx edx, byte [esi + 0xb0]
movzx ecx, byte [esi + 0x50]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x446290
mov ecx, eax
jmp 0x446290
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x2ec]
mov edi, dword [esi + 0x2f0]
mov cl, 1
mov dword [esi + 0x34], ecx
mov dword [esi + 0x14], edx
mov dword [esi + 0x38], edi
cmp edx, edi
mov dword [esi + 0x18], eax
je 0x4465b3
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov edx, dword [0x5cf58c]
nop dword [eax + eax]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete ah
setne al
cmp edx, 0xa
setl dl
setge cl
cmp dl, ah
jne 0x446380
or cl, al
jne 0x4464a0
jmp 0x446380
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x38]
jne 0x446330
jmp 0x4465b3
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0xb0]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x50]
cmovge eax, edx
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x4463f0
cmp ecx, 0xb4e27a0f
je 0x44642f
cmp ecx, 0xbd723542
jne 0x4463d0
mov ecx, 0xb4e27a0f
jmp 0x4463d0
cmp ecx, 0xd08af799
je 0x446440
cmp ecx, 0x553a1bc1
jne 0x4463d0
movzx edx, byte [esi + 0xb0]
movzx ecx, byte [esi + 0x50]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x4463d0
mov ecx, eax
jmp 0x4463d0
mov eax, dword [esi + 0x14]
mov dword [esi + 0x40], eax
mov edi, dword [esi + 0x40]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], edx
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x28], edx
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
mov edx, dword [0x5cf58c]
sete bl
cmp edx, 0xa
setl bh
test bh, bl
jne 0x446590
xor bh, bl
jne 0x446590
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0xb0]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x50]
cmovge eax, edi
mov ecx, 0x553a1bc1
jmp 0x446500
mov ecx, eax
nop word cs:[eax + eax]
cmp ecx, 0xd08af798
jg 0x446520
cmp ecx, 0xb4e27a0f
je 0x4464f0
cmp ecx, 0xbd723542
jne 0x446500
mov ecx, 0xb4e27a0f
jmp 0x446500
cmp ecx, 0xd08af799
je 0x446560
cmp ecx, 0x553a1bc1
jne 0x446500
movzx edx, byte [esi + 0xb0]
movzx ecx, byte [esi + 0x50]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x446500
mov eax, dword [esi + 0x14]
mov dword [esi + 0x40], eax
mov edi, dword [esi + 0x40]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x446380
mov ebx, dword [esi + 0x20]
mov ebx, dword [ebx]
cmp ebx, dword [eax]
jg 0x446360
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov dword [esi + 0x34], 0
mov ecx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
and ecx, 1
sete bh
cmp edi, 0xa
setl al
setge bl
cmp al, bh
jne 0x4465e5
or bl, dl
test bl, 1
jne 0x44a5e0
cmp byte [esi + 0x34], 0
je 0x44661b
mov dword [esi + 0x488], 0xe
lea ecx, [esi + 0x2ec]
push dword [esi + 0x18]
call fcn.00540ea0
mov eax, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea edx, [eax + 1]
imul edx, eax
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
sete al
cmp edi, 0xa
setl dl
or dl, al
cmp dl, 1
mov eax, dword [esi + 0x2c]
jne 0x44663b
add eax, 8
test dl, dl
jne 0x446235
add eax, 8
jmp 0x446630
cmp edx, 0x12345678
jne 0x446652
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x2ec]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, dword [0x5cf5c0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, dword [0x5cf5c4]
sete byte [esi + 0x230]
sete dl
mov eax, 0x1c083d3d
mov edi, 0xfad034d5
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x120]
setl cl
mov ebx, 0x1c083d3d
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0xfb785f2f
cmp ecx, 0xfb785f2e
jg 0x4466d0
cmp ecx, 0x8abdb092
je 0x44670d
cmp ecx, 0xfad034d5
jne 0x4466b6
jmp 0x446718
cmp ecx, 0x1c083d3d
je 0x446711
cmp ecx, 0xfb785f2f
jne 0x4466b6
movzx edx, byte [esi + 0x230]
movzx ecx, byte [esi + 0x120]
mov ch, dl
xor ch, cl
mov edi, 0x1c083d3d
mov ebx, 0x8abdb092
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x4466b6
mov ecx, eax
jmp 0x4466b6
mov ecx, 0x8abdb092
jmp 0x4466b6
mov eax, dword [0x5cf4c8]
mov ecx, dword [0x5cf4cc]
mov dword [esi + 0x14], ecx
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete al
cmp ecx, 0xa
setl ah
xor ah, al
mov edi, 0x3a5e4de9
mov ecx, 0x529938f9
cmovne edi, ecx
cmp edx, 0xffffffff
mov eax, edi
cmove eax, ecx
mov ebx, 0x6f3ac779
mov ecx, 0xf476cca1
mov dword [esi + 0x3e0], ecx
mov dword [esi + 0x3e4], ebx
mov ecx, 0x2f61b855
mov ebx, 0xa3583a61
mov dword [esi + 0x3ec], ecx
mov dword [esi + 0x3e8], ebx
xor ecx, ecx
lea ebx, [esi + 0x230]
cmp edx, 0xffffffff
mov ecx, dword [esi + 0x6c]
mov dword [esi + 0x230], ecx
mov ecx, dword [esi + 0x70]
mov dword [esi + 0x234], ecx
mov ecx, dword [esi + 0x8c]
mov dword [esi + 0x238], ecx
mov ecx, dword [esi + 0x90]
mov dword [esi + 0x23c], ecx
vmovaps xmm0, xmmword [ebx]
sete byte [esi + 0x40]
cmp dword [esi + 0x14], 0xa
setl byte [esi + 0x74]
vmovaps xmm1, xmmword [esi + 0x3e0]
vandnps xmm2, xmm1, xmm0
vandnps xmm0, xmm0, xmm1
vorps xmm0, xmm2, xmm0
cmovge eax, edi
mov edi, 0x9c60b94a
lea ecx, [esi + 0x200]
cmp edi, 0x3a5e4de8
jle 0x446801
cmp edi, 0x3a5e4de9
je 0x446815
cmp edi, 0x529938f9
jne 0x4467e7
jmp 0x44684e
cmp edi, 0x9c60b94a
je 0x44681c
cmp edi, 0x17b769ba
jne 0x4467e7
mov edi, eax
jmp 0x4467e7
mov edi, 0x17b769ba
jmp 0x4467e7
movzx edx, byte [esi + 0x40]
movzx ecx, byte [esi + 0x74]
mov dh, cl
xor dh, dl
test cl, cl
mov edi, 0x3a5e4de9
mov ebx, 0x17b769ba
cmovne edi, ebx
test dl, dl
mov ecx, 0x3a5e4de9
cmove edi, ecx
test dh, dh
lea ecx, [esi + 0x200]
cmovne edi, ebx
jmp 0x4467e7
vmovaps xmmword [esi + 0x120], xmm0
vmovaps xmm0, xmmword [esi + 0x120]
vmovaps xmmword [esi + 0x3e0], xmm0
lea eax, [esi + 0x3e0]
mov dword [esi + 0x39c], eax
mov dword [esi + 0x488], 0xc
push 0x5bde7a
lea eax, [esi + 0x39c]
push eax
call fcn.0044b110
mov dword [esi + 0x488], 0x11
lea ecx, [esi + 0x340]
lea eax, [esi + 0x230]
push eax
lea eax, [esi + 0x200]
push eax
call fcn.0044b1d0
lea ecx, [esi + 0x218]
call fcn.0040ed30
lea ecx, [esi + 0x200]
call fcn.0040ed30
mov eax, dword [0x5cf5c8]
mov ecx, dword [0x5cf5cc]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0x74]
cmp ecx, 0xa
setl byte [esi + 0x230]
mov eax, 0x90635bf2
cmp eax, 0x5b33cfdb
jle 0x44690f
cmp eax, 0x5b33cfdc
je 0x446997
cmp eax, 0x701c659f
jne 0x4468f1
jmp 0x4469fa
cmp eax, 0x90635bf2
je 0x4469cd
cmp eax, 0x34e44f14
jne 0x4468f1
lea eax, [esi + 0x360]
mov dword [esi + 0x120], eax
mov eax, dword [esi + 0x120]
mov ecx, 0xf06cc4c8
mov edx, 0x6a1ce727
mov dword [eax + 4], edx
mov dword [eax], ecx
mov ecx, 0xd7395e74
mov edx, 0x2f61b830
mov dword [eax + 0xc], edx
mov dword [eax + 8], ecx
mov edx, dword [0x5cf5c8]
mov ecx, dword [0x5cf5cc]
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, 0x5b33cfdc
mov edi, 0x701c659f
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x4468f1
mov eax, 0xf06cc4c8
mov ecx, 0x6a1ce727
mov dword [esi + 0x364], ecx
mov dword [esi + 0x360], eax
mov eax, 0xd7395e74
mov ecx, 0x2f61b830
mov dword [esi + 0x36c], ecx
mov dword [esi + 0x368], eax
mov eax, 0x34e44f14
jmp 0x4468f1
movzx ecx, byte [esi + 0x74]
movzx eax, byte [esi + 0x230]
mov edx, ecx
xor dl, al
mov edx, 0x5b33cfdc
mov edi, 0x34e44f14
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x4468f1
mov eax, dword [0x5cf4c8]
mov ecx, dword [0x5cf4cc]
mov dword [esi + 0x14], ecx
lea edx, [eax + 1]
imul edx, eax
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
sete al
cmp ecx, 0xa
setl ah
xor ah, al
mov edi, 0x3a5e4de9
mov eax, 0x529938f9
cmovne edi, eax
mov dword [esi + 0x18], edi
test ebx, edx
cmove edi, eax
xor ecx, ecx
lea eax, [esi + 0x230]
test ebx, edx
mov ecx, dword [esi + 0x120]
mov ecx, dword [esi + 0x70]
mov dword [esi + 0x234], ecx
mov ecx, dword [esi + 0x6c]
mov dword [esi + 0x230], ecx
mov ecx, dword [esi + 0x90]
mov dword [esi + 0x23c], ecx
mov ecx, dword [esi + 0x8c]
mov dword [esi + 0x238], ecx
vmovaps xmm0, xmmword [eax]
sete byte [esi + 0x40]
cmp dword [esi + 0x14], 0xa
setl byte [esi + 0x74]
vmovaps xmm1, xmmword [esi + 0x360]
vandnps xmm2, xmm1, xmm0
vandnps xmm0, xmm0, xmm1
vorps xmm0, xmm2, xmm0
cmovge edi, dword [esi + 0x18]
mov dword [esi + 0x14], edi
mov ebx, 0x9c60b94a
lea ecx, [esi + 0x94]
cmp ebx, 0x3a5e4de8
jle 0x446abf
cmp ebx, 0x3a5e4de9
je 0x446ad4
cmp ebx, 0x529938f9
jne 0x446aa5
jmp 0x446b0d
cmp ebx, 0x9c60b94a
je 0x446adb
cmp ebx, 0x17b769ba
jne 0x446aa5
mov ebx, dword [esi + 0x14]
jmp 0x446aa5
mov ebx, 0x17b769ba
jmp 0x446aa5
movzx eax, byte [esi + 0x40]
movzx ecx, byte [esi + 0x74]
mov edx, eax
xor dl, cl
test cl, cl
mov ebx, 0x3a5e4de9
mov edi, 0x17b769ba
cmovne ebx, edi
test al, al
mov eax, 0x3a5e4de9
cmove ebx, eax
lea ecx, [esi + 0x94]
test dl, dl
cmovne ebx, edi
jmp 0x446aa5
vmovaps xmmword [esi + 0x120], xmm0
vmovaps xmm0, xmmword [esi + 0x120]
vmovaps xmmword [esi + 0x360], xmm0
mov dword [esi + 0x488], 0x12
lea eax, [esi + 0x360]
push eax
call fcn.00420e10
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x446b66
xor cl, al
je 0x44a6a0
mov ecx, dword [esi + 0x11c]
mov dword [esi + 0x488], 0x13
lea eax, [esi + 0x340]
push eax
lea eax, [esi + 0x94]
push eax
lea eax, [esi + 0x200]
push eax
call fcn.004fabf0
lea ecx, [esi + 0x94]
call fcn.0040ed30
cmp dword [esi + 0x200], 0
je 0x449592
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
lea edi, [esi + 0x74]
jne 0x446bd6
xor cl, al
je 0x44a6a6
mov eax, dword [0x5cf5d0]
mov ecx, dword [0x5cf5d4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0xe6]
cmp ecx, 0xa
setl byte [esi + 0xe7]
mov eax, 0x1017ab6e
cmp eax, 0x1017ab6d
jg 0x446d5f
cmp eax, 0x8697eca9
je 0x446daa
cmp eax, 0xa7bf93b4
jne 0x446c05
mov dword [esi + 0x230], 1
mov dword [esi + 0x234], 0xa
mov dword [esi + 0x74], 0xf
mov dword [esi + 0x78], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor ebx, ebx
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne cl
sete dl
cmp eax, 0xa
setge al
setl ah
xor ah, dl
jne 0x446c84
or al, cl
jne 0x44a650
cmp ebx, 0x63
ja 0x446edc
mov dword [esi + 0x14], ebx
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x488], 0x1f
mov ecx, edi
push edx
push eax
lea eax, [esi + 0xd0]
push eax
call fcn.0041de80
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete ch
setne cl
cmp dword [0x5cf58c], 0xa
setl dh
setge dl
cmp dh, ch
jne 0x446ce2
or dl, cl
jne 0x44a680
mov dword [esi + 0x3b4], eax
lea ecx, [esi + 0x230]
push dword [esi + 0x234]
push dword [esi + 0x230]
lea eax, [esi + 0xd0]
push eax
call fcn.0041de80
mov dword [esi + 0x3b0], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x3b4]
push eax
lea eax, [esi + 0x3b0]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
lea edi, [esi + 0x74]
mov ebx, dword [esi + 0x14]
jne 0x446d5c
inc ebx
test dl, dl
jne 0x446c5c
inc ebx
jmp 0x446d53
cmp eax, 0x1baf90e1
je 0x449621
cmp eax, 0x1017ab6e
jne 0x446c05
movzx ecx, byte [esi + 0xe6]
movzx eax, byte [esi + 0xe7]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x8697eca9
mov ebx, 0xa7bf93b4
cmovne eax, ebx
test cl, cl
mov ecx, 0x8697eca9
cmove eax, ecx
test dl, dl
cmovne eax, ebx
jmp 0x446c05
mov dword [esi + 0x230], 1
mov dword [esi + 0x234], 0xa
mov dword [esi + 0x74], 0xf
mov dword [esi + 0x78], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor ebx, ebx
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp eax, 0xa
setl al
test al, cl
jne 0x446e06
xor al, cl
je 0x44a660
cmp ebx, 0x63
ja 0x4473fd
mov dword [esi + 0x14], ebx
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x488], 0x19
mov ecx, edi
push edx
push eax
lea eax, [esi + 0xdc]
push eax
call fcn.0041de80
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5cf58c], 0xa
setl dl
test dl, cl
jne 0x446e5e
xor dl, cl
je 0x44a670
mov dword [esi + 0x3cc], eax
lea ecx, [esi + 0x230]
push dword [esi + 0x234]
push dword [esi + 0x230]
lea eax, [esi + 0xdc]
push eax
call fcn.0041de80
mov dword [esi + 0x3c8], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x3cc]
push eax
lea eax, [esi + 0x3c8]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
lea edi, [esi + 0x74]
mov ebx, dword [esi + 0x14]
jne 0x446ed9
inc ebx
test dl, dl
jne 0x446de4
inc ebx
jmp 0x446ed0
lea ecx, [esi + 0x2f8]
call fcn.00540a80
mov eax, dword [esi + 0x120]
mov ecx, dword [esi + 0x124]
mov dword [esi + 0x30], eax
mov dword [esi + 0x68], ecx
cmp eax, ecx
jne 0x44703a
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
setne cl
sete dl
cmp eax, 0xa
setge al
setl ah
xor ah, dl
jne 0x446f36
or cl, al
jne 0x44a6c8
mov eax, dword [esi + 0x2f8]
mov ecx, dword [esi + 0x2fc]
mov dword [esi + 0x18], ecx
cmp eax, ecx
je 0x447949
mov ecx, dword [0x5cf590]
mov edx, dword [0x5cf594]
lea edi, [ecx + 1]
imul edi, ecx
mov ecx, edi
xor ecx, 0xfffffffe
mov dword [esi + 0x20], edi
mov dword [esi + 0x24], ecx
test ecx, edi
mov ebx, 0xbd723542
mov edi, 0xd08af799
cmove ebx, edi
sete cl
mov dword [esi + 0x1c], edx
cmp edx, 0xa
mov edx, 0xbd723542
cmovge ebx, edx
setl dl
xor dl, cl
cmovne ebx, edi
mov dword [esi + 0x28], ebx
xor edx, edx
jmp 0x446fb6
mov dword [esi + 0x94], eax
mov ecx, dword [esi + 0x94]
add edx, dword [ecx + 4]
sub edx, dword [ecx]
add eax, 8
cmp eax, dword [esi + 0x18]
je 0x447937
mov ecx, dword [esi + 0x24]
test dword [esi + 0x20], ecx
sete byte [esi + 0x50]
cmp dword [esi + 0x1c], 0xa
setl byte [esi + 0x40]
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x446fec
cmp ecx, 0xb4e27a0f
je 0x447029
cmp ecx, 0xbd723542
jne 0x446fcd
mov ecx, 0xb4e27a0f
jmp 0x446fcd
cmp ecx, 0xd08af799
je 0x446f99
cmp ecx, 0x553a1bc1
jne 0x446fcd
movzx ebx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, bl
xor ch, cl
mov edi, 0xbd723542
mov dword [esi + 0x14], eax
mov eax, 0xb4e27a0f
cmovne edi, eax
test cl, cl
mov ecx, edi
cmovne ecx, eax
mov eax, dword [esi + 0x14]
test bl, bl
cmove ecx, edi
jmp 0x446fcd
mov ecx, dword [esi + 0x28]
jmp 0x446fcd
mov dword [esi + 0x30], edi
cmp edi, dword [esi + 0x68]
je 0x446f19
mov eax, dword [0x5cf590]
lea ecx, [eax + 1]
imul ecx, eax
mov edx, dword [0x5cf594]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0x50]
sete cl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0x40]
setl dl
mov ebx, 0xbd723542
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
mov ecx, 0x553a1bc1
mov edi, dword [esi + 0x30]
cmp ecx, 0xd08af798
jg 0x4470a5
cmp ecx, 0xb4e27a0f
je 0x4470b7
cmp ecx, 0xbd723542
jne 0x447086
mov ecx, 0xb4e27a0f
jmp 0x447086
cmp ecx, 0xd08af799
je 0x4470e2
cmp ecx, 0x553a1bc1
jne 0x447086
jmp 0x4470bb
mov ecx, eax
jmp 0x447086
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x447083
mov dword [esi + 0x94], edi
mov eax, dword [esi + 0x94]
mov ecx, dword [esi + 0x2f8]
mov edx, dword [esi + 0x2fc]
mov bl, 1
mov dword [esi + 0x14], ecx
mov dword [esi + 0x34], edx
cmp ecx, edx
mov dword [esi + 0x18], eax
je 0x447372
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov edx, dword [0x5cf58c]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete al
cmp edx, 0xa
setl cl
test cl, al
jne 0x447141
xor cl, al
je 0x44725c
mov eax, dword [0x5cf590]
lea ecx, [eax + 1]
imul ecx, eax
mov edx, dword [0x5cf594]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0x50]
sete cl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0x40]
setl dl
mov ebx, 0xbd723542
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
mov ecx, 0x553a1bc1
nop word [eax + eax]
cmp ecx, 0xd08af798
jg 0x4471b0
cmp ecx, 0xb4e27a0f
je 0x4471e7
cmp ecx, 0xbd723542
jne 0x447190
mov ecx, 0xb4e27a0f
jmp 0x447190
cmp ecx, 0xd08af799
je 0x4471eb
cmp ecx, 0x553a1bc1
jne 0x447190
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x447190
mov ecx, eax
jmp 0x447190
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x38], eax
mov dword [esi + 0x20], edx
mov dword [esi + 0x28], edi
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x2c], edx
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
setne bl
sete dl
mov edi, dword [0x5cf58c]
mov dword [esi + 0x24], edi
cmp edi, 0xa
setge bh
setl dh
xor dh, dl
jne 0x447336
or bh, bl
je 0x447336
mov eax, dword [0x5cf590]
lea ecx, [eax + 1]
imul ecx, eax
mov edx, dword [0x5cf594]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0x50]
sete cl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0x40]
setl dl
mov ebx, 0xbd723542
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
mov ecx, 0x553a1bc1
jmp 0x4472b0
mov ecx, eax
nop dword [eax]
cmp ecx, 0xd08af798
jg 0x4472d0
cmp ecx, 0xb4e27a0f
je 0x4472a7
cmp ecx, 0xbd723542
jne 0x4472b0
mov ecx, 0xb4e27a0f
jmp 0x4472b0
cmp ecx, 0xd08af799
je 0x447307
cmp ecx, 0x553a1bc1
jne 0x4472b0
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x4472b0
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x447141
mov edx, dword [esi + 0x20]
mov edx, dword [edx]
cmp edx, dword [eax]
jle 0x44735b
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x34]
mov edx, dword [esi + 0x24]
jne 0x44711f
mov edi, dword [esi + 0x30]
mov bl, 1
jmp 0x447372
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov ecx, dword [esi + 0x28]
mov dword [ecx], eax
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov dword [ecx + 4], eax
xor ebx, ebx
mov edi, dword [esi + 0x30]
mov edx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x44739b
xor dh, dl
je 0x44a6a4
test bl, bl
je 0x4473ce
mov dword [esi + 0x488], 0x20
lea ecx, [esi + 0x2f8]
push dword [esi + 0x18]
call fcn.00540ea0
mov edx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea ecx, [edx - 1]
imul ecx, edx
and ecx, 1
mov edi, dword [esi + 0x30]
test ecx, ecx
setne dh
sete bl
cmp eax, 0xa
setge dl
setl bh
xor bh, bl
or dl, dh
xor dl, 1
or dl, bh
cmp dl, 1
jne 0x4473f8
add edi, 8
test dl, dl
jne 0x44702e
add edi, 8
jmp 0x4473ed
lea ecx, [esi + 0x31c]
call fcn.00540a80
mov eax, dword [esi + 0x120]
mov ecx, dword [esi + 0x124]
mov dword [esi + 0x30], eax
mov dword [esi + 0xac], ecx
cmp eax, ecx
jne 0x447558
mov edx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
test ecx, ecx
sete cl
cmp edi, 0xa
setl al
test cl, al
jne 0x447451
xor cl, al
je 0x44a6ca
mov eax, dword [esi + 0x31c]
mov ecx, dword [esi + 0x320]
mov dword [esi + 0x14], ecx
cmp eax, ecx
je 0x44874b
mov ecx, dword [0x5cf590]
mov edi, dword [0x5cf594]
lea ebx, [ecx + 1]
imul ebx, ecx
mov ecx, ebx
and ecx, 1
sete cl
cmp edi, 0xa
setl dl
xor dl, cl
mov ecx, 0xbd723542
mov edx, 0xd08af799
cmovne ecx, edx
and ebx, 1
mov dword [esi + 0x1c], ebx
mov ebx, ecx
cmove ebx, edx
mov dword [esi + 0x18], edi
cmp edi, 0xa
cmovge ebx, ecx
mov dword [esi + 0x20], ebx
xor ecx, ecx
jmp 0x4474cf
mov dword [esi + 0x94], eax
mov edx, dword [esi + 0x94]
add ecx, dword [edx + 4]
sub ecx, dword [edx]
add eax, 8
cmp eax, dword [esi + 0x14]
je 0x448739
cmp dword [esi + 0x1c], 0
sete byte [esi + 0x50]
cmp dword [esi + 0x18], 0xa
setl byte [esi + 0x40]
mov ebx, 0x553a1bc1
cmp ebx, 0xd08af798
jg 0x447503
cmp ebx, 0xb4e27a0f
je 0x447544
cmp ebx, 0xbd723542
jne 0x4474e4
mov ebx, 0xb4e27a0f
jmp 0x4474e4
cmp ebx, 0xd08af799
je 0x4474b2
cmp ebx, 0x553a1bc1
jne 0x4474e4
movzx edx, byte [esi + 0x50]
movzx ebx, byte [esi + 0x40]
mov dh, bl
xor dh, dl
test bl, bl
mov ebx, 0xbd723542
mov edi, 0xb4e27a0f
cmovne ebx, edi
test dl, dl
mov edi, 0xbd723542
cmove ebx, edi
test dh, dh
mov edx, 0xb4e27a0f
cmovne ebx, edx
jmp 0x4474e4
mov ebx, dword [esi + 0x20]
jmp 0x4474e4
mov dword [esi + 0x30], eax
cmp eax, dword [esi + 0xac]
je 0x44743a
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x50]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edi
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x4475c2
cmp ecx, 0xb4e27a0f
je 0x4475f9
cmp ecx, 0xbd723542
jne 0x4475a3
mov ecx, 0xb4e27a0f
jmp 0x4475a3
cmp ecx, 0xd08af799
je 0x4475fd
cmp ecx, 0x553a1bc1
jne 0x4475a3
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x4475a3
mov ecx, eax
jmp 0x4475a3
mov eax, dword [esi + 0x30]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x94]
mov edx, dword [esi + 0x31c]
mov edi, dword [esi + 0x320]
mov cl, 1
mov dword [esi + 0x68], ecx
mov dword [esi + 0x14], edx
mov dword [esi + 0x34], edi
cmp edx, edi
mov dword [esi + 0x18], eax
je 0x4478a1
add eax, 4
mov dword [esi + 0x1c], eax
mov edi, dword [0x5cf588]
mov ecx, dword [0x5cf58c]
lea eax, [edi + 1]
imul eax, edi
test al, 1
sete dl
cmp ecx, 0xa
setl ch
setge cl
cmp ch, dl
jne 0x44767b
or cl, al
test cl, 1
jne 0x44779d
jmp 0x44767b
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x24]
jne 0x447640
jmp 0x4478a1
mov eax, dword [0x5cf590]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, dword [0x5cf594]
sete byte [esi + 0x50]
sete dl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
setl cl
mov ebx, 0xbd723542
cmovge eax, ebx
xor cl, dl
cmovne eax, edi
mov ecx, 0x553a1bc1
nop word cs:[eax + eax]
cmp ecx, 0xd08af798
jg 0x4476f0
cmp ecx, 0xb4e27a0f
je 0x44772c
cmp ecx, 0xbd723542
jne 0x4476d0
mov ecx, 0xb4e27a0f
jmp 0x4476d0
cmp ecx, 0xd08af799
je 0x447730
cmp ecx, 0x553a1bc1
jne 0x4476d0
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x4476d0
mov ecx, eax
jmp 0x4476d0
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x38], eax
mov dword [esi + 0x20], edx
mov dword [esi + 0x28], edi
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x2c], edx
mov edi, dword [0x5cf588]
lea ebx, [edi + 1]
imul ebx, edi
test bl, 1
sete dh
mov ecx, dword [0x5cf58c]
mov dword [esi + 0x24], ecx
cmp ecx, 0xa
setge dl
setl cl
xor cl, dh
jne 0x44787b
or dl, bl
test dl, 1
je 0x44787b
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x50]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edx
mov ecx, 0x553a1bc1
jmp 0x4477f0
mov ecx, eax
nop
cmp ecx, 0xd08af798
jg 0x447810
cmp ecx, 0xb4e27a0f
je 0x4477ec
cmp ecx, 0xbd723542
jne 0x4477f0
mov ecx, 0xb4e27a0f
jmp 0x4477f0
cmp ecx, 0xd08af799
je 0x44784c
cmp ecx, 0x553a1bc1
jne 0x4477f0
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x4477f0
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x44767b
mov ecx, dword [esi + 0x20]
mov ecx, dword [ecx]
cmp ecx, dword [eax]
jg 0x447665
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov ecx, dword [esi + 0x28]
mov dword [ecx], eax
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov dword [ecx + 4], eax
mov dword [esi + 0x68], 0
mov ecx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
and ecx, 1
sete bh
cmp edi, 0xa
setge bl
setl al
xor al, bh
jne 0x4478d3
or bl, dl
test bl, 1
jne 0x44a6a2
cmp byte [esi + 0x68], 0
je 0x447909
mov dword [esi + 0x488], 0x1a
lea ecx, [esi + 0x31c]
push dword [esi + 0x18]
call fcn.00540ea0
mov eax, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea edx, [eax + 1]
imul edx, eax
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
setne dl
cmp edi, 0xa
setge al
mov ah, dl
xor ah, al
or dl, al
xor dl, 1
or dl, ah
cmp dl, 1
mov eax, dword [esi + 0x30]
jne 0x447932
add eax, 8
test dl, dl
jne 0x447549
add eax, 8
jmp 0x447927
cmp edx, 0x12345678
jne 0x447949
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x2f8]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, dword [0x5cf5d8]
mov ecx, dword [0x5cf5dc]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xe8]
cmp ecx, 0xa
setl byte [esi + 0xe9]
mov eax, 0xf0179c37
cmp eax, 0x3b2082cd
jg 0x447ae4
cmp eax, 0xf0179c37
je 0x447c37
cmp eax, 0x22e595fa
jne 0x44798d
mov dword [esi + 0x230], 1
mov dword [esi + 0x234], 0xa
mov dword [esi + 0x74], 0xf
mov dword [esi + 0x78], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor ebx, ebx
mov edi, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp edi, 0xa
setl al
test al, cl
jne 0x447a07
xor al, cl
je 0x44a6b0
mov dword [esi + 0x14], ebx
cmp ebx, 0x63
lea ecx, [esi + 0x74]
ja 0x447c6c
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x488], 0x1d
push edx
push eax
lea eax, [esi + 0xd4]
push eax
call fcn.0041de80
mov edx, dword [0x5cf588]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dh
cmp dword [0x5cf58c], 0xa
setge dl
setl bl
xor bl, dh
jne 0x447a62
or dl, cl
test dl, 1
jne 0x44a6ba
mov dword [esi + 0x3bc], eax
lea ecx, [esi + 0x230]
push dword [esi + 0x234]
push dword [esi + 0x230]
lea eax, [esi + 0xd4]
push eax
call fcn.0041de80
mov dword [esi + 0x3b8], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x3bc]
push eax
lea eax, [esi + 0x3b8]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea ebx, [ecx + 1]
imul ebx, ecx
test bl, 1
sete dh
cmp edi, 0xa
setge dl
setl al
or dl, bl
xor al, dh
xor dl, 1
or dl, al
test dl, 1
mov ebx, dword [esi + 0x14]
je 0x447ae1
inc ebx
test dl, 1
jne 0x4479e5
inc ebx
jmp 0x447ad7
cmp eax, 0x3b2082ce
je 0x449543
cmp eax, 0x4c711ccb
jne 0x44798d
mov dword [esi + 0x230], 1
mov dword [esi + 0x234], 0xa
mov dword [esi + 0x74], 0xf
mov dword [esi + 0x78], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor edi, edi
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dl
cmp eax, 0xa
setl al
test al, dl
lea ecx, [esi + 0x74]
jne 0x447b5a
xor al, dl
je 0x44a6ae
mov dword [esi + 0x14], edi
cmp edi, 0x63
ja 0x448186
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x488], 0x1b
push edx
push eax
lea eax, [esi + 0xd8]
push eax
call fcn.0041de80
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5cf58c], 0xa
setl dl
test dl, cl
jne 0x447bb0
xor dl, cl
je 0x44a6b6
mov dword [esi + 0x3c4], eax
lea ecx, [esi + 0x230]
push dword [esi + 0x234]
push dword [esi + 0x230]
lea eax, [esi + 0xd8]
push eax
call fcn.0041de80
mov dword [esi + 0x3c0], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x3c4]
push eax
lea eax, [esi + 0x3c0]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
setne dh
sete bl
cmp eax, 0xa
setge dl
setl bh
xor bh, bl
or dl, dh
xor dl, 1
or dl, bh
cmp dl, 1
mov edi, dword [esi + 0x14]
jne 0x447c34
inc edi
test dl, dl
jne 0x447b34
inc edi
jmp 0x447c2b
movzx ecx, byte [esi + 0xe8]
movzx eax, byte [esi + 0xe9]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x4c711ccb
mov edi, 0x22e595fa
cmovne eax, edi
test cl, cl
mov ecx, 0x4c711ccb
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x44798d
lea ecx, [esi + 0x304]
call fcn.00540a80
mov eax, dword [esi + 0x120]
mov ecx, dword [esi + 0x124]
mov dword [esi + 0x2c], eax
mov dword [esi + 0x30], ecx
cmp eax, ecx
jne 0x447dca
mov edx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
test ecx, ecx
sete dl
setne cl
cmp edi, 0xa
setl ah
setge al
cmp dl, ah
jne 0x447cc3
or cl, al
jne 0x44a6d2
mov eax, dword [esi + 0x304]
mov ecx, dword [esi + 0x308]
mov dword [esi + 0x18], ecx
mov dword [esi + 0x14], eax
cmp eax, ecx
je 0x4486b3
mov ecx, dword [0x5cf590]
mov edx, dword [0x5cf594]
lea edi, [ecx + 1]
imul edi, ecx
mov ecx, edi
xor ecx, 0xfffffffe
mov dword [esi + 0x20], edi
mov dword [esi + 0x24], ecx
test ecx, edi
mov ebx, 0xbd723542
mov edi, 0xd08af799
cmove ebx, edi
sete cl
mov dword [esi + 0x1c], edx
cmp edx, 0xa
mov edx, 0xbd723542
cmovge ebx, edx
setl dl
xor dl, cl
cmovne ebx, edi
mov dword [esi + 0x28], ebx
xor edx, edx
jmp 0x447d4c
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov ecx, dword [esi + 0x94]
add edx, dword [ecx + 4]
sub edx, dword [ecx]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x18]
je 0x4486a1
mov ecx, dword [esi + 0x24]
test dword [esi + 0x20], ecx
sete byte [esi + 0x50]
cmp dword [esi + 0x1c], 0xa
setl byte [esi + 0x40]
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x447d82
cmp ecx, 0xb4e27a0f
je 0x447db9
cmp ecx, 0xbd723542
jne 0x447d63
mov ecx, 0xb4e27a0f
jmp 0x447d63
cmp ecx, 0xd08af799
je 0x447d29
cmp ecx, 0x553a1bc1
jne 0x447d63
movzx ebx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, bl
xor ch, cl
mov edi, 0xbd723542
mov eax, 0xb4e27a0f
cmovne edi, eax
test cl, cl
mov ecx, edi
cmovne ecx, eax
test bl, bl
cmove ecx, edi
jmp 0x447d63
mov ecx, dword [esi + 0x28]
jmp 0x447d63
mov dword [esi + 0x2c], eax
cmp eax, dword [esi + 0x30]
je 0x447ca6
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x50]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edi
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x447e34
cmp ecx, 0xb4e27a0f
je 0x447e70
cmp ecx, 0xbd723542
jne 0x447e15
mov ecx, 0xb4e27a0f
jmp 0x447e15
cmp ecx, 0xd08af799
je 0x447e74
cmp ecx, 0x553a1bc1
jne 0x447e15
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x447e15
mov ecx, eax
jmp 0x447e15
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x94]
mov dword [esi + 0x18], eax
mov ecx, dword [esi + 0x304]
mov edx, dword [esi + 0x308]
mov al, 1
mov dword [esi + 0x34], eax
mov dword [esi + 0x14], ecx
mov dword [esi + 0x38], edx
cmp ecx, edx
je 0x4480f9
mov eax, dword [esi + 0x18]
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov edx, dword [0x5cf58c]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete ch
cmp edx, 0xa
setl dl
setge cl
cmp dl, ch
jne 0x447ef2
or cl, al
test cl, 1
jne 0x448002
jmp 0x447ef2
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x38]
jne 0x447eba
jmp 0x4480f9
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x50]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edi
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x447f5c
cmp ecx, 0xb4e27a0f
je 0x447f98
cmp ecx, 0xbd723542
jne 0x447f3d
mov ecx, 0xb4e27a0f
jmp 0x447f3d
cmp ecx, 0xd08af799
je 0x447f9c
cmp ecx, 0x553a1bc1
jne 0x447f3d
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x447f3d
mov ecx, eax
jmp 0x447f3d
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], edx
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x28], edx
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
mov edx, dword [0x5cf58c]
sete bl
cmp edx, 0xa
setl bh
test bh, bl
jne 0x4480d6
xor bh, bl
jne 0x4480d6
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x50]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edi
mov ecx, 0x553a1bc1
jmp 0x448051
mov ecx, eax
cmp ecx, 0xd08af798
jg 0x448070
cmp ecx, 0xb4e27a0f
je 0x44804f
cmp ecx, 0xbd723542
jne 0x448051
mov ecx, 0xb4e27a0f
jmp 0x448051
cmp ecx, 0xd08af799
je 0x4480a7
cmp ecx, 0x553a1bc1
jne 0x448051
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x448051
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x447ef2
mov ebx, dword [esi + 0x20]
mov ebx, dword [ebx]
cmp ebx, dword [eax]
jg 0x447edf
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov dword [esi + 0x34], 0
mov ecx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
and ecx, 1
sete bh
cmp edi, 0xa
setge bl
setl al
xor al, bh
jne 0x44812b
or bl, dl
test bl, 1
jne 0x44a6c6
cmp byte [esi + 0x34], 0
je 0x448161
mov dword [esi + 0x488], 0x1e
lea ecx, [esi + 0x304]
push dword [esi + 0x18]
call fcn.00540ea0
mov eax, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea edx, [eax + 1]
imul edx, eax
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
sete al
cmp edi, 0xa
setl dl
or dl, al
cmp dl, 1
mov eax, dword [esi + 0x2c]
jne 0x448181
add eax, 8
test dl, dl
jne 0x447dbe
add eax, 8
jmp 0x448176
lea ecx, [esi + 0x310]
call fcn.00540a80
mov edi, dword [esi + 0x120]
mov eax, dword [esi + 0x124]
mov dword [esi + 0xac], eax
cmp edi, eax
jne 0x4482d8
mov edx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea ecx, [edx - 1]
imul ecx, edx
and ecx, 1
test ecx, ecx
sete cl
cmp eax, 0xa
setl al
test cl, al
jne 0x4481d6
xor cl, al
je 0x44a6cc
mov ecx, dword [esi + 0x310]
mov eax, dword [esi + 0x314]
mov dword [esi + 0x18], eax
mov dword [esi + 0x14], ecx
cmp ecx, eax
je 0x448719
mov ecx, dword [0x5cf590]
mov edx, dword [0x5cf594]
lea eax, [ecx + 1]
imul eax, ecx
and eax, 1
mov dword [esi + 0x20], eax
sete cl
mov ebx, 0xbd723542
mov eax, 0xd08af799
cmove ebx, eax
mov dword [esi + 0x1c], edx
cmp edx, 0xa
setl ch
mov edx, 0xbd723542
cmovge ebx, edx
xor ch, cl
cmovne ebx, eax
mov dword [esi + 0x24], ebx
xor ecx, ecx
jmp 0x448258
mov edx, dword [esi + 0x14]
mov dword [esi + 0x94], edx
mov eax, dword [esi + 0x94]
add ecx, dword [eax + 4]
sub ecx, dword [eax]
add edx, 8
mov dword [esi + 0x14], edx
cmp edx, dword [esi + 0x18]
je 0x448707
cmp dword [esi + 0x20], 0
sete byte [esi + 0x50]
cmp dword [esi + 0x1c], 0xa
setl byte [esi + 0x40]
mov ebx, 0x553a1bc1
cmp ebx, 0xd08af798
jg 0x44828c
cmp ebx, 0xb4e27a0f
je 0x4482c7
cmp ebx, 0xbd723542
jne 0x44826d
mov ebx, 0xb4e27a0f
jmp 0x44826d
cmp ebx, 0xd08af799
je 0x448235
cmp ebx, 0x553a1bc1
jne 0x44826d
movzx eax, byte [esi + 0x50]
mov dh, byte [esi + 0x40]
mov dl, al
xor dl, dh
test dh, dh
mov ebx, 0xbd723542
mov edi, 0xb4e27a0f
cmovne ebx, edi
test al, al
mov eax, 0xbd723542
cmove ebx, eax
test dl, dl
cmovne ebx, edi
jmp 0x44826d
mov ebx, dword [esi + 0x24]
jmp 0x44826d
cmp edi, dword [esi + 0xac]
je 0x4481bf
mov dword [esi + 0x30], edi
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x50]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edx
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x448347
cmp ecx, 0xb4e27a0f
je 0x44837e
cmp ecx, 0xbd723542
jne 0x448328
mov ecx, 0xb4e27a0f
jmp 0x448328
cmp ecx, 0xd08af799
je 0x448382
cmp ecx, 0x553a1bc1
jne 0x448328
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x448328
mov ecx, eax
jmp 0x448328
mov eax, dword [esi + 0x30]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x94]
mov dword [esi + 0x18], eax
mov ecx, dword [esi + 0x310]
mov edx, dword [esi + 0x314]
mov al, 1
mov dword [esi + 0x68], eax
mov dword [esi + 0x14], ecx
mov dword [esi + 0x34], edx
cmp ecx, edx
je 0x448617
mov eax, dword [esi + 0x18]
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov edx, dword [0x5cf58c]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete al
cmp edx, 0xa
setl cl
test cl, al
jne 0x448402
xor cl, al
je 0x44851f
jmp 0x448402
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x34]
mov edx, dword [esi + 0x24]
jne 0x4483c8
jmp 0x448617
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x50]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edx
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x44846e
cmp ecx, 0xb4e27a0f
je 0x4484aa
cmp ecx, 0xbd723542
jne 0x44844f
mov ecx, 0xb4e27a0f
jmp 0x44844f
cmp ecx, 0xd08af799
je 0x4484ae
cmp ecx, 0x553a1bc1
jne 0x44844f
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x44844f
mov ecx, eax
jmp 0x44844f
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x38], eax
mov dword [esi + 0x20], edx
mov dword [esi + 0x28], edi
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x2c], edx
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
setne bl
sete dl
mov edi, dword [0x5cf58c]
mov dword [esi + 0x24], edi
cmp edi, 0xa
setge bh
setl dh
xor dh, dl
jne 0x4485f1
or bh, bl
je 0x4485f1
mov eax, dword [0x5cf590]
lea ecx, [eax - 1]
imul ecx, eax
mov edx, dword [0x5cf594]
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete byte [esi + 0x50]
sete cl
mov eax, 0xbd723542
mov edi, 0xd08af799
cmove eax, edi
cmp edx, 0xa
setl byte [esi + 0x40]
setl dl
mov ebx, 0xbd723542
cmovge eax, ebx
xor dl, cl
cmovne eax, edi
mov ecx, 0x553a1bc1
jmp 0x44856c
mov ecx, eax
cmp ecx, 0xd08af798
jg 0x44858b
cmp ecx, 0xb4e27a0f
je 0x44856a
cmp ecx, 0xbd723542
jne 0x44856c
mov ecx, 0xb4e27a0f
jmp 0x44856c
cmp ecx, 0xd08af799
je 0x4485c2
cmp ecx, 0x553a1bc1
jne 0x44856c
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x44856c
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x448402
mov edx, dword [esi + 0x20]
mov edx, dword [edx]
cmp edx, dword [eax]
jg 0x4483ec
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov ecx, dword [esi + 0x28]
mov dword [ecx], eax
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov dword [ecx + 4], eax
mov dword [esi + 0x68], 0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
sete bl
setne dl
cmp eax, 0xa
setl bh
setge dh
cmp bh, bl
jne 0x44864a
or dh, dl
jne 0x44a6c2
cmp byte [esi + 0x68], 0
je 0x44867c
mov dword [esi + 0x488], 0x1c
lea ecx, [esi + 0x310]
push dword [esi + 0x18]
call fcn.00540ea0
mov edx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea ecx, [edx - 1]
imul ecx, edx
and ecx, 1
test ecx, ecx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
mov edi, dword [esi + 0x30]
jne 0x44869c
add edi, 8
test dl, dl
jne 0x4482cc
add edi, 8
jmp 0x448691
cmp edx, 0x12345678
jne 0x4486b3
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x304]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, dword [0x5cf5d8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x4c711ccb
mov edi, 0x3b2082ce
cmove eax, edi
cmp dword [0x5cf5dc], 0xa
mov edx, 0x4c711ccb
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
jmp 0x44798d
cmp ecx, 0x12345678
jne 0x448719
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x310]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, 0x22e595fa
jmp 0x44798d
cmp ecx, 0x12345678
jne 0x44874b
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x31c]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, dword [0x5cf5d8]
mov ecx, dword [0x5cf5dc]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esi + 0xea]
cmp ecx, 0xa
setl byte [esi + 0xeb]
mov eax, 0xf0179c37
cmp eax, 0x3b2082cd
jg 0x4488e5
cmp eax, 0xf0179c37
je 0x448a2b
cmp eax, 0x22e595fa
jne 0x44878f
mov dword [esi + 0x230], 1
mov dword [esi + 0x234], 0xa
mov dword [esi + 0x74], 0xf
mov dword [esi + 0x78], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor edi, edi
mov eax, dword [0x5cf58c]
lea edx, [ecx - 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dl
cmp eax, 0xa
setl al
test al, dl
lea ecx, [esi + 0x74]
jne 0x44880c
xor al, dl
je 0x44a6b2
mov dword [esi + 0x14], edi
cmp edi, 0x63
ja 0x448a60
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x488], 0x17
push edx
push eax
lea eax, [esi + 0xe0]
push eax
call fcn.0041de80
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5cf58c], 0xa
setl dl
test dl, cl
jne 0x448862
xor dl, cl
je 0x44a6bc
mov dword [esi + 0x3d4], eax
lea ecx, [esi + 0x230]
push dword [esi + 0x234]
push dword [esi + 0x230]
lea eax, [esi + 0xe0]
push eax
call fcn.0041de80
mov dword [esi + 0x3d0], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x3d4]
push eax
lea eax, [esi + 0x3d0]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
setne dh
cmp eax, 0xa
setge dl
mov ebx, edx
xor bl, dh
or dl, dh
xor dl, 1
or dl, bl
cmp dl, 1
mov edi, dword [esi + 0x14]
jne 0x4488e2
inc edi
test dl, dl
jne 0x4487e6
inc edi
jmp 0x4488d9
cmp eax, 0x3b2082ce
je 0x449585
cmp eax, 0x4c711ccb
jne 0x44878f
mov dword [esi + 0x230], 1
mov dword [esi + 0x234], 0xa
mov dword [esi + 0x74], 0xf
mov dword [esi + 0x78], 0x1e
lea ecx, [esi + 0x120]
call fcn.00540a80
mov ecx, dword [0x5cf588]
xor edi, edi
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete dl
cmp eax, 0xa
setl al
test al, dl
lea ecx, [esi + 0x74]
jne 0x44895b
xor al, dl
je 0x44a6b4
mov dword [esi + 0x14], edi
cmp edi, 0x63
ja 0x448f73
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
mov dword [esi + 0x488], 0x15
push edx
push eax
lea eax, [esi + 0xe4]
push eax
call fcn.0041de80
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5cf58c], 0xa
setl dl
test dl, cl
jne 0x4489b1
xor dl, cl
je 0x44a6b8
mov dword [esi + 0x3dc], eax
lea ecx, [esi + 0x230]
push dword [esi + 0x234]
push dword [esi + 0x230]
lea eax, [esi + 0xe4]
push eax
call fcn.0041de80
mov dword [esi + 0x3d8], eax
lea ecx, [esi + 0x120]
lea eax, [esi + 0x3dc]
push eax
lea eax, [esi + 0x3d8]
push eax
call fcn.004341a0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov edi, edx
xor edi, 0xfffffffe
test edi, edx
sete dh
cmp eax, 0xa
setl dl
or dl, dh
cmp dl, 1
mov edi, dword [esi + 0x14]
jne 0x448a28
inc edi
test dl, dl
jne 0x448935
inc edi
jmp 0x448a1f
movzx ecx, byte [esi + 0xea]
movzx eax, byte [esi + 0xeb]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0x4c711ccb
mov edi, 0x22e595fa
cmovne eax, edi
test cl, cl
mov ecx, 0x4c711ccb
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x44878f
lea ecx, [esi + 0x328]
call fcn.00540a80
mov eax, dword [esi + 0x120]
mov ecx, dword [esi + 0x124]
mov dword [esi + 0x30], ecx
cmp eax, ecx
jne 0x448bb5
mov edx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
test ecx, ecx
sete cl
cmp edi, 0xa
setl al
test cl, al
jne 0x448aae
xor cl, al
je 0x44a6ce
mov eax, dword [esi + 0x328]
mov ecx, dword [esi + 0x32c]
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x14], eax
cmp eax, ecx
je 0x4494b8
mov ecx, dword [0x5cf590]
mov edi, dword [0x5cf594]
mov dword [esi + 0x18], edi
lea ebx, [ecx + 1]
imul ebx, ecx
mov ecx, ebx
xor ecx, 0xfffffffe
test ecx, ebx
sete dh
cmp edi, 0xa
setl dl
xor dl, dh
mov edx, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
mov dword [esi + 0x20], ebx
mov dword [esi + 0x24], ecx
test ecx, ebx
mov ecx, edx
cmove ecx, edi
cmp dword [esi + 0x18], 0xa
cmovge ecx, edx
mov dword [esi + 0x28], ecx
xor edx, edx
jmp 0x448b3a
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov ecx, dword [esi + 0x94]
add edx, dword [ecx + 4]
sub edx, dword [ecx]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x1c]
je 0x4494a6
mov ecx, dword [esi + 0x24]
test dword [esi + 0x20], ecx
sete byte [esi + 0x50]
cmp dword [esi + 0x18], 0xa
setl byte [esi + 0x40]
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x448b70
cmp ecx, 0xb4e27a0f
je 0x448ba7
cmp ecx, 0xbd723542
jne 0x448b51
mov ecx, 0xb4e27a0f
jmp 0x448b51
cmp ecx, 0xd08af799
je 0x448b17
cmp ecx, 0x553a1bc1
jne 0x448b51
movzx ebx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, bl
xor ch, cl
mov edi, 0xbd723542
mov eax, 0xb4e27a0f
cmovne edi, eax
test cl, cl
mov ecx, edi
cmovne ecx, eax
test bl, bl
cmove ecx, edi
jmp 0x448b51
mov ecx, dword [esi + 0x28]
jmp 0x448b51
cmp eax, dword [esi + 0x30]
je 0x448a97
mov dword [esi + 0x2c], eax
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x50]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edx
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x448c24
cmp ecx, 0xb4e27a0f
je 0x448c5b
cmp ecx, 0xbd723542
jne 0x448c05
mov ecx, 0xb4e27a0f
jmp 0x448c05
cmp ecx, 0xd08af799
je 0x448c5f
cmp ecx, 0x553a1bc1
jne 0x448c05
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x448c05
mov ecx, eax
jmp 0x448c05
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x94]
mov dword [esi + 0x18], eax
mov ecx, dword [esi + 0x328]
mov edx, dword [esi + 0x32c]
mov al, 1
mov dword [esi + 0x34], eax
mov dword [esi + 0x14], ecx
mov dword [esi + 0x38], edx
cmp ecx, edx
je 0x448eea
mov eax, dword [esi + 0x18]
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov edx, dword [0x5cf58c]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete ch
cmp edx, 0xa
setge cl
setl dl
xor dl, ch
jne 0x448cdd
or cl, al
test cl, 1
jne 0x448dee
jmp 0x448cdd
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x38]
jne 0x448ca5
jmp 0x448eea
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x50]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edx
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x448d49
cmp ecx, 0xb4e27a0f
je 0x448d85
cmp ecx, 0xbd723542
jne 0x448d2a
mov ecx, 0xb4e27a0f
jmp 0x448d2a
cmp ecx, 0xd08af799
je 0x448d89
cmp ecx, 0x553a1bc1
jne 0x448d2a
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x448d2a
mov ecx, eax
jmp 0x448d2a
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], edx
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x28], edx
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
mov edx, dword [0x5cf58c]
sete bl
cmp edx, 0xa
setl bh
test bh, bl
jne 0x448ec7
xor bh, bl
jne 0x448ec7
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov ebx, 0xd08af799
cmovne edi, ebx
test edx, eax
sete byte [esi + 0x50]
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edi
mov ecx, 0x553a1bc1
jmp 0x448e3d
mov ecx, eax
cmp ecx, 0xd08af798
jg 0x448e5c
cmp ecx, 0xb4e27a0f
je 0x448e3b
cmp ecx, 0xbd723542
jne 0x448e3d
mov ecx, 0xb4e27a0f
jmp 0x448e3d
cmp ecx, 0xd08af799
je 0x448e98
cmp ecx, 0x553a1bc1
jne 0x448e3d
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne ecx, ebx
test dl, dl
mov edi, 0xbd723542
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
jmp 0x448e3d
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x448cdd
mov ebx, dword [esi + 0x20]
mov ebx, dword [ebx]
cmp ebx, dword [eax]
jg 0x448cca
mov eax, dword [esi + 0x24]
mov eax, dword [eax]
mov dword [edi], eax
mov eax, dword [esi + 0x28]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov dword [esi + 0x34], 0
mov ecx, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
and ecx, 1
sete bh
cmp edi, 0xa
setl al
setge bl
cmp al, bh
jne 0x448f1c
or bl, dl
test bl, 1
jne 0x44a6c4
cmp byte [esi + 0x34], 0
je 0x448f4e
mov dword [esi + 0x488], 0x18
lea ecx, [esi + 0x328]
push dword [esi + 0x18]
call fcn.00540ea0
mov eax, dword [0x5cf588]
mov edi, dword [0x5cf58c]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
test ecx, ecx
sete al
cmp edi, 0xa
setl dl
or dl, al
cmp dl, 1
mov eax, dword [esi + 0x2c]
jne 0x448f6e
add eax, 8
test dl, dl
jne 0x448bac
add eax, 8
jmp 0x448f63
lea ecx, [esi + 0x334]
call fcn.00540a80
mov edi, dword [esi + 0x120]
mov eax, dword [esi + 0x124]
mov dword [esi + 0xac], eax
cmp edi, eax
jne 0x4490d1
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
sete dl
setne cl
cmp eax, 0xa
setl ah
setge al
cmp dl, ah
jne 0x448fcd
or cl, al
jne 0x44a6d0
mov eax, dword [esi + 0x334]
mov ecx, dword [esi + 0x338]
mov dword [esi + 0x14], ecx
cmp eax, ecx
je 0x449523
mov ecx, dword [0x5cf590]
mov edi, dword [0x5cf594]
lea ebx, [ecx + 1]
imul ebx, ecx
mov ecx, ebx
and ecx, 1
sete cl
cmp edi, 0xa
setl dl
xor dl, cl
mov ecx, 0xbd723542
mov edx, 0xd08af799
cmovne ecx, edx
and ebx, 1
mov dword [esi + 0x1c], ebx
mov ebx, ecx
cmove ebx, edx
mov dword [esi + 0x18], edi
cmp edi, 0xa
cmovge ebx, ecx
mov dword [esi + 0x20], ebx
xor ecx, ecx
jmp 0x44904b
mov dword [esi + 0x94], eax
mov edx, dword [esi + 0x94]
add ecx, dword [edx + 4]
sub ecx, dword [edx]
add eax, 8
cmp eax, dword [esi + 0x14]
je 0x449511
cmp dword [esi + 0x1c], 0
sete byte [esi + 0x50]
cmp dword [esi + 0x18], 0xa
setl byte [esi + 0x40]
mov ebx, 0x553a1bc1
cmp ebx, 0xd08af798
jg 0x44907f
cmp ebx, 0xb4e27a0f
je 0x4490c0
cmp ebx, 0xbd723542
jne 0x449060
mov ebx, 0xb4e27a0f
jmp 0x449060
cmp ebx, 0xd08af799
je 0x44902e
cmp ebx, 0x553a1bc1
jne 0x449060
movzx edx, byte [esi + 0x50]
movzx ebx, byte [esi + 0x40]
mov dh, bl
xor dh, dl
test bl, bl
mov ebx, 0xbd723542
mov edi, 0xb4e27a0f
cmovne ebx, edi
test dl, dl
mov edi, 0xbd723542
cmove ebx, edi
test dh, dh
mov edx, 0xb4e27a0f
cmovne ebx, edx
jmp 0x449060
mov ebx, dword [esi + 0x20]
jmp 0x449060
cmp edi, dword [esi + 0xac]
je 0x448fb0
mov dword [esi + 0x30], edi
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x50]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edx
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x449140
cmp ecx, 0xb4e27a0f
je 0x449177
cmp ecx, 0xbd723542
jne 0x449121
mov ecx, 0xb4e27a0f
jmp 0x449121
cmp ecx, 0xd08af799
je 0x44917b
cmp ecx, 0x553a1bc1
jne 0x449121
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x449121
mov ecx, eax
jmp 0x449121
mov eax, dword [esi + 0x30]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x94]
mov dword [esi + 0x18], eax
mov ecx, dword [esi + 0x334]
mov edx, dword [esi + 0x338]
mov al, 1
mov dword [esi + 0x68], eax
mov dword [esi + 0x14], ecx
mov dword [esi + 0x34], edx
cmp ecx, edx
je 0x44940f
mov eax, dword [esi + 0x18]
add eax, 4
mov dword [esi + 0x1c], eax
mov ecx, dword [0x5cf588]
mov edx, dword [0x5cf58c]
lea eax, [ecx + 1]
imul eax, ecx
mov ecx, eax
xor ecx, 0xfffffffe
test ecx, eax
sete al
cmp edx, 0xa
setl cl
test cl, al
jne 0x4491fb
xor cl, al
je 0x449313
jmp 0x4491fb
mov eax, dword [esi + 0x14]
add eax, 8
mov dword [esi + 0x14], eax
cmp eax, dword [esi + 0x34]
mov edx, dword [esi + 0x24]
jne 0x4491c1
jmp 0x44940f
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x50]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edx
mov ecx, 0x553a1bc1
cmp ecx, 0xd08af798
jg 0x449267
cmp ecx, 0xb4e27a0f
je 0x44929e
cmp ecx, 0xbd723542
jne 0x449248
mov ecx, 0xb4e27a0f
jmp 0x449248
cmp ecx, 0xd08af799
je 0x4492a2
cmp ecx, 0x553a1bc1
jne 0x449248
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x449248
mov ecx, eax
jmp 0x449248
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
mov dword [esi + 0x38], eax
mov dword [esi + 0x20], edx
mov dword [esi + 0x28], edi
lea eax, [edi + 4]
push dword [esi + 0x1c]
push eax
call fcn.00433d30
add esp, 8
mov dword [esi + 0x2c], edx
mov ecx, dword [0x5cf588]
lea edx, [ecx + 1]
imul edx, ecx
mov ebx, edx
xor ebx, 0xfffffffe
test ebx, edx
sete dl
setne bl
mov edi, dword [0x5cf58c]
mov dword [esi + 0x24], edi
cmp edi, 0xa
setl dh
setge bh
cmp dh, dl
jne 0x4493e9
or bh, bl
je 0x4493e9
mov edx, dword [0x5cf590]
mov ecx, dword [0x5cf594]
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, 0xbd723542
mov edi, 0xd08af799
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x50]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x40]
cmovge eax, edx
mov ecx, 0x553a1bc1
jmp 0x449364
mov ecx, eax
cmp ecx, 0xd08af798
jg 0x449383
cmp ecx, 0xb4e27a0f
je 0x449362
cmp ecx, 0xbd723542
jne 0x449364
mov ecx, 0xb4e27a0f
jmp 0x449364
cmp ecx, 0xd08af799
je 0x4493ba
cmp ecx, 0x553a1bc1
jne 0x449364
movzx edx, byte [esi + 0x50]
movzx ecx, byte [esi + 0x40]
mov ch, dl
xor ch, cl
mov edi, 0xbd723542
mov ebx, 0xb4e27a0f
cmovne edi, ebx
test cl, cl
mov ecx, edi
cmovne ecx, ebx
test dl, dl
cmove ecx, edi
jmp 0x449364
mov eax, dword [esi + 0x14]
mov dword [esi + 0x94], eax
mov edi, dword [esi + 0x94]
push dword [esi + 0x18]
push edi
call fcn.00433d30
add esp, 8
add edi, 4
push dword [esi + 0x1c]
push edi
call fcn.00433d30
add esp, 8
jmp 0x4491fb
mov edx, dword [esi + 0x20]
mov edx, dword [edx]
cmp edx, dword [eax]
jg 0x4491e5
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov ecx, dword [esi + 0x28]
mov dword [ecx], eax
mov eax, dword [esi + 0x2c]
mov eax, dword [eax]
mov dword [ecx + 4], eax
mov dword [esi + 0x68], 0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
sete bl
setne dl
cmp eax, 0xa
setl bh
setge dh
cmp bh, bl
jne 0x449442
or dh, dl
jne 0x44a6c0
cmp byte [esi + 0x68], 0
je 0x449478
mov dword [esi + 0x488], 0x16
lea ecx, [esi + 0x334]
push dword [esi + 0x18]
call fcn.00540ea0
mov ecx, dword [0x5cf588]
mov eax, dword [0x5cf58c]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
setne dl
cmp eax, 0xa
setge dh
mov ebx, edx
xor bl, dh
or dl, dh
xor dl, 1
or dl, bl
cmp dl, 1
mov edi, dword [esi + 0x30]
jne 0x4494a1
add edi, 8
test dl, dl
jne 0x4490c5
add edi, 8
jmp 0x449496
cmp edx, 0x12345678
jne 0x4494b8
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x328]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov edx, dword [0x5cf5d8]
mov ecx, dword [0x5cf5dc]
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, 0x4c711ccb
mov ebx, 0x3b2082ce
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x44878f
cmp ecx, 0x12345678
jne 0x449523
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
lea ecx, [esi + 0x334]
call fcn.0041e540
lea ecx, [esi + 0x120]
call fcn.0041e540
mov eax, 0x22e595fa
jmp 0x44878f
mov eax, dword [0x5cf5d0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x8697eca9
mov edi, 0x1baf90e1
cmove eax, edi
cmp dword [0x5cf5d4], 0xa
mov edx, 0x8697eca9
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
lea edi, [esi + 0x74]
jmp 0x446c05
mov eax, 0xa7bf93b4
lea edi, [esi + 0x74]
jmp 0x446c05
lea ecx, [esi + 0x208]
call fcn.0044b4a0
lea ecx, [esi + 0x200]
call fcn.004a8140
lea ecx, [esi + 0x340]
call fcn.0044b4a0
lea ecx, [esi + 0xec]
call fcn.00422cf0
lea ecx, [esi + 0x11c]
call fcn.00458660
lea ecx, [esi + 0x104]
call fcn.0040ed30
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x4495ff
xor cl, al
je 0x44a5f0
mov dword [esi + 0x40], 1
mov dword [esi + 0x488], 6
lea eax, [esi + 0x40]
push eax
call fcn.0044b730
add esp, 4
jmp 0x443ffc
mov dword [esi + 0x488], 0x14
lea ecx, [esi + 0x11c]
call fcn.0044b2d0
mov eax, dword [0x5cf5b0]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x449662
xor cl, al
je 0x44a6ac
mov eax, dword [esi + 0x200]
add eax, 0x3c
push eax
lea eax, [esi + 0x3f8]
push eax
call fcn.0041fd80
add esp, 8
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x4496a5
xor cl, al
je 0x4496f3
jmp 0x4496a5
lea ebx, [esi + 0x3f8]
mov ecx, ebx
call fcn.0044b3d0
mov edi, eax
mov ecx, ebx
call fcn.00423280
push 0
push edi
push eax
call fcn.00436690
add esp, 0xc
mov edx, dword [0x5cf5b0]
lea ecx, [edx + 1]
imul ecx, edx
test cl, 1
sete dl
cmp dword [0x5cf5b4], 0xa
mov dword [esi + 0x24], eax
setge al
setl ah
xor ah, dl
jne 0x449717
or al, cl
test al, 1
je 0x449717
lea ebx, [esi + 0x3f8]
mov ecx, ebx
call fcn.0044b3d0
mov edi, eax
mov ecx, ebx
call fcn.00423280
push 0
push edi
push eax
call fcn.00436690
add esp, 0xc
jmp 0x4496a5
cmp dword [esi + 0x24], 0
jne 0x449742
jmp 0x44a09c
lea eax, [esi + 0x230]
mov dword [esi + 0x120], eax
mov esp, dword [esi + 0x20]
push dword [esi + 0x120]
push dword [esi + 0x24]
call fcn.0043e420
add esp, 8
mov eax, dword [0x5cf5e0]
mov ecx, dword [0x5cf5e4]
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 + 0x74]
mov eax, 0x3d5598e9
nop dword [eax]
cmp eax, 0x68d8d13e
jg 0x4497b8
cmp eax, 0xcba23549
je 0x44983e
cmp eax, 0x3d5598e9
jne 0x449770
movzx ecx, byte [esi + 0x94]
movzx eax, byte [esi + 0x74]
mov edx, ecx
xor dl, al
test al, al
mov eax, 0xcba23549
mov edi, 0x7bfbf366
cmovne eax, edi
test cl, cl
mov ecx, 0xcba23549
cmove eax, ecx
test dl, dl
cmovne eax, edi
jmp 0x449770
cmp eax, 0x68d8d13f
je 0x449874
cmp eax, 0x7bfbf366
jne 0x449770
lea eax, [esi + 0x230]
mov dword [esi + 0x120], eax
mov eax, dword [esi + 0x120]
mov ecx, 0xd549e9b3
mov edx, 0x4c22e735
mov dword [eax + 4], edx
mov dword [eax], ecx
mov ecx, 0x2f61b855
mov edx, 0xd72a5b70
mov dword [eax + 0xc], ecx
mov dword [eax + 8], edx
mov edx, dword [0x5cf5e0]
mov ecx, dword [0x5cf5e4]
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, 0xcba23549
mov ebx, 0x68d8d13f
cmovne edi, ebx
test edx, eax
mov eax, edi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edi
jmp 0x449770
mov eax, 0xd549e9b3
mov ecx, 0x4c22e735
mov dword [esi + 0x234], ecx
mov dword [esi + 0x230], eax
mov eax, 0x2f61b855
mov ecx, 0xd72a5b70
mov dword [esi + 0x23c], eax
mov dword [esi + 0x238], ecx
mov eax, 0x7bfbf366
jmp 0x449770
mov eax, dword [0x5cf4c8]
mov edx, dword [0x5cf4cc]
lea edi, [eax + 1]
imul edi, eax
mov ebx, edi
xor ebx, 0xfffffffe
test ebx, edi
sete al
cmp edx, 0xa
setl ah
xor ah, al
mov eax, 0x3a5e4de9
mov ecx, 0x529938f9
cmovne eax, ecx
mov dword [esi + 0x18], edi
mov dword [esi + 0x1c], ebx
test ebx, edi
mov edi, eax
cmove edi, ecx
mov dword [esi + 0x14], edx
cmp edx, 0xa
cmovge edi, eax
mov dword [esi + 0x20], edi
mov dword [esi + 0x28], esp
mov eax, dword [esi + 0x120]
mov eax, dword [0x5cf5e8]
lea edi, [eax + 1]
imul edi, eax
not edi
or edi, 0xfffffffe
cmp edi, 0xffffffff
sete byte [esi + 0x50]
mov ebx, 0x27f6495d
mov eax, 0xc775c7ab
cmove ebx, eax
sete dl
mov edi, dword [0x5cf5ec]
cmp edi, 0xa
setl byte [esi + 0x40]
mov ecx, 0x27f6495d
cmovge ebx, ecx
setl dh
xor dh, dl
vmovaps xmm0, xmmword [esi + 0x230]
cmovne ebx, eax
mov dword [esi + 0x38], ebx
mov edi, 0xc34d6f78
nop word [eax + eax]
cmp edi, 0xfa14f6c0
jg 0x449941
cmp edi, 0xc34d6f78
je 0x449a52
cmp edi, 0xc775c7ab
jne 0x449920
jmp 0x449b70
cmp edi, 0xfa14f6c1
je 0x449a7b
cmp edi, 0x27f6495d
jne 0x449920
push eax
sub esp, 0xc
mov edi, esp
and edi, 0xfffffff0
mov esp, edi
mov ecx, dword [esi + 0x70]
mov dword [edi + 4], ecx
mov ecx, dword [esi + 0x6c]
mov dword [edi], ecx
mov ecx, dword [esi + 0x90]
mov dword [edi + 0xc], ecx
mov ecx, dword [esi + 0x8c]
mov dword [edi + 8], ecx
xor ecx, ecx
mov eax, dword [esi + 0x1c]
test dword [esi + 0x18], eax
vmovaps xmm1, xmmword [edi]
sete byte [esi + 0x94]
cmp dword [esi + 0x14], 0xa
setl byte [esi + 0x74]
vmovddup xmm2, qword [0x5b6ef8]
vandnps xmm3, xmm0, xmm2
vandnps xmm4, xmm1, xmm2
vandnps xmm0, xmm2, xmm0
vorps xmm0, xmm3, xmm0
vandnps xmm1, xmm2, xmm1
vorps xmm1, xmm4, xmm1
vxorps xmm0, xmm0, xmm1
mov edi, 0x9c60b94a
nop word cs:[eax + eax]
cmp edi, 0x3a5e4de8
jle 0x4499ea
cmp edi, 0x3a5e4de9
je 0x4499ff
cmp edi, 0x529938f9
jne 0x4499d0
jmp 0x449a30
cmp edi, 0x9c60b94a
je 0x449a06
cmp edi, 0x17b769ba
jne 0x4499d0
mov edi, dword [esi + 0x20]
jmp 0x4499d0
mov edi, 0x17b769ba
jmp 0x4499d0
movzx ecx, byte [esi + 0x94]
movzx edx, byte [esi + 0x74]
mov ch, cl
xor ch, dl
mov ebx, 0x3a5e4de9
mov eax, 0x17b769ba
cmovne ebx, eax
test dl, dl
mov edi, ebx
cmovne edi, eax
test cl, cl
cmove edi, ebx
jmp 0x4499d0
vmovaps xmmword [esi + 0x120], xmm0
vmovaps xmm0, xmmword [esi + 0x120]
vmovaps xmmword [esi + 0x230], xmm0
mov edi, 0xfa14f6c1
jmp 0x449920
movzx ebx, byte [esi + 0x50]
mov dh, byte [esi + 0x40]
mov dl, bl
xor dl, dh
mov ecx, 0x27f6495d
mov eax, 0xfa14f6c1
cmovne ecx, eax
test dh, dh
mov edi, ecx
cmovne edi, eax
test bl, bl
cmove edi, ecx
jmp 0x449920
push eax
sub esp, 0xc
mov edi, esp
and edi, 0xfffffff0
mov esp, edi
mov ecx, dword [esi + 0x70]
mov dword [edi + 4], ecx
mov ecx, dword [esi + 0x6c]
mov dword [edi], ecx
mov ecx, dword [esi + 0x90]
mov dword [edi + 0xc], ecx
mov ecx, dword [esi + 0x8c]
mov dword [edi + 8], ecx
xor ecx, ecx
mov eax, dword [esi + 0x1c]
test dword [esi + 0x18], eax
vmovaps xmm1, xmmword [edi]
sete byte [esi + 0x94]
cmp dword [esi + 0x14], 0xa
setl byte [esi + 0x74]
vmovddup xmm2, qword [str._7]
vandnps xmm3, xmm0, xmm2
vandnps xmm4, xmm1, xmm2
vandnps xmm0, xmm2, xmm0
vorps xmm0, xmm3, xmm0
vandnps xmm1, xmm2, xmm1
vorps xmm1, xmm4, xmm1
vxorps xmm0, xmm0, xmm1
mov edi, 0x9c60b94a
nop word [eax + eax]
cmp edi, 0x3a5e4de8
jle 0x449b0a
cmp edi, 0x3a5e4de9
je 0x449b1f
cmp edi, 0x529938f9
jne 0x449af0
jmp 0x449b50
cmp edi, 0x9c60b94a
je 0x449b26
cmp edi, 0x17b769ba
jne 0x449af0
mov edi, dword [esi + 0x20]
jmp 0x449af0
mov edi, 0x17b769ba
jmp 0x449af0
movzx ecx, byte [esi + 0x94]
movzx edx, byte [esi + 0x74]
mov ch, cl
xor ch, dl
mov ebx, 0x3a5e4de9
mov eax, 0x17b769ba
cmovne ebx, eax
test dl, dl
mov edi, ebx
cmovne edi, eax
test cl, cl
cmove edi, ebx
jmp 0x449af0
vmovaps xmmword [esi + 0x120], xmm0
vmovaps xmm0, xmmword [esi + 0x120]
vmovaps xmmword [esi + 0x230], xmm0
mov edi, dword [esi + 0x38]
jmp 0x449920
lea eax, [esi + 0x230]
mov dword [esi + 0x120], eax
mov esp, dword [esi + 0x28]
push dword [esi + 0x120]
push dword [esi + 0x24]
call fcn.0043e420
add esp, 8
mov ebx, eax
mov edx, dword [0x5cf5b0]
mov eax, dword [0x5cf5b4]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x449fd6
xor dh, dl
jne 0x449fd6
mov eax, dword [0x5cf5e0]
mov ecx, dword [0x5cf5e4]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esi + 0x74]
cmp ecx, 0xa
setl byte [esi + 0x230]
mov eax, 0x3d5598e9
nop dword [eax + eax]
cmp eax, 0x68d8d13e
jg 0x449c33
cmp eax, 0xcba23549
je 0x449cbb
cmp eax, 0x3d5598e9
jne 0x449bf0
movzx ecx, byte [esi + 0x74]
movzx eax, byte [esi + 0x230]
mov edx, ecx
xor dl, al
mov edx, 0xcba23549
mov edi, 0x7bfbf366
cmovne edx, edi
test al, al
mov eax, edx
cmovne eax, edi
test cl, cl
cmove eax, edx
jmp 0x449bf0
cmp eax, 0x68d8d13f
je 0x449cf1
cmp eax, 0x7bfbf366
jne 0x449bf0
lea eax, [esi + 0x230]
mov dword [esi + 0x120], eax
mov eax, dword [esi + 0x120]
mov ecx, 0xd549e9b3
mov edx, 0x4c22e735
mov dword [eax + 4], edx
mov dword [eax], ecx
mov ecx, 0x2f61b855
mov edx, 0xd72a5b70
mov dword [eax + 0xc], ecx
mov dword [eax + 8], edx
mov edx, dword [0x5cf5e0]
mov ecx, dword [0x5cf5e4]
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, 0xcba23549
mov edi, 0x68d8d13f
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x449bf0
mov eax, 0xd549e9b3
mov ecx, 0x4c22e735
mov dword [esi + 0x234], ecx
mov dword [esi + 0x230], eax
mov eax, 0x2f61b855
mov ecx, 0xd72a5b70
mov dword [esi + 0x23c], eax
mov dword [esi + 0x238], ecx
mov eax, 0x7bfbf366
jmp 0x449bf0
mov edx, dword [0x5cf4c8]
mov ecx, dword [0x5cf4cc]
lea ebx, [edx + 1]
imul ebx, edx
mov edx, ebx
and edx, 1
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edi, 0x3a5e4de9
mov eax, 0x529938f9
cmovne edi, eax
and ebx, 1
mov dword [esi + 0x18], ebx
mov edx, edi
cmove edx, eax
mov dword [esi + 0x14], ecx
cmp ecx, 0xa
cmovge edx, edi
mov dword [esi + 0x1c], edx
mov dword [esi + 0x20], esp
mov edi, dword [esi + 0x120]
mov edi, dword [0x5cf5e8]
lea ebx, [edi + 1]
imul ebx, edi
not ebx
or ebx, 0xfffffffe
cmp ebx, 0xffffffff
sete byte [esi + 0x40]
mov edi, 0x27f6495d
mov ecx, 0xc775c7ab
cmove edi, ecx
sete bl
mov eax, dword [0x5cf5ec]
cmp eax, 0xa
setl byte [esi + 0x94]
mov eax, 0x27f6495d
cmovge edi, eax
setl al
xor al, bl
vmovaps xmm0, xmmword [esi + 0x230]
cmovne edi, ecx
mov ebx, 0xc34d6f78
nop word cs:[eax + eax]
cmp ebx, 0xfa14f6c0
jg 0x449dc1
cmp ebx, 0xc34d6f78
je 0x449ea8
cmp ebx, 0xc775c7ab
jne 0x449da0
jmp 0x449722
cmp ebx, 0xfa14f6c1
je 0x449ed4
cmp ebx, 0x27f6495d
jne 0x449da0
push eax
sub esp, 0xc
mov ebx, esp
and ebx, 0xfffffff0
mov esp, ebx
mov eax, dword [esi + 0x70]
mov dword [ebx + 4], eax
mov eax, dword [esi + 0x6c]
mov dword [ebx], eax
mov eax, dword [esi + 0x90]
mov dword [ebx + 0xc], eax
mov eax, dword [esi + 0x8c]
mov dword [ebx + 8], eax
xor eax, eax
cmp dword [esi + 0x18], 0
vmovaps xmm1, xmmword [ebx]
sete byte [esi + 0x74]
cmp dword [esi + 0x14], 0xa
setl byte [esi + 0x230]
vmovddup xmm2, qword [0x5b6f00]
vandnps xmm3, xmm0, xmm2
vandnps xmm4, xmm1, xmm2
vandnps xmm0, xmm2, xmm0
vorps xmm0, xmm3, xmm0
vandnps xmm1, xmm2, xmm1
vorps xmm1, xmm4, xmm1
vxorps xmm0, xmm0, xmm1
mov ebx, 0x9c60b94a
nop
cmp ebx, 0x3a5e4de8
jle 0x449e5d
cmp ebx, 0x3a5e4de9
je 0x449e72
cmp ebx, 0x529938f9
jne 0x449e40
jmp 0x449f95
cmp ebx, 0x9c60b94a
je 0x449e79
cmp ebx, 0x17b769ba
jne 0x449e40
mov ebx, dword [esi + 0x1c]
jmp 0x449e40
mov ebx, 0x17b769ba
jmp 0x449e40
movzx eax, byte [esi + 0x74]
movzx edx, byte [esi + 0x230]
mov ah, dl
xor ah, al
test dl, dl
mov ebx, 0x3a5e4de9
mov ecx, 0x17b769ba
cmovne ebx, ecx
test al, al
mov edx, 0x3a5e4de9
cmove ebx, edx
test ah, ah
cmovne ebx, ecx
jmp 0x449e40
movzx eax, byte [esi + 0x40]
mov ah, byte [esi + 0x94]
mov ebx, eax
xor bl, ah
mov edx, 0x27f6495d
mov ecx, 0xfa14f6c1
cmovne edx, ecx
test ah, ah
mov ebx, edx
cmovne ebx, ecx
test al, al
cmove ebx, edx
jmp 0x449da0
push eax
sub esp, 0xc
mov ebx, esp
and ebx, 0xfffffff0
mov esp, ebx
mov eax, dword [esi + 0x70]
mov dword [ebx + 4], eax
mov eax, dword [esi + 0x6c]
mov dword [ebx], eax
mov eax, dword [esi + 0x90]
mov dword [ebx + 0xc], eax
mov eax, dword [esi + 0x8c]
mov dword [ebx + 8], eax
xor eax, eax
cmp dword [esi + 0x18], 0
vmovaps xmm1, xmmword [ebx]
sete byte [esi + 0x74]
cmp dword [esi + 0x14], 0xa
setl byte [esi + 0x230]
vandnps xmm2, xmm0, xmm1
vandnps xmm0, xmm1, xmm0
vorps xmm0, xmm2, xmm0
mov ebx, 0x9c60b94a
nop word cs:[eax + eax]
cmp ebx, 0x3a5e4de8
jle 0x449f4a
cmp ebx, 0x3a5e4de9
je 0x449f5f
cmp ebx, 0x529938f9
jne 0x449f30
jmp 0x449fb7
cmp ebx, 0x9c60b94a
je 0x449f66
cmp ebx, 0x17b769ba
jne 0x449f30
mov ebx, dword [esi + 0x1c]
jmp 0x449f30
mov ebx, 0x17b769ba
jmp 0x449f30
movzx eax, byte [esi + 0x74]
movzx edx, byte [esi + 0x230]
mov ah, al
xor ah, dl
test dl, dl
mov ebx, 0x3a5e4de9
mov ecx, 0x17b769ba
cmovne ebx, ecx
test al, al
mov edx, 0x3a5e4de9
cmove ebx, edx
test ah, ah
cmovne ebx, ecx
jmp 0x449f30
vmovaps xmmword [esi + 0x120], xmm0
vmovaps xmm0, xmmword [esi + 0x120]
vmovaps xmmword [esi + 0x230], xmm0
mov ebx, 0xfa14f6c1
jmp 0x449da0
vmovaps xmmword [esi + 0x120], xmm0
vmovaps xmm0, xmmword [esi + 0x120]
vmovaps xmmword [esi + 0x230], xmm0
mov ebx, edi
jmp 0x449da0
test ebx, ebx
je 0x44a07f
lea ecx, [esi + 0x1e8]
call fcn.00409c60
mov edi, eax
lea ecx, [esi + 0xec]
call fcn.00420b70
mov ecx, dword [0x5cf5b0]
lea edx, [ecx + 1]
imul edx, ecx
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete cl
cmp dword [0x5cf5b4], 0xa
setl dl
test dl, cl
jne 0x44a056
xor dl, cl
jne 0x44a056
lea edi, [esi + 0x1e8]
mov ecx, edi
call fcn.00409c60
lea ecx, [esi + 0xec]
call fcn.00420b70
mov ecx, edi
call fcn.00409c60
mov edi, eax
lea ecx, [esi + 0xec]
call fcn.00420b70
mov ecx, dword [0x5cf5b0]
lea edx, [ecx - 1]
jmp 0x449fff
mov dword [esi + 0x488], 0x21
push edi
push eax
call ebx
add esp, 8
mov ecx, dword [0x5cf5b0]
mov eax, dword [0x5cf5b4]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
test ecx, ecx
setne cl
sete dl
cmp eax, 0xa
setge al
setl ah
xor ah, dl
jne 0x44a09c
or al, cl
jne 0x44a6be
mov dword [esi + 0x28], esp
mov eax, dword [0x5cf5f0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5f4], 0xa
setl cl
test cl, al
jne 0x44a0cb
xor cl, al
je 0x44a1f6
push eax
mov dword [esi + 0x1c], esp
push eax
mov ecx, esp
sub esp, 0x18
mov ebx, esp
mov dword [esi + 0x20], ecx
push 0x7a
push 0x61
call fcn.00542260
sub esp, 4
movzx eax, byte [esi + 0x74]
mov byte [esp], al
mov ecx, ebx
call fcn.0040cd80
mov edx, dword [0x5cf4b8]
mov ecx, dword [0x5cf4bc]
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, 0x8f0f2ca8
mov edi, 0x11f1fb1a
cmovne edx, edi
cmp eax, 0xffffffff
sete byte [esi + 0x230]
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x120]
cmovge eax, edx
mov ecx, 0x13d3b53a
mov dword [esi + 0x18], ebx
cmp ecx, 0x13d3b539
jg 0x44a164
cmp ecx, 0x8f0f2ca8
je 0x44a1a9
cmp ecx, 0x11f1fb1a
jne 0x44a14a
jmp 0x44a1b4
cmp ecx, 0x1a1c1d98
je 0x44a1b0
cmp ecx, 0x13d3b53a
jne 0x44a14a
movzx edx, byte [esi + 0x230]
movzx ecx, byte [esi + 0x120]
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0x8f0f2ca8
mov ebx, 0x1a1c1d98
cmovne ecx, ebx
test dl, dl
mov edi, 0x8f0f2ca8
cmove ecx, edi
test dh, dh
cmovne ecx, ebx
mov ebx, dword [esi + 0x18]
jmp 0x44a14a
mov ecx, 0x1a1c1d98
jmp 0x44a14a
mov ecx, eax
jmp 0x44a14a
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0xf
mov ecx, dword [0x5cf5f0]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x5cf5f4], 0xa
mov byte [ebx], 0
setl ch
setge cl
cmp ch, dl
jne 0x44a2ec
or cl, al
test cl, 1
je 0x44a2ec
push eax
mov ecx, esp
sub esp, 0x18
mov edi, esp
push 0x7a
push 0x61
call fcn.00542260
sub esp, 4
movzx eax, byte [esi + 0x74]
mov byte [esp], al
mov dword [esi + 0x14], edi
mov ecx, edi
call fcn.0040cd80
mov edx, dword [0x5cf4b8]
mov ecx, dword [0x5cf4bc]
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, 0x8f0f2ca8
mov edi, 0x11f1fb1a
cmovne ebx, edi
test edx, eax
sete byte [esi + 0x230]
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
setl byte [esi + 0x120]
cmovge eax, ebx
mov ecx, 0x13d3b53a
jmp 0x44a270
mov ecx, eax
cmp ecx, 0x13d3b539
jg 0x44a28a
cmp ecx, 0x8f0f2ca8
je 0x44a2cc
cmp ecx, 0x11f1fb1a
jne 0x44a270
jmp 0x44a2d3
cmp ecx, 0x1a1c1d98
je 0x44a26e
cmp ecx, 0x13d3b53a
jne 0x44a270
movzx edx, byte [esi + 0x230]
movzx ecx, byte [esi + 0x120]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0x8f0f2ca8
mov edi, 0x1a1c1d98
cmovne ecx, edi
test dl, dl
mov ebx, 0x8f0f2ca8
cmove ecx, ebx
test dh, dh
cmovne ecx, edi
jmp 0x44a270
mov ecx, 0x1a1c1d98
jmp 0x44a270
mov eax, dword [esi + 0x14]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
jmp 0x44a0cb
xor edx, edx
mov dword [esi + 0x24], edx
cmp edx, 0x3e8
je 0x44a6d4
mov ecx, dword [esi + 0x20]
movsx eax, byte [ecx + 1]
movsx edx, byte [ecx]
mov dword [esi + 0x488], 0x22
push eax
push edx
push dword [esi + 0x1c]
call fcn.0041e700
movsx eax, al
mov ecx, dword [esi + 0x18]
push eax
call fcn.00441240
mov eax, dword [0x5cf5f0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5cf5f4], 0xa
setl cl
test cl, al
mov edi, dword [esi + 0x18]
jne 0x44a351
xor cl, al
je 0x44a380
mov ecx, edi
call fcn.00423280
mov ecx, dword [0x5cf5f0]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5cf5f4], 0xa
setl dl
test dl, cl
jne 0x44a389
xor dl, cl
jne 0x44a389
mov ecx, edi
call fcn.00423280
jmp 0x44a351
mov ecx, dword [edi + 0x10]
cmp byte [ecx + eax - 1], 0x6f
je 0x44a3a8
mov ecx, edi
call fcn.00423280
mov ecx, dword [edi + 0x10]
cmp byte [ecx + eax - 1], 0x75
jne 0x44a519
mov ecx, edi
call fcn.00423280
mov ebx, eax
mov ecx, edi
call fcn.00423280
add eax, dword [edi + 0x10]
mov dword [esi + 0x14], eax
mov ecx, dword [0x5cf5f0]
mov eax, dword [0x5cf5f4]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x44a3eb
xor dh, dl
je 0x44a6a8
mov edi, ebx
cmp ebx, dword [esi + 0x14]
jne 0x44a401
jmp 0x44a52d
inc edi
cmp edi, dword [esi + 0x14]
je 0x44a52d
mov eax, dword [0x5cf5f8]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov ecx, dword [0x5cf5fc]
sete byte [esi + 0x74]
sete dl
mov eax, 0xc9893d93
mov ebx, 0x603280c6
cmove eax, ebx
cmp ecx, 0xa
setl byte [esi + 0x230]
setl cl
mov ebx, 0xc9893d93
cmovge eax, ebx
xor cl, dl
mov ecx, 0x603280c6
cmovne eax, ecx
mov ecx, 0xfc461c64
nop word cs:[eax + eax]
cmp ecx, 0xfc461c63
jg 0x44a47c
cmp ecx, 0xc9893d93
je 0x44a4c0
cmp ecx, 0xdac56cfa
jne 0x44a460
mov ecx, eax
jmp 0x44a460
cmp ecx, 0x603280c6
je 0x44a4c7
cmp ecx, 0xfc461c64
jne 0x44a460
movzx edx, byte [esi + 0x74]
movzx ecx, byte [esi + 0x230]
mov dh, cl
xor dh, dl
test cl, cl
mov ecx, 0xc9893d93
mov ebx, 0xdac56cfa
cmovne ecx, ebx
test dl, dl
mov ebx, 0xc9893d93
cmove ecx, ebx
test dh, dh
mov edx, 0xdac56cfa
cmovne ecx, edx
jmp 0x44a460
mov ecx, 0xdac56cfa
jmp 0x44a460
mov dword [esi + 0x120], edi
mov ebx, dword [esi + 0x120]
movsx eax, byte [ebx]
push eax
call fcn.005a47b5
add esp, 4
and al, 0xa
mov byte [ebx], al
mov ecx, dword [0x5cf5f0]
mov eax, dword [0x5cf5f4]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
and ecx, edx
sete dl
cmp eax, 0xa
setl dh
test dh, dl
jne 0x44a3f7
xor dh, dl
jne 0x44a3f7
jmp 0x44a620
mov edx, dword [0x5cf5f0]
mov eax, dword [0x5cf5f4]
lea ecx, [edx + 1]
imul ecx, edx
and ecx, 1
mov edx, dword [esi + 0x24]
inc edx
test ecx, ecx
sete cl
cmp eax, 0xa
setl al
test cl, al
jne 0x44a2ee
xor cl, al
jne 0x44a2ee
jmp 0x44a6aa
jmp 0x44a570
jmp 0x44a580
jmp 0x44a590
jmp 0x44a5a0
jmp 0x44a5b0
jmp 0x44a5c0
jmp 0x44a5d0
jmp 0x44a5e0
jmp 0x44a5f0
jmp 0x44a600
jmp 0x44a610
jmp 0x44a620
jmp 0x44a630
jmp 0x44a640
jmp 0x44a650
jmp 0x44a660
jmp 0x44a670
jmp 0x44a680
jmp 0x44a690
jmp 0x44a6a0
jmp 0x44a6a2
jmp 0x44a6a4
jmp 0x44a6a6
jmp 0x44a6a8
jmp 0x44a6aa
jmp 0x44a6ac
jmp 0x44a6ae
jmp 0x44a6b0
jmp 0x44a6b2
jmp 0x44a6b4
jmp 0x44a6b6
jmp 0x44a6b8
jmp 0x44a6ba
jmp 0x44a6bc
jmp 0x44a6be
jmp 0x44a6c0
jmp 0x44a6c2
jmp 0x44a6c4
jmp 0x44a6c6
jmp 0x44a6c8
jmp 0x44a6ca
jmp 0x44a6cc
jmp 0x44a6ce
jmp 0x44a6d0
jmp 0x44a6d2
mov ecx, dword [esi + 0x18]
call fcn.00423280
cmp byte [eax + 0xd7], 0x31
jne 0x44a7c4
mov ecx, dword [0x5cf5f0]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x5cf5f4], 0xa
setge cl
setl ch
xor ch, dl
mov edi, dword [esi + 0x18]
jne 0x44a717
or cl, al
test cl, 1
jne 0x44a746
jmp 0x44a717
mov ecx, edi
call fcn.00423280
mov ecx, dword [0x5cf5f0]
lea edx, [ecx + 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x5cf5f4], 0xa
setl dl
test dl, cl
jne 0x44a74f
xor dl, cl
jne 0x44a74f
mov ecx, edi
call fcn.00423280
jmp 0x44a717
cmp byte [eax + 0x2d0], 0x30
jne 0x44a7c4
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, dword [0x5cf5f0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5f4], 0xa
setl cl
test cl, al
jne 0x44a7c4
xor cl, al
jne 0x44a7c4
mov edi, dword [sym.imp.KERNEL32.dll_Beep]
push 0
push 0
call edi
push 0
push 0
call edi
mov eax, dword [0x5cf5f0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5f4], 0xa
setl cl
test cl, al
jne 0x44a7c4
xor cl, al
je 0x44a790
mov ecx, dword [esi + 0x18]
call fcn.0040ed30
mov esp, dword [esi + 0x28]
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x44a7f6
xor cl, al
je 0x44a829
lea ecx, [esi + 0x3f8]
call fcn.0040ed30
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x44a836
xor cl, al
jne 0x44a836
lea ecx, [esi + 0x3f8]
call fcn.0040ed30
jmp 0x44a7f6
lea ecx, [esi + 0x208]
call fcn.0044b4a0
lea ecx, [esi + 0x200]
call fcn.004a8140
lea ecx, [esi + 0x340]
call fcn.0044b4a0
lea ecx, [esi + 0xec]
call fcn.00422cf0
lea ecx, [esi + 0x11c]
call fcn.00458660
lea ecx, [esi + 0x104]
call fcn.0040ed30
mov eax, dword [0x5cf5b0]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x5cf5b4], 0xa
setl cl
test cl, al
jne 0x44a89f
xor cl, al
je 0x44a8d3
lea ecx, [esi + 0x1e8]
call fcn.0040ed30
mov ecx, dword [0x5cf5b0]
lea eax, [ecx + 1]
imul eax, ecx
test al, 1
sete dl
cmp dword [0x5cf5b4], 0xa
setl ch
setge cl
cmp ch, dl
jne 0x44a8e0
or cl, al
test cl, 1
je 0x44a8e0
lea ecx, [esi + 0x1e8]
call fcn.0040ed30
jmp 0x44a89f
mov eax, dword [esi + 0x480]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret