Function at 0x50a410
Capabilities:
Check os version
Encode data using base64
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x6c508b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1cc
push ebx
xor ebx, ebx
push esi
push edi
mov esi, ecx
mov dword [esp + 0x64], ebx
mov al, byte [esp + 0x62]
mov dword [esp + 0x1e0], 1
mov byte [esp + 0x1c], al
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
push 6
push 0x715414
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e8], 2
call fcn.0061d820
push 4
lea ecx, [ebp + 0xc]
mov byte [esp + 0x1e4], 3
call fcn.0061daa0
push 5
lea ecx, [ebp + 0xc]
mov byte [esp + 0x14], al
call fcn.0061daa0
lea edi, [esi + 8]
mov byte [esp + 0x44], al
mov ecx, edi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
call fcn.0061dc40
cmp al, 0xa
jae 0x50a5e4
push 0x71386c
lea ecx, [esp + 0x50]
push 0x713868
push ecx
call fcn.006a6fa5
lea edi, [esp + 0x58]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x1c]
call fcn.00414a50
cmp eax, ebx
jae 0x50a4ea
call fcn.006a64db
mov edx, dword [esp + 0x20]
xor edi, edi
cmp edx, edi
je 0x50a514
mov al, byte [edx - 1]
test al, al
je 0x50a514
cmp al, 0xff
je 0x50a514
cmp ebx, edi
jne 0x50a53d
dec al
push edi
lea ecx, [esp + 0x20]
mov byte [edx - 1], al
call fcn.004138c0
jmp 0x50a56f
cmp ebx, edi
jne 0x50a525
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
jmp 0x50a56f
mov eax, dword [esp + 0x28]
cmp eax, 0x1f
ja 0x50a532
cmp eax, ebx
jae 0x50a54b
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
push ebx
lea ecx, [esp + 0x20]
call fcn.00414a60
mov edx, dword [esp + 0x20]
mov ecx, ebx
mov edi, edx
mov edx, ecx
lea esi, [esp + 0x4c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x24], ebx
xor edi, edi
mov byte [eax + ebx], 0
mov esi, dword [ebp + 8]
mov cl, byte [esp + 0x1c]
lea eax, [esp + 0x1c]
mov byte [esi], cl
mov dword [esi + 4], edi
mov dword [esi + 8], edi
mov dword [esi + 0xc], edi
mov edx, dword [0x6dd1fc]
mov ecx, esi
push edx
push edi
push eax
call fcn.004136c0
mov dword [esp + 0x64], 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x1e0], 2
call fcn.0061d8c0
mov eax, dword [esp + 0x20]
cmp eax, edi
je 0x50a5d3
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50a5ca
cmp al, 0xff
je 0x50a5ca
dec al
mov byte [ecx], al
jmp 0x50a5d3
push ecx
call fcn.006a64d0
add esp, 4
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
jmp 0x50a7d8
movzx ax, al
test ax, ax
mov dword [esp + 0x48], 0
mov word [esp + 0x62], ax
jle 0x50a628
lea ecx, [esi + 0x11]
mov dword [esp + 0x40], ecx
mov edx, dword [esp + 0x48]
mov ecx, edi
push edx
call fcn.0061daa0
mov ecx, dword [esp + 0x40]
mov byte [ecx], al
mov eax, dword [esp + 0x48]
inc eax
inc ecx
cmp ax, word [esp + 0x62]
mov dword [esp + 0x48], eax
mov dword [esp + 0x40], ecx
jl 0x50a601
mov eax, dword [esp + 0x10]
and eax, 0xff
cmp eax, 0xc
ja case.default.0x50d82b
jmp dword [eax*4 + 0x50dae8]
mov eax, dword [esp + 0x44]
and eax, 0xff
dec eax
cmp eax, 0x31
ja case.default.0x50a654
jmp dword [eax*4 + 0x50db1c]
xor eax, eax
mov al, byte [esi + 0x16]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x15]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
shl eax, 6
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x1b]
shl ebx, 3
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x16]
sub ebx, 0x28
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x1b]
sub ebx, 0x28
jmp case.default.0x50d82b
mov dl, byte [esi + 0x17]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 4
push 1
push edx
jmp 0x50a76a
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x1b]
mov cl, byte [esi + 0x1a]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov dword [esp + 0x10], ecx
fmul qword [0x6dda90]
fild dword [esp + 0x10]
fmul qword [0x6ddb78]
faddp st(1)
jmp 0x50a95c
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x18]
mov al, byte [esi + 0x17]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6df408]
fild dword [esp + 0x10]
fadd st(0), st(0)
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x15]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
shl ecx, 2
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor edx, edx
mov dl, byte [esi + 0x16]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e14c8]
jmp 0x50a95c
lea eax, [esp + 0x1c]
push eax
push 4
push 3
mov cl, byte [esi + 0x19]
and cl, 0x40
push ecx
mov ecx, esi
call fcn.00512b00
push ebx
lea edx, [esp + 0x50]
push 0x713498
push edx
call fcn.006a6fa5
add esp, 0xc
lea ecx, [esp + 0x1c]
call fcn.004cfb90
test eax, eax
jne 0x50a79f
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x1c]
push eax
call fcn.004cfae0
mov esi, dword [ebp + 8]
lea ecx, [esp + 0x1c]
push ecx
mov ecx, esi
call fcn.00413060
lea ecx, [esp + 0x18]
mov dword [esp + 0x64], 1
mov byte [esp + 0x1e0], 2
call fcn.0061d8c0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1e0], 1
call fcn.00419a10
lea ecx, [ebp + 0xc]
mov byte [esp + 0x1e0], 0
call fcn.0061d8c0
mov ecx, dword [esp + 0x1d8]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 8
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x16]
mov al, byte [esi + 0x15]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6e14c0]
fild dword [esp + 0x10]
fmul qword [0x6e14b8]
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x1a]
lea ecx, [eax + eax*4]
lea eax, [eax + ecx*8]
lea eax, [eax + eax*2]
lea ecx, [eax + eax*8]
jmp 0x50b566
xor eax, eax
mov al, byte [esi + 0x15]
lea ecx, [eax + eax*4]
lea eax, [eax + ecx*8]
lea eax, [eax + eax*2]
lea ecx, [eax + eax*8]
jmp 0x50b566
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push 6
and dl, 0x20
push 5
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x19]
lea eax, [esp + 0x1c]
push eax
push 6
push 5
and cl, 8
jmp 0x50a769
xor eax, eax
mov al, byte [esi + 0x1b]
jmp 0x50b55d
mov dl, byte [esi + 0x17]
lea ecx, [esp + 0x1c]
push ecx
push 8
and dl, 8
push 7
push edx
jmp 0x50a76a
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x15]
mov cl, byte [esi + 0x16]
shl eax, 8
add eax, ecx
mov ecx, eax
shl ecx, 9
sub ecx, eax
mov eax, 0x80008001
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor ecx, ecx
mov eax, 0x80808081
mov cl, byte [esi + 0x18]
shl ecx, 7
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
lea ebx, [edx + ecx - 0x40]
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x1a]
mov dl, byte [esi + 0x1b]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 0xa
and dl, 0x40
push 9
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push 9
push 0xa
and cl, 0x20
jmp 0x50a769
xor edx, edx
mov dl, byte [esi + 0x17]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6dd240]
fstp qword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
push edx
push eax
lea ecx, [esp + 0x54]
push str._.2f
push ecx
call fcn.006a6fa5
add esp, 0x10
jmp 0x50a784
mov cl, byte [esi + 0x1a]
lea eax, [esp + 0x1c]
push eax
push 9
push 0xa
and cl, 0x80
jmp 0x50a769
mov al, byte [esi + 0x1b]
and eax, 0x3f
cmp eax, 0x3f
ja case.0x50a9a8.4
xor ecx, ecx
mov cl, byte [eax + 0x50dbf8]
jmp dword [ecx*4 + 0x50dbe4]
push 0x10
jmp 0x50a9bd
push 0x11
jmp 0x50a9bd
push 0x12
jmp 0x50a9bd
push 0x13
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x30]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov edx, dword [esi + 8]
mov ecx, dword [0x6dd1fc]
mov eax, edx
mov byte [esp + 0x1e0], 4
cmp ecx, eax
mov dword [esp + 0x40], eax
jae 0x50aa09
mov eax, ecx
mov dword [esp + 0x40], eax
lea edi, [esp + 0x1c]
cmp edi, esi
jne 0x50aa2e
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004140f0
jmp 0x50aabb
test eax, eax
jbe 0x50aa7b
cmp eax, edx
jne 0x50aa7b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x50aa42
mov ecx, 0x6dd1f8
cmp byte [ecx - 1], 0xfe
jae 0x50aa7b
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x50aa5f
mov eax, 0x6dd1f8
mov dword [esp + 0x20], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x24], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x28], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x50aabb
push 1
push eax
lea ecx, [esp + 0x24]
call fcn.00414230
test al, al
je 0x50aabb
mov esi, dword [esi + 4]
test esi, esi
jne 0x50aa97
mov esi, 0x6dd1f8
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x20]
mov ecx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x24], eax
mov byte [ecx + eax], 0
mov eax, dword [esp + 0x30]
mov byte [esp + 0x1e0], 3
test eax, eax
je case.default.0x50d82b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50b204
cmp al, 0xff
je 0x50b204
dec al
mov byte [ecx], al
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x19]
shr eax, 6
cmp eax, 3
ja case.default.0x50aafb
jmp dword [eax*4 + 0x50dc38]
push 0xb
jmp 0x50ab0c
push 0xc
jmp 0x50ab0c
push 0xd
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xdc]
push eax
call fcn.0061ca80
add esp, 8
mov esi, eax
mov edx, dword [esi + 8]
mov ecx, dword [0x6dd1fc]
mov eax, edx
mov byte [esp + 0x1e0], 5
cmp ecx, eax
mov dword [esp + 0x40], eax
jae 0x50ab5b
mov eax, ecx
mov dword [esp + 0x40], eax
lea edi, [esp + 0x1c]
cmp edi, esi
jne 0x50ab8f
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004140f0
mov eax, dword [esp + 0xdc]
mov byte [esp + 0x1e0], 3
jmp 0x50aac7
test eax, eax
jbe 0x50abee
cmp eax, edx
jne 0x50abee
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x50aba3
mov ecx, 0x6dd1f8
cmp byte [ecx - 1], 0xfe
jae 0x50abee
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x50abc0
mov eax, 0x6dd1f8
mov dword [esp + 0x20], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x24], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x28], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x1e0], 3
mov byte [eax - 1], cl
mov eax, dword [esp + 0xdc]
jmp 0x50aac7
push 1
push eax
lea ecx, [esp + 0x24]
call fcn.00414230
test al, al
je 0x50ac2e
mov esi, dword [esi + 4]
test esi, esi
jne 0x50ac0a
mov esi, 0x6dd1f8
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x20]
mov ecx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x24], eax
mov byte [ecx + eax], 0
mov eax, dword [esp + 0xdc]
mov byte [esp + 0x1e0], 3
jmp 0x50aac7
mov al, byte [esi + 0x19]
lea edx, [esp + 0x1c]
push edx
push 9
and al, 4
push 0xa
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 0xf
and dl, 2
push 0xe
push edx
jmp 0x50a76a
lea eax, [esp + 0x1c]
push eax
push 0x15
push 0x14
jmp 0x50a763
xor ecx, ecx
mov cl, byte [esi + 0x1b]
lea eax, [ecx + ecx*2]
lea eax, [eax + eax*4]
shl eax, 3
sub eax, ecx
lea eax, [eax + eax*2]
lea ecx, [eax + eax*4]
shl ecx, 1
jmp 0x50b566
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 9
and dl, 0x80
push 0xa
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x1b]
lea eax, [esp + 0x1c]
push eax
push 9
push 0xa
and cl, 0x80
jmp 0x50a769
mov al, byte [esi + 0x1b]
lea edx, [esp + 0x1c]
push edx
push 9
and al, 0x40
push 0xa
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x1c]
push ecx
push 0x17
and dl, 0x80
push 0x16
push edx
jmp 0x50a76a
xor ebx, ebx
xor eax, eax
mov bl, byte [esi + 0x15]
mov al, byte [esi + 0x16]
shl ebx, 8
add ebx, eax
lea ebx, [ebx + ebx*4]
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x15]
mov dl, byte [esi + 0x16]
shl ecx, 8
add ecx, edx
mov eax, 0x91a2b3c5
imul ecx
mov esi, edx
add esi, ecx
sar esi, 0xb
mov eax, esi
mov edx, esi
shr eax, 0x1f
add edx, eax
mov eax, ecx
mov byte [esp + 0x10], dl
mov ecx, 0xe10
cdq
idiv ecx
mov eax, 0x88888889
mov ecx, edx
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, ecx
mov byte [esp + 0x11], dl
mov ecx, 0x3c
cdq
idiv ecx
mov byte [esp + 0x12], dl
mov edx, dword [esp + 0x12]
mov eax, dword [esp + 0x11]
mov ecx, dword [esp + 0x10]
and edx, 0xff
and eax, 0xff
push edx
and ecx, 0xff
push eax
push ecx
lea edx, [esp + 0x58]
push str._02d:_02d:_02d
push edx
call fcn.006a6fa5
lea edi, [esp + 0x60]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x48], esi
call fcn.00414a50
cmp eax, esi
jae 0x50adb2
call fcn.006a64db
mov edi, dword [esp + 0x20]
test edi, edi
je 0x50add4
mov al, byte [edi - 1]
test al, al
je 0x50add4
cmp al, 0xff
je 0x50add4
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x50b4c2
push ecx
jmp 0x50ae05
mov esi, dword [esp + 0x48]
test esi, esi
jne 0x50adec
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
jmp case.default.0x50d82b
mov eax, dword [esp + 0x28]
cmp eax, 0x1f
ja 0x50adf9
cmp eax, esi
jae 0x50ae12
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
push esi
lea ecx, [esp + 0x20]
call fcn.00414a60
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x48]
lea esi, [esp + 0x4c]
mov ecx, eax
jmp 0x50b51c
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x10], esi
call fcn.00414a50
cmp eax, esi
jae 0x50ae48
call fcn.006a64db
mov edi, dword [esp + 0x20]
test edi, edi
je 0x50ae64
mov al, byte [edi - 1]
test al, al
je 0x50ae64
cmp al, 0xff
je 0x50ae64
test esi, esi
jne 0x50ae90
jmp 0x50b4c2
test esi, esi
jne 0x50ae78
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
jmp case.default.0x50d82b
mov eax, dword [esp + 0x28]
cmp eax, 0x1f
ja 0x50ae85
cmp eax, esi
jae 0x50ae9e
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
push esi
lea ecx, [esp + 0x20]
call fcn.00414a60
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
jmp 0x50b515
mov edx, dword [esp + 0x44]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0x19
ja case.default.0x50aebd
jmp dword [eax*4 + 0x50dc48]
xor ecx, ecx
mov cl, byte [esi + 0x1b]
mov eax, ecx
shl eax, 4
add eax, ecx
lea ecx, [eax + eax*2]
jmp 0x50b566
xor ecx, ecx
mov cl, byte [esi + 0x18]
mov eax, ecx
shl eax, 4
add eax, ecx
lea ecx, [eax + eax*2]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1b]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x81020409
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1b]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x81020409
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x18]
add eax, 0xffffffeb
cmp eax, 0xea
ja case.0x50af66.23
xor edx, edx
mov dl, byte [eax + 0x50dcbc]
jmp dword [edx*4 + 0x50dcb0]
push 0x18
jmp 0x50af77
push 0x19
jmp 0x50af77
push 0x1a
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x1cc]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov edx, dword [esi + 8]
mov ecx, dword [0x6dd1fc]
mov eax, edx
mov byte [esp + 0x1e0], 6
cmp ecx, eax
mov dword [esp + 0x40], eax
jae 0x50afc6
mov eax, ecx
mov dword [esp + 0x40], eax
lea edi, [esp + 0x1c]
cmp edi, esi
jne 0x50affa
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004140f0
mov eax, dword [esp + 0x1cc]
mov byte [esp + 0x1e0], 3
jmp 0x50aac7
test eax, eax
jbe 0x50b059
cmp eax, edx
jne 0x50b059
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x50b00e
mov ecx, 0x6dd1f8
cmp byte [ecx - 1], 0xfe
jae 0x50b059
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x50b02b
mov eax, 0x6dd1f8
mov dword [esp + 0x20], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x24], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x28], esi
mov cl, byte [eax - 1]
inc cl
mov byte [esp + 0x1e0], 3
mov byte [eax - 1], cl
mov eax, dword [esp + 0x1cc]
jmp 0x50aac7
push 1
push eax
lea ecx, [esp + 0x24]
call fcn.00414230
test al, al
je 0x50b099
mov esi, dword [esi + 4]
test esi, esi
jne 0x50b075
mov esi, 0x6dd1f8
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x20]
mov ecx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x24], eax
mov byte [ecx + eax], 0
mov eax, dword [esp + 0x1cc]
mov byte [esp + 0x1e0], 3
jmp 0x50aac7
xor eax, eax
mov al, byte [esi + 0x19]
add eax, 0xffffffeb
cmp eax, 0xea
ja case.0x50b0c4.23
xor edx, edx
mov dl, byte [eax + 0x50ddb4]
jmp dword [edx*4 + 0x50dda8]
push 0x18
jmp 0x50b0d5
push 0x19
jmp 0x50b0d5
push 0x1a
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x17c]
push ecx
call fcn.0061ca80
add esp, 8
mov esi, eax
mov edx, dword [esi + 8]
mov ecx, dword [0x6dd1fc]
mov eax, edx
mov byte [esp + 0x1e0], 7
cmp ecx, eax
mov dword [esp + 0x40], eax
jae 0x50b124
mov eax, ecx
mov dword [esp + 0x40], eax
lea edi, [esp + 0x1c]
cmp edi, esi
jne 0x50b149
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.004140f0
push 0
push 0
lea ecx, [esp + 0x24]
call fcn.004140f0
jmp 0x50b1d6
test eax, eax
jbe 0x50b196
cmp eax, edx
jne 0x50b196
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x50b15d
mov ecx, 0x6dd1f8
cmp byte [ecx - 1], 0xfe
jae 0x50b196
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
mov eax, dword [esi + 4]
test eax, eax
jne 0x50b17a
mov eax, 0x6dd1f8
mov dword [esp + 0x20], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x24], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x28], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x50b1d6
push 1
push eax
lea ecx, [esp + 0x24]
call fcn.00414230
test al, al
je 0x50b1d6
mov esi, dword [esi + 4]
test esi, esi
jne 0x50b1b2
mov esi, 0x6dd1f8
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x20]
mov ecx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x24], eax
mov byte [ecx + eax], 0
mov eax, dword [esp + 0x17c]
mov byte [esp + 0x1e0], 3
test eax, eax
je case.default.0x50d82b
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x50b204
cmp al, 0xff
je 0x50b204
dec al
mov byte [ecx], al
jmp case.default.0x50d82b
push ecx
call fcn.006a64d0
add esp, 4
jmp case.default.0x50d82b
xor ecx, ecx
mov cl, byte [esi + 0x16]
mov eax, ecx
shl eax, 4
add eax, ecx
lea ecx, [eax + eax*2]
jmp 0x50b566
xor ecx, ecx
mov cl, byte [esi + 0x17]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6ddb40]
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x16]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x15]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
shl ecx, 6
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x1a]
shl ebx, 3
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x15]
sub ebx, 0x28
jmp case.default.0x50d82b
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x17]
mov cl, byte [esi + 0x16]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov dword [esp + 0x10], ecx
fmul qword [0x6dda90]
fild dword [esp + 0x10]
fmul qword [0x6ddb78]
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x18]
jmp 0x50b55d
xor eax, eax
mov al, byte [esi + 0x1a]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x19]
sar edx, 7
mov ecx, edx
lea eax, [eax + eax*4]
shr ecx, 0x1f
add edx, ecx
add edx, eax
jmp 0x50b72d
xor eax, eax
mov al, byte [esi + 0x16]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x15]
sar edx, 7
mov ecx, edx
lea eax, [eax + eax*4]
shr ecx, 0x1f
add edx, ecx
add edx, eax
jmp 0x50b72d
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x16]
mov dl, byte [esi + 0x17]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 0x17
and dl, 0x80
push 0x16
push edx
jmp 0x50a76a
xor ebx, ebx
mov bl, byte [esi + 0x15]
shl ebx, 2
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x16]
mov dl, byte [esi + 0x17]
shl ecx, 8
add ecx, edx
mov eax, 0x91a2b3c5
imul ecx
mov esi, edx
add esi, ecx
sar esi, 0xb
mov eax, esi
mov edx, esi
shr eax, 0x1f
add edx, eax
mov eax, ecx
mov byte [esp + 0x10], dl
mov ecx, 0xe10
cdq
idiv ecx
mov eax, 0x88888889
mov ecx, edx
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, ecx
mov byte [esp + 0x11], dl
mov ecx, 0x3c
cdq
idiv ecx
mov byte [esp + 0x12], dl
mov edx, dword [esp + 0x12]
mov eax, dword [esp + 0x11]
mov ecx, dword [esp + 0x10]
and edx, 0xff
and eax, 0xff
push edx
and ecx, 0xff
push eax
push ecx
lea edx, [esp + 0x58]
push str._02d:_02d:_02d
push edx
call fcn.006a6fa5
lea edi, [esp + 0x60]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x48], esi
call fcn.00414a50
cmp eax, esi
jae 0x50b415
call fcn.006a64db
mov edi, dword [esp + 0x20]
test edi, edi
je 0x50b437
mov al, byte [edi - 1]
test al, al
je 0x50b437
cmp al, 0xff
je 0x50b437
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x50b4c2
push ecx
jmp 0x50b468
mov esi, dword [esp + 0x48]
test esi, esi
jne 0x50b44f
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
jmp case.default.0x50d82b
mov eax, dword [esp + 0x28]
cmp eax, 0x1f
ja 0x50b45c
cmp eax, esi
jae 0x50b475
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
push esi
lea ecx, [esp + 0x20]
call fcn.00414a60
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x48]
lea esi, [esp + 0x4c]
mov ecx, eax
jmp 0x50b51c
mov edi, 0x71c508
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x10], esi
call fcn.00414a50
cmp eax, esi
jae 0x50b4ab
call fcn.006a64db
mov edi, dword [esp + 0x20]
test edi, edi
je 0x50b4d7
mov al, byte [edi - 1]
test al, al
je 0x50b4d7
cmp al, 0xff
je 0x50b4d7
test esi, esi
jne 0x50b503
dec al
push 0
lea ecx, [esp + 0x20]
mov byte [edi - 1], al
call fcn.004138c0
jmp case.default.0x50d82b
test esi, esi
jne 0x50b4eb
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
jmp case.default.0x50d82b
mov eax, dword [esp + 0x28]
cmp eax, 0x1f
ja 0x50b4f8
cmp eax, esi
jae 0x50b511
push 1
lea ecx, [esp + 0x20]
call fcn.004138c0
push esi
lea ecx, [esp + 0x20]
call fcn.00414a60
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
mov ecx, eax
mov esi, 0x71c508
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x24], eax
mov byte [ecx + eax], 0
jmp case.default.0x50d82b
mov edx, dword [esp + 0x44]
and edx, 0xff
lea eax, [edx - 1]
cmp eax, 0x20
ja case.default.0x50b551
jmp dword [eax*4 + 0x50dea0]
xor eax, eax
mov al, byte [esi + 0x16]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
shl ecx, 2
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
and dl, 0x3f
push ecx
push edx
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x19]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x81020409
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor ecx, ecx
mov cl, byte [esi + 0x1a]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6df3f8]
jmp 0x50a95c
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x16]
mov al, byte [esi + 0x15]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6e14b0]
fild dword [esp + 0x10]
fmul qword [0x6de588]
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x18]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x17]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
shl eax, 6
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x19]
shl ebx, 3
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x16]
sub ebx, 0x28
jmp case.default.0x50d82b
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 4
push 1
push edx
jmp 0x50a76a
xor ebx, ebx
mov bl, byte [esi + 0x17]
sub ebx, 0x28
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x18]
sub ebx, 0x28
jmp case.default.0x50d82b
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x19]
mov cl, byte [esi + 0x1a]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov dword [esp + 0x10], ecx
fmul qword [0x6ddb78]
fild dword [esp + 0x10]
fmul qword [0x6df418]
faddp st(1)
jmp 0x50a95c
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x16]
mov al, byte [esi + 0x15]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6df408]
fild dword [esp + 0x10]
fadd st(0), st(0)
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x17]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
shl ecx, 2
jmp 0x50aee7
xor eax, eax
mov al, byte [esi + 0x19]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
xor eax, eax
mov al, byte [esi + 0x18]
jmp 0x50b728
xor eax, eax
mov al, byte [esi + 0x16]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
xor eax, eax
mov al, byte [esi + 0x15]
lea ecx, [eax + eax*4]
add edx, ecx
mov ebx, edx
cmp ebx, 0x347
jle case.default.0x50d82b
mov ebx, 0x347
jmp case.default.0x50d82b
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 4
and al, 0x40
push 3
push eax
jmp 0x50a76a
xor ebx, ebx
mov bl, byte [esi + 0x19]
lea ebx, [ebx + ebx*4]
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1b]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
cdq
and edx, 0x1f
add eax, edx
mov ebx, eax
sar ebx, 5
sub ebx, 0x64
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x18]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
cdq
and edx, 0x1f
add eax, edx
mov ebx, eax
sar ebx, 5
sub ebx, 0x64
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
and eax, 3
cmp eax, 3
ja case.default.0x50b7ad
jmp dword [eax*4 + 0x50df24]
push 0x1f
jmp 0x50b7c2
push 0x20
jmp 0x50b7c2
push 0x21
jmp 0x50b7c2
push 0x22
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x9c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 8
call fcn.00452520
lea ecx, [esp + 0x98]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x1a]
mov dl, byte [esi + 0x1b]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x1c]
push ecx
push 0x24
and dl, 0x80
push 0x23
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x1b]
lea eax, [esp + 0x1c]
push eax
push 0x24
push 0x23
jmp 0x50a766
mov al, byte [esi + 0x17]
and eax, 7
cmp eax, 7
ja case.default.0x50b877
jmp dword [eax*4 + 0x50df34]
push 0x25
jmp 0x50b898
push 0x26
jmp 0x50b898
push 0x27
jmp 0x50b898
push 0x28
jmp 0x50b898
push 0x29
jmp 0x50b898
push 0x2a
jmp 0x50b898
push 0
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x13c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 9
call fcn.00452520
lea ecx, [esp + 0x138]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 0x40
push 1
push edx
jmp 0x50a76a
xor ecx, ecx
mov cl, byte [esi + 0x1a]
shl ecx, 8
xor eax, eax
mov al, byte [esi + 0x1b]
add ecx, eax
mov eax, 0x91a2b3c5
imul ecx
mov esi, edx
add esi, ecx
sar esi, 0xb
mov edx, esi
mov eax, esi
shr edx, 0x1f
add eax, edx
mov byte [esp + 0x10], al
jmp 0x50da4e
xor ecx, ecx
mov cl, byte [esi + 0x17]
shl ecx, 8
xor edx, edx
mov dl, byte [esi + 0x18]
jmp 0x50da31
push 0x71c508
lea ecx, [esp + 0x20]
call fcn.004cfae0
jmp case.default.0x50d82b
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x26
ja case.default.0x50b551
jmp dword [eax*4 + 0x50df54]
xor eax, eax
mov al, byte [esi + 0x15]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
cdq
and edx, 0x1f
add eax, edx
mov ebx, eax
sar ebx, 5
sub ebx, 0x64
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x17]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
cdq
and edx, 0x1f
add eax, edx
mov ebx, eax
sar ebx, 5
sub ebx, 0x64
jmp case.default.0x50d82b
mov al, byte [esi + 0x19]
lea edx, [esp + 0x1c]
push edx
push 0x2c
and al, 0x80
push 0x2b
push eax
jmp 0x50a76a
mov al, byte [esi + 0x1b]
and eax, 3
cmp eax, 3
ja case.default.0x50b9cc
jmp dword [eax*4 + 0x50dff0]
push 0x2d
jmp 0x50b9e1
push 0x2e
jmp 0x50b9e1
push 0x2f
jmp 0x50b9e1
push 0x30
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xbc]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0xa
call fcn.00452520
lea ecx, [esp + 0xb8]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor ecx, ecx
mov cl, byte [esi + 0x15]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6df408]
jmp 0x50a95c
xor edx, edx
mov dl, byte [esi + 0x17]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6df408]
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x19]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6df408]
jmp 0x50a95c
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push 4
and dl, 0x40
push 3
push edx
jmp 0x50a76a
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x17]
mov cl, byte [esi + 0x16]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov dword [esp + 0x10], ecx
fmul qword [0x6e14c0]
fild dword [esp + 0x10]
fmul qword [0x6e14a8]
faddp st(1)
jmp 0x50a95c
mov al, byte [esi + 0x19]
lea edx, [esp + 0x1c]
push edx
push 6
and al, 0x10
push 5
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 1
push 1
push edx
jmp 0x50a76a
xor eax, eax
mov al, byte [esi + 0x1b]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x1a]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
shl ecx, 6
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
mov al, byte [esi + 0x19]
lea edx, [esp + 0x1c]
push edx
push 6
and al, 0x20
push 5
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push 6
and dl, 8
push 5
push edx
jmp 0x50a76a
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x18]
mov dl, byte [esi + 0x19]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov dword [esp + 0x10], edx
fmul qword [0x6ddb78]
fild dword [esp + 0x10]
fmul qword [0x6df418]
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x1a]
jmp 0x50b55d
xor eax, eax
mov al, byte [esi + 0x18]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x17]
sar edx, 7
mov ecx, edx
lea eax, [eax + eax*4]
shr ecx, 0x1f
add edx, ecx
add edx, eax
jmp 0x50b72d
xor ebx, ebx
mov bl, byte [esi + 0x1b]
jmp case.default.0x50d82b
xor ecx, ecx
mov cl, byte [esi + 0x18]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6e14c8]
jmp 0x50a95c
xor ecx, ecx
mov eax, 0x80808081
mov cl, byte [esi + 0x17]
shl ecx, 7
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
lea ebx, [edx + eax - 0x40]
jmp case.default.0x50d82b
mov al, byte [esi + 0x1a]
and eax, 3
cmp eax, 3
ja case.default.0x50bbf4
jmp dword [eax*4 + 0x50e000]
push 0x31
jmp 0x50bc09
push 0x32
jmp 0x50bc09
push 0
jmp 0x50bc09
push 0x33
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x1bc]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0xb
call fcn.00452520
lea ecx, [esp + 0x1b8]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x15]
mov dl, byte [esi + 0x16]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x17]
mov cl, byte [esi + 0x18]
shl eax, 8
add eax, ecx
mov ecx, eax
shl ecx, 9
sub ecx, eax
mov eax, 0x80008001
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push 6
and dl, 0x10
push 5
push edx
jmp 0x50a76a
lea eax, [esp + 0x1c]
push eax
push 0x35
push 0x34
jmp 0x50a763
mov al, byte [esi + 0x19]
lea edx, [esp + 0x1c]
push edx
push 0x35
and al, 0x20
push 0x34
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push 0x35
and dl, 0x80
push 0x34
push edx
jmp 0x50a76a
movzx ax, byte [esi + 0x1a]
movzx cx, byte [esi + 0x1b]
shl eax, 8
add eax, ecx
jmp 0x50c722
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x24
ja case.default.0x50b551
jmp dword [eax*4 + 0x50e010]
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 4
and al, 0x40
push 3
push eax
jmp 0x50a76a
xor ebx, ebx
mov bl, byte [esi + 0x16]
lea ebx, [ebx + ebx*4]
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x18]
lea ebx, [ebx + ebx*4]
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x19]
mov dl, byte [esi + 0x1a]
shl ecx, 8
add ecx, edx
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6e14a0]
jmp 0x50a95c
mov dl, byte [esi + 0x17]
lea ecx, [esp + 0x1c]
push ecx
push 0x37
and dl, 0x80
push 0x36
push edx
jmp 0x50a76a
mov dl, byte [esi + 0x17]
lea ecx, [esp + 0x1c]
push ecx
push 0x37
and dl, 0x20
push 0x36
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x19]
lea eax, [esp + 0x1c]
and cl, 0x3f
push eax
push ecx
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
mov al, byte [esi + 0x1a]
lea edx, [esp + 0x1c]
and al, 0x3f
push edx
push eax
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x15]
mov dl, byte [esi + 0x16]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov dword [esp + 0x10], edx
fmul qword [0x6e1498]
fild dword [esp + 0x10]
fmul qword [0x6e1490]
faddp st(1)
jmp 0x50a95c
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x17]
mov cl, byte [esi + 0x18]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov dword [esp + 0x10], ecx
fmul qword [0x6e1498]
fild dword [esp + 0x10]
fmul qword [0x6e1490]
faddp st(1)
jmp 0x50a95c
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 6
and al, 0x10
push 5
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 1
push 1
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x15]
lea eax, [esp + 0x1c]
push eax
push 6
push 5
and cl, 0x20
jmp 0x50a769
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 6
and al, 8
push 5
push eax
jmp 0x50a76a
xor ebx, ebx
mov bl, byte [esi + 0x1a]
sub ebx, 0x28
jmp case.default.0x50d82b
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x19]
mov al, byte [esi + 0x1a]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6ddb78]
fild dword [esp + 0x10]
fmul qword [0x6df418]
faddp st(1)
jmp 0x50a95c
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x16]
mov dl, byte [esi + 0x15]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov dword [esp + 0x10], edx
fmul qword [0x6df408]
fild dword [esp + 0x10]
fadd st(0), st(0)
faddp st(1)
jmp 0x50a95c
xor ecx, ecx
mov cl, byte [esi + 0x16]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6e14c8]
jmp 0x50a95c
xor ecx, ecx
mov eax, 0x80808081
mov cl, byte [esi + 0x18]
shl ecx, 7
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
lea ebx, [edx + eax - 0x40]
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x19]
mov dl, byte [esi + 0x1a]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 0x40
push 1
push edx
jmp 0x50a76a
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x20
ja case.default.0x50b551
jmp dword [eax*4 + 0x50e0a4]
xor ebx, ebx
xor edx, edx
mov bl, byte [esi + 0x16]
mov dl, byte [esi + 0x17]
shl ebx, 8
add ebx, edx
jmp case.default.0x50d82b
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x1c]
push ecx
push 0x3d
and dl, 0x80
push 0x3c
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x1c]
push eax
push 0x3d
push 0x3c
jmp 0x50a766
mov al, byte [esi + 0x18]
and eax, 0x30
cmp eax, 0x30
ja case.0x50bfd9.4
xor edx, edx
mov dl, byte [eax + 0x50e13c]
jmp dword [edx*4 + 0x50e128]
push 0x3e
jmp 0x50bfee
push 0x3f
jmp 0x50bfee
push 0x40
jmp 0x50bfee
push 0
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x6c]
push ecx
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0xc
call fcn.00452520
lea ecx, [esp + 0x68]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov al, byte [esi + 0x18]
and eax, 0xc
cmp eax, 0xc
ja case.0x50c052.4
xor edx, edx
mov dl, byte [eax + 0x50e184]
jmp dword [edx*4 + 0x50e170]
push 0x3e
jmp 0x50c067
push 0x3f
jmp 0x50c067
push 0x40
jmp 0x50c067
push 0
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x15c]
push ecx
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0xd
call fcn.00452520
lea ecx, [esp + 0x158]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov al, byte [esi + 0x18]
and eax, 3
cmp eax, 3
ja case.default.0x50c0c9
jmp dword [eax*4 + 0x50e194]
push 0x3e
jmp 0x50c0de
push 0x3f
jmp 0x50c0de
push 0x40
jmp 0x50c0de
push 0
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xfc]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0xe
call fcn.00452520
lea ecx, [esp + 0xf8]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x19]
lea ecx, [eax + eax*4]
lea ecx, [eax + ecx*2]
mov eax, 0x82082083
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1a]
lea ecx, [eax + eax*4]
lea ecx, [eax + ecx*2]
mov eax, 0x82082083
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1b]
lea ecx, [eax + eax*4]
lea edx, [eax + ecx*2]
lea ecx, [eax + edx*4]
shl ecx, 1
jmp 0x50b566
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 0x80
push 1
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push 2
push 1
jmp 0x50a766
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 0x10
push 1
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push 2
push 1
and cl, 8
jmp 0x50a769
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 2
and al, 4
push 1
push eax
jmp 0x50a76a
xor ecx, ecx
mov eax, 0x80808081
mov cl, byte [esi + 0x1a]
shl ecx, 7
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
lea ebx, [edx + ecx - 0x40]
jmp case.default.0x50d82b
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x16]
mov al, byte [esi + 0x15]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6dda90]
fild dword [esp + 0x10]
fmul qword [0x6ddb78]
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x1b]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
xor eax, eax
mov al, byte [esi + 0x1a]
jmp 0x50b728
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x17]
mov dl, byte [esi + 0x18]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
mov dl, byte [esi + 0x1a]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 0x40
push 1
push edx
jmp 0x50a76a
xor ecx, ecx
mov cl, byte [esi + 0x15]
shl ecx, 8
xor eax, eax
mov al, byte [esi + 0x16]
jmp 0x50b911
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x1b
ja case.default.0x50b551
jmp dword [eax*4 + 0x50e1a4]
xor ebx, ebx
mov bl, byte [esi + 0x15]
jmp case.default.0x50d82b
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x18]
mov al, byte [esi + 0x19]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6ddb78]
fild dword [esp + 0x10]
fmul qword [0x6df418]
faddp st(1)
jmp 0x50a95c
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x1b]
mov dl, byte [esi + 0x1a]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov dword [esp + 0x10], edx
fmul qword [0x6df408]
fild dword [esp + 0x10]
fadd st(0), st(0)
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x15]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6df3f8]
jmp 0x50a95c
xor ebx, ebx
xor ecx, ecx
mov bl, byte [esi + 0x16]
mov cl, byte [esi + 0x17]
shl ebx, 8
add ebx, ecx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1a]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x19]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
shl ecx, 6
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x18]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
xor eax, eax
mov al, byte [esi + 0x17]
jmp 0x50b728
xor ebx, ebx
mov bl, byte [esi + 0x1b]
sub ebx, 0x28
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x15]
lea ebx, [ebx + ebx*4]
jmp case.default.0x50d82b
xor edx, edx
mov dl, byte [esi + 0x19]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e14c8]
jmp 0x50a95c
xor ecx, ecx
mov eax, 0x80808081
mov cl, byte [esi + 0x1b]
shl ecx, 7
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
lea ebx, [edx + ecx - 0x40]
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 0x42
and al, 0x80
push 0x41
push eax
jmp 0x50a76a
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x16]
mov dl, byte [esi + 0x17]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 0x44
and dl, 0x80
push 0x43
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push 0x44
push 0x43
jmp 0x50a766
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x1c]
push ecx
push 0x44
and dl, 0x40
push 0x43
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x1b]
lea eax, [esp + 0x1c]
push eax
push 0x44
push 0x43
and cl, 0x20
jmp 0x50a769
mov al, byte [esi + 0x1b]
lea edx, [esp + 0x1c]
push edx
push 0x44
and al, 0x80
push 0x43
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x1c]
push ecx
push 0x46
and dl, 0x10
push 0x45
push edx
jmp 0x50a76a
xor ecx, ecx
mov cl, byte [esi + 0x16]
shl ecx, 8
xor eax, eax
mov al, byte [esi + 0x17]
jmp 0x50b911
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x2e
ja case.default.0x50b551
jmp dword [eax*4 + 0x50e214]
xor eax, eax
mov al, byte [esi + 0x16]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x15]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
shl ecx, 6
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x19]
jmp case.default.0x50d82b
xor ebx, ebx
xor edx, edx
mov bl, byte [esi + 0x18]
mov dl, byte [esi + 0x19]
shl ebx, 8
add ebx, edx
jmp case.default.0x50d82b
xor ebx, ebx
xor eax, eax
mov bl, byte [esi + 0x1a]
mov al, byte [esi + 0x1b]
shl ebx, 8
add ebx, eax
jmp case.default.0x50d82b
xor ebx, ebx
xor eax, eax
mov bl, byte [esi + 0x19]
mov al, byte [esi + 0x1a]
shl ebx, 8
add ebx, eax
jmp case.default.0x50d82b
xor ebx, ebx
xor ecx, ecx
mov bl, byte [esi + 0x15]
mov cl, byte [esi + 0x16]
shl ebx, 8
add ebx, ecx
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 2
and al, 0x80
push 1
push eax
jmp 0x50a76a
mov cl, byte [esi + 0x15]
lea eax, [esp + 0x1c]
push eax
push 2
push 1
and cl, 0x20
jmp 0x50a769
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 8
push 1
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x15]
lea eax, [esp + 0x1c]
push eax
push 2
push 1
and cl, 4
jmp 0x50a769
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x1a]
mov al, byte [esi + 0x19]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6dda90]
fild dword [esp + 0x10]
fmul qword [0x6ddb78]
faddp st(1)
jmp 0x50a95c
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x16]
mov dl, byte [esi + 0x15]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov dword [esp + 0x10], edx
fmul qword [0x6df408]
fild dword [esp + 0x10]
fadd st(0), st(0)
faddp st(1)
jmp 0x50a95c
xor ecx, ecx
mov eax, 0x80808081
mov cl, byte [esi + 0x15]
shl ecx, 7
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
lea ebx, [edx + ecx - 0x40]
jmp case.default.0x50d82b
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x16]
mov al, byte [esi + 0x17]
shl edx, 8
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6e14a0]
jmp 0x50a95c
mov dl, byte [esi + 0x1a]
lea ecx, [esp + 0x1c]
and dl, 0x3f
push ecx
push edx
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
mov cl, byte [esi + 0x1b]
lea eax, [esp + 0x1c]
and cl, 0x3f
push eax
push ecx
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
and al, 0x3f
push edx
push eax
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x16]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x81020409
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor ebx, ebx
xor edx, edx
mov bl, byte [esi + 0x17]
mov dl, byte [esi + 0x18]
shl ebx, 8
add ebx, edx
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x1b]
shl ebx, 2
jmp case.default.0x50d82b
mov cl, byte [esi + 0x1a]
lea eax, [esp + 0x1c]
push eax
push 0x46
push 0x45
and cl, 0x20
jmp 0x50a769
movzx ax, byte [esi + 0x15]
movzx dx, byte [esi + 0x16]
shl eax, 8
add eax, edx
movsx ecx, ax
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
lea ebx, [edx + eax - 0x28]
jmp case.default.0x50d82b
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x1c]
push ecx
push 0x42
and dl, 0x80
push 0x41
push edx
jmp 0x50a76a
xor ecx, ecx
xor eax, eax
mov cl, byte [esi + 0x17]
mov al, byte [esi + 0x18]
shl ecx, 8
add ecx, eax
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
mov al, byte [esi + 0x1a]
lea edx, [esp + 0x1c]
push edx
push 2
and al, 0x40
push 1
push eax
jmp 0x50a76a
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x31
ja case.default.0x50b551
jmp dword [eax*4 + 0x50e2d0]
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 0x46
and al, 0x20
push 0x45
push eax
jmp 0x50a76a
xor eax, eax
mov al, byte [esi + 0x17]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x16]
sar edx, 7
mov ecx, edx
lea eax, [eax + eax*4]
shr ecx, 0x1f
add edx, ecx
add edx, eax
jmp 0x50b72d
xor ebx, ebx
mov bl, byte [esi + 0x18]
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x19]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x81020409
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 0x47
and al, 0x40
push 0x48
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push 0x47
and dl, 0x80
push 0x48
push edx
jmp 0x50a76a
xor eax, eax
mov al, byte [esi + 0x16]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6df3f8]
jmp 0x50a95c
xor ecx, ecx
mov cl, byte [esi + 0x18]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
fmul qword [0x6df3f8]
jmp 0x50a95c
xor edx, edx
mov dl, byte [esi + 0x15]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6df3f8]
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x17]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6df3f8]
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x19]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
shl ecx, 2
jmp 0x50aee7
xor edx, edx
mov dl, byte [esi + 0x1b]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
fmul qword [0x6df3f8]
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x15]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fmul qword [0x6df3f8]
jmp 0x50a95c
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x1c]
push ecx
push 0x44
and dl, 0x80
push 0x43
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x1c]
push eax
push 0x44
push 0x43
jmp 0x50a766
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 0x46
and al, 0x10
push 0x45
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 0x44
and dl, 0x40
push 0x43
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push 0x44
push 0x43
and cl, 0x20
jmp 0x50a769
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 0x44
and al, 0x80
push 0x43
push eax
jmp 0x50a76a
mov cl, byte [esi + 0x15]
lea eax, [esp + 0x1c]
push eax
push 0x4a
push 0x49
and cl, 8
jmp 0x50a769
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 2
and al, 0x10
push 1
push eax
jmp 0x50a76a
mov al, byte [esi + 0x1b]
and eax, 0xc0
cmp eax, 0x40
je 0x50c9a6
cmp eax, 0xc0
je 0x50c9a2
push 0x4d
jmp 0x50c9a8
push 0x4b
jmp 0x50c9a8
push 0x4c
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x19c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0xf
call fcn.00452520
lea ecx, [esp + 0x198]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push 0x4f
and dl, 8
push 0x4e
push edx
jmp 0x50a76a
mov al, byte [esi + 0x15]
and eax, 0xc0
cmp eax, 0x40
je 0x50ca30
cmp eax, 0xc0
je 0x50ca2c
push 0x4b
jmp 0x50ca32
push 0x4e
jmp 0x50ca32
push 0x4f
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x11c]
push ecx
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x10
call fcn.00452520
lea ecx, [esp + 0x118]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
and eax, 0x30
cmp eax, 0x10
je 0x50caa1
cmp eax, 0x30
je 0x50ca9d
push 0x4b
jmp 0x50caa3
push 0x4e
jmp 0x50caa3
push 0x4f
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x7c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x11
call fcn.00452520
lea ecx, [esp + 0x78]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x17]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x16]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
shl eax, 6
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x18]
shl ebx, 3
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x16]
mov dl, byte [esi + 0x15]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov dword [esp + 0x10], edx
fmul qword [0x6df408]
fild dword [esp + 0x10]
fadd st(0), st(0)
faddp st(1)
jmp 0x50a95c
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x18]
mov cl, byte [esi + 0x17]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov dword [esp + 0x10], ecx
fmul qword [0x6dda90]
fild dword [esp + 0x10]
fmul qword [0x6ddb78]
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x19]
jmp 0x50b55d
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x1a]
mov dl, byte [esi + 0x1b]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
mov dl, byte [esi + 0x1a]
lea ecx, [esp + 0x1c]
push ecx
push 0x41
and dl, 0x40
push 0x42
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x1a]
lea eax, [esp + 0x1c]
push eax
push 0x42
push 0x41
and cl, 0x20
jmp 0x50a769
xor edx, edx
mov dl, byte [esi + 0x15]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a956
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x1c]
and cl, 0x3f
push eax
push ecx
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
mov al, byte [esi + 0x17]
lea edx, [esp + 0x1c]
push edx
push 0x42
and al, 0x80
push 0x41
push eax
jmp 0x50a76a
xor ecx, ecx
mov cl, byte [esi + 0x1a]
imul ecx, ecx, 0x63
jmp 0x50aee7
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 0x40
push 1
push edx
jmp 0x50a76a
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x1e
ja case.default.0x50b551
jmp dword [eax*4 + 0x50e398]
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 0x42
and al, 1
push 0x41
push eax
jmp 0x50a76a
mov al, byte [esi + 0x15]
and eax, 0xc0
sub eax, 0x40
je 0x50cc92
sub eax, 0x40
je 0x50cc8e
push 0x4d
jmp 0x50cc94
push 0x4b
jmp 0x50cc94
push 0x4c
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x8c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x12
call fcn.00452520
lea ecx, [esp + 0x88]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
and eax, 0x82
sub eax, 2
je 0x50cd05
sub eax, 0x7e
je 0x50cd01
push 0x4d
jmp 0x50cd07
push 0x4b
jmp 0x50cd07
push 0x4c
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xac]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x13
call fcn.00452520
lea ecx, [esp + 0xa8]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
and eax, 0x84
sub eax, 4
je 0x50cd78
sub eax, 0x7c
je 0x50cd74
push 0x4d
jmp 0x50cd7a
push 0x4b
jmp 0x50cd7a
push 0x4c
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xcc]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x14
call fcn.00452520
lea ecx, [esp + 0xc8]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push 0x46
and dl, 0x20
push 0x45
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x17]
lea eax, [esp + 0x1c]
push eax
push 0x4f
push 0x4e
and cl, 8
jmp 0x50a769
mov al, byte [esi + 0x17]
and eax, 0xc0
cmp eax, 0x40
je 0x50ce16
cmp eax, 0xc0
je 0x50ce12
push 0x4b
jmp 0x50ce18
push 0x4e
jmp 0x50ce18
push 0x4f
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0xec]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x15
call fcn.00452520
lea ecx, [esp + 0xe8]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov al, byte [esi + 0x17]
and eax, 0x30
cmp eax, 0x10
je 0x50ce87
cmp eax, 0x30
je 0x50ce83
push 0x4b
jmp 0x50ce89
push 0x4e
jmp 0x50ce89
push 0x4f
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x10c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x16
call fcn.00452520
lea ecx, [esp + 0x108]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x19]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
xor eax, eax
mov al, byte [esi + 0x18]
sar edx, 7
mov ecx, edx
lea eax, [eax + eax*4]
shr ecx, 0x1f
add edx, ecx
add edx, eax
jmp 0x50b72d
xor eax, eax
mov al, byte [esi + 0x1a]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
mov eax, 0x81020409
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x18]
mov ecx, eax
shl ecx, 6
sub ecx, eax
mov eax, 0x80808081
imul ecx
add edx, ecx
xor ecx, ecx
mov cl, byte [esi + 0x17]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
shl ecx, 6
add edx, ecx
mov ebx, edx
jmp case.default.0x50d82b
xor ecx, ecx
mov eax, 0x80808081
mov cl, byte [esi + 0x19]
shl ecx, 7
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
lea ebx, [edx + eax - 0x40]
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1a]
lea ecx, [eax + eax*4]
lea edx, [eax + ecx*2]
lea ecx, [eax + edx*4]
mov eax, 0x81020409
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebx, edx
jmp case.default.0x50d82b
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x17]
mov dl, byte [esi + 0x18]
shl ecx, 8
add ecx, edx
mov eax, 0x10624dd3
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a95c
xor ecx, ecx
mov cl, byte [esi + 0x1b]
imul ecx, ecx, 0x63
jmp 0x50aee7
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x1c]
push ecx
push 0x51
and dl, 0x80
push 0x50
push edx
jmp 0x50a76a
xor ebx, ebx
mov bl, byte [esi + 0x15]
shl ebx, 3
jmp case.default.0x50d82b
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x1c]
push eax
push 0x42
push 0x41
and cl, 0x10
jmp 0x50a769
mov al, byte [esi + 0x19]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.00512cd0
jmp case.default.0x50d82b
mov dl, byte [esi + 0x1a]
lea ecx, [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.00512cd0
jmp case.default.0x50d82b
mov cl, byte [esi + 0x1b]
lea eax, [esp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.00512cd0
jmp case.default.0x50d82b
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.00512cd0
jmp case.default.0x50d82b
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.00512cd0
jmp case.default.0x50d82b
mov cl, byte [esi + 0x17]
lea eax, [esp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.00512cd0
jmp case.default.0x50d82b
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.00512cd0
jmp case.default.0x50d82b
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.00512cd0
jmp case.default.0x50d82b
xor ecx, ecx
mov cl, byte [esi + 0x17]
shl ecx, 8
xor eax, eax
mov al, byte [esi + 0x18]
jmp 0x50b911
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x22
ja case.default.0x50b551
jmp dword [eax*4 + 0x50e414]
xor edx, edx
mov dl, byte [esi + 0x15]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a956
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x1c]
push eax
push 0xa
push 9
jmp 0x50a766
mov al, byte [esi + 0x16]
lea edx, [esp + 0x1c]
push edx
push 9
and al, 0x20
push 0xa
push eax
jmp 0x50a76a
xor ecx, ecx
mov cl, byte [esi + 0x17]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x50a956
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x1c]
push ecx
push 9
and dl, 8
push 0xa
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x1c]
push eax
push 9
push 0xa
and cl, 0x10
jmp 0x50a769
mov al, byte [esi + 0x19]
lea edx, [esp + 0x1c]
and al, 0x3f
push edx
push eax
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x1c]
push ecx
push 0x93
and dl, 2
push 0x92
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x1a]
lea eax, [esp + 0x1c]
push eax
push 0x4f
push 0x4e
and cl, 8
jmp 0x50a769
mov al, byte [esi + 0x1a]
and eax, 0xc0
cmp eax, 0x40
je 0x50d1c6
cmp eax, 0xc0
je 0x50d1c2
push 0x4b
jmp 0x50d1c8
push 0x4e
jmp 0x50d1c8
push 0x4f
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x12c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x17
call fcn.00452520
lea ecx, [esp + 0x128]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1b]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
shl ecx, 2
jmp 0x50aee7
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
and al, 0x3f
push edx
push eax
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
xor ecx, ecx
mov cl, byte [esi + 0x16]
imul ecx, ecx, 0x63
jmp 0x50aee7
mov al, byte [esi + 0x1a]
and eax, 7
cmp eax, 7
ja case.default.0x50d261
jmp dword [eax*4 + 0x50e4a0]
push 0x94
jmp 0x50d29b
push 0x95
jmp 0x50d29b
push 0x96
jmp 0x50d29b
push 0x97
jmp 0x50d29b
push 0x98
jmp 0x50d29b
push 0x99
jmp 0x50d29b
push 0x9a
jmp 0x50d29b
push 0
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x14c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x18
call fcn.00452520
lea ecx, [esp + 0x148]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x1a]
shl ebx, 2
jmp case.default.0x50d82b
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push 2
push 1
and cl, 1
jmp 0x50a769
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 0x46
and al, 2
push 0x45
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 4
push 1
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push 2
push 1
and cl, 0x10
jmp 0x50a769
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 2
and al, 0x20
push 1
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 0x46
and dl, 8
push 0x45
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x19]
lea eax, [esp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.00513470
jmp case.default.0x50d82b
mov al, byte [esi + 0x1a]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.00513470
jmp case.default.0x50d82b
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.00513470
jmp case.default.0x50d82b
mov cl, byte [esi + 0x15]
lea eax, [esp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.00513470
jmp case.default.0x50d82b
mov al, byte [esi + 0x16]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.00513470
jmp case.default.0x50d82b
mov dl, byte [esi + 0x17]
lea ecx, [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.00513470
jmp case.default.0x50d82b
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.00513470
jmp case.default.0x50d82b
mov al, byte [esi + 0x19]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.00513470
jmp case.default.0x50d82b
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x29
ja case.default.0x50d437
jmp dword [eax*4 + 0x50e4c0]
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 0xaa
and al, 0x80
push 0xa9
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push 9
and dl, 0x40
push 0xa
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x15]
lea eax, [esp + 0x1c]
push eax
push 9
push 0xa
and cl, 0x20
jmp 0x50a769
mov al, byte [esi + 0x15]
lea edx, [esp + 0x1c]
push edx
push 9
and al, 0x10
push 0xa
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x16]
lea ecx, [esp + 0x1c]
and dl, 0x3f
push ecx
push edx
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
mov cl, byte [esi + 0x17]
lea eax, [esp + 0x1c]
and cl, 0x3f
push eax
push ecx
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
and al, 0x3f
push edx
push eax
mov ecx, esi
call fcn.00513230
jmp case.default.0x50d82b
xor ebx, ebx
xor ecx, ecx
mov bl, byte [esi + 0x19]
mov cl, byte [esi + 0x1a]
shl ebx, 8
add ebx, ecx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1a]
lea ecx, [eax + eax*4]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add edx, eax
xor eax, eax
mov al, byte [esi + 0x19]
jmp 0x50b728
xor ebx, ebx
mov bl, byte [esi + 0x15]
sub ebx, 0x28
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x16]
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x17]
jmp case.default.0x50d82b
xor edx, edx
xor eax, eax
mov dl, byte [esi + 0x19]
mov al, byte [esi + 0x18]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fmul qword [0x6dda90]
fild dword [esp + 0x10]
fmul qword [0x6ddb78]
faddp st(1)
jmp 0x50a95c
xor eax, eax
mov al, byte [esi + 0x1a]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
shl ecx, 2
jmp 0x50aee7
xor edx, edx
mov dl, byte [esi + 0x1b]
mov dword [esp + 0x10], edx
fild dword [esp + 0x10]
jmp 0x50a956
mov al, byte [esi + 0x15]
and eax, 0xc0
cmp eax, 0x40
je 0x50d5a4
cmp eax, 0xc0
je 0x50d5a0
push 0x4b
jmp 0x50d5a6
push 0x4e
jmp 0x50d5a6
push 0x4f
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0061d790
lea ecx, [esp + 0x16c]
push ecx
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x19
call fcn.00452520
lea ecx, [esp + 0x168]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x16]
lea ecx, [eax + eax*4]
jmp 0x50b566
xor eax, eax
mov al, byte [esi + 0x17]
lea ecx, [eax + eax*2]
shl ecx, 4
sub ecx, eax
mov eax, 0x80808081
shl ecx, 1
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
lea ebx, [edx + ecx + 0xa]
jmp case.default.0x50d82b
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 0x51
and al, 0x80
push 0x50
push eax
jmp 0x50a76a
xor ebx, ebx
mov bl, byte [esi + 0x19]
shl ebx, 2
jmp case.default.0x50d82b
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x1c]
push ecx
push 0x46
and dl, 8
push 0x45
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x15]
lea eax, [esp + 0x1c]
push eax
push 0x46
push 0x45
and cl, 0x20
jmp 0x50a769
mov al, byte [esi + 0x1b]
lea edx, [esp + 0x1c]
push edx
push 0x46
and al, 0x10
push 0x45
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x1b]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 1
push 1
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x1c]
push eax
push 0x93
push 0x92
and cl, 2
jmp 0x50a769
xor ecx, ecx
mov cl, byte [esi + 0x17]
imul ecx, ecx, 0x63
jmp 0x50b566
xor eax, eax
mov al, byte [esi + 0x18]
mov ecx, eax
shl ecx, 8
sub ecx, eax
shl ecx, 1
sub ecx, eax
mov eax, 0x80808081
shl ecx, 1
imul ecx
mov edi, edx
xor eax, eax
mov al, byte [esi + 0x19]
add edi, ecx
sar edi, 7
mov ecx, edi
shr ecx, 0x1f
add edi, ecx
lea ecx, [eax + eax*2]
mov eax, 0x80808081
imul ecx
add edx, ecx
sar edx, 7
mov ebx, edx
add edx, edi
shr ebx, 0x1f
add ebx, edx
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1a]
mov ecx, eax
shl ecx, 8
sub ecx, eax
shl ecx, 1
sub ecx, eax
mov eax, 0x80808081
shl ecx, 1
imul ecx
mov edi, edx
xor eax, eax
mov al, byte [esi + 0x1b]
add edi, ecx
sar edi, 7
mov edx, edi
lea ecx, [eax + eax*2]
shr edx, 0x1f
mov eax, 0x80808081
add edi, edx
imul ecx
add edx, ecx
sar edx, 7
mov ebx, edx
add edx, edi
shr ebx, 0x1f
add ebx, edx
jmp case.default.0x50d82b
mov cl, byte [esi + 0x15]
lea eax, [esp + 0x1c]
push eax
push 2
push 1
jmp 0x50a766
mov al, byte [esi + 0x16]
lea edx, [esp + 0x1c]
push edx
push 0x44
and al, 8
push 0x43
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.005136c0
jmp case.default.0x50d82b
mov cl, byte [esi + 0x1a]
lea eax, [esp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.005136c0
jmp case.default.0x50d82b
mov al, byte [esi + 0x1b]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.005136c0
jmp case.default.0x50d82b
mov dl, byte [esi + 0x15]
lea ecx, [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.005136c0
jmp case.default.0x50d82b
mov cl, byte [esi + 0x16]
lea eax, [esp + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.005136c0
jmp case.default.0x50d82b
mov al, byte [esi + 0x17]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.005136c0
jmp case.default.0x50d82b
push 0x71c508
lea ecx, [esp + 0x20]
call fcn.004cfae0
jmp case.default.0x50d82b
mov ecx, dword [esp + 0x44]
and ecx, 0xff
lea eax, [ecx - 1]
cmp eax, 0x15
ja case.default.0x50d82b
jmp dword [eax*4 + 0x50e568]
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 1
and al, 1
push 2
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x18]
lea ecx, [esp + 0x1c]
push ecx
push 1
and dl, 4
push 2
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x18]
lea eax, [esp + 0x1c]
push eax
push 1
push 2
and cl, 0x20
jmp 0x50a769
mov al, byte [esi + 0x18]
lea edx, [esp + 0x1c]
push edx
push 1
and al, 0x40
push 2
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x17]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 1
push 1
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x17]
lea eax, [esp + 0x1c]
push eax
push 2
push 1
and cl, 4
jmp 0x50a769
mov al, byte [esi + 0x17]
lea edx, [esp + 0x1c]
push edx
push 2
and al, 0x20
push 1
push eax
jmp 0x50a76a
mov dl, byte [esi + 0x17]
lea ecx, [esp + 0x1c]
push ecx
push 2
and dl, 0x40
push 1
push edx
jmp 0x50a76a
mov cl, byte [esi + 0x19]
lea eax, [esp + 0x1c]
push eax
push 1
push 2
and cl, 4
jmp 0x50a769
xor ebx, ebx
mov bl, byte [esi + 0x1a]
sub ebx, 0x28
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x1b]
sub ebx, 0x28
jmp case.default.0x50d82b
xor ecx, ecx
mov cl, byte [esi + 0x17]
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
jmp 0x50a956
xor ebx, ebx
mov bl, byte [esi + 0x18]
sub ebx, 0x28
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x19]
sub ebx, 0x28
jmp case.default.0x50d82b
xor ebx, ebx
mov bl, byte [esi + 0x1a]
jmp case.default.0x50d82b
xor eax, eax
mov al, byte [esi + 0x1b]
shr eax, 6
cmp eax, 3
ja case.default.0x50d946
jmp dword [eax*4 + 0x50e5c0]
push 0xd
jmp 0x50d957
push 0x14
jmp 0x50d957
push 0x4e
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x18c]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x1a
call fcn.00452520
lea ecx, [esp + 0x188]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
mov al, byte [esi + 0x1b]
shr eax, 3
and eax, 3
cmp eax, 3
ja case.default.0x50d9bc
jmp dword [eax*4 + 0x50e5d0]
push 0x14
jmp 0x50d9cd
push 0x4e
jmp 0x50d9cd
push 0xd
push 5
lea ecx, [esp + 0x20]
call fcn.0061dbc0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0061d790
lea eax, [esp + 0x1ac]
push eax
call fcn.0061ca80
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x1e4], 0x1b
call fcn.00452520
lea ecx, [esp + 0x1a8]
mov byte [esp + 0x1e0], 3
call fcn.00419a10
jmp case.default.0x50d82b
xor ecx, ecx
mov cl, byte [esi + 0x15]
shl ecx, 8
xor edx, edx
mov dl, byte [esi + 0x16]
add ecx, edx
mov eax, 0x91a2b3c5
imul ecx
mov esi, edx
add esi, ecx
sar esi, 0xb
mov eax, esi
mov edx, esi
shr eax, 0x1f
add edx, eax
mov byte [esp + 0x10], dl
mov eax, ecx
mov ecx, 0xe10
cdq
idiv ecx
mov eax, 0x88888889
mov ecx, edx
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, ecx
mov byte [esp + 0x11], dl
mov ecx, 0x3c
cdq
idiv ecx
mov byte [esp + 0x12], dl
mov edx, dword [esp + 0x12]
mov eax, dword [esp + 0x11]
mov ecx, dword [esp + 0x10]
and edx, 0xff
and eax, 0xff
push edx
and ecx, 0xff
push eax
push ecx
lea edx, [esp + 0x58]
push str._02d:_02d:_02d
push edx
call fcn.006a6fa5
add esp, 0x14
lea eax, [esp + 0x4c]
lea ecx, [esp + 0x1c]
push eax
call fcn.004cfae0
jmp case.default.0x50d82b
mov dl, byte [esi + 0x19]
lea ecx, [esp + 0x1c]
push ecx
push 9
and dl, 0x80
push 0xa
push edx
jmp 0x50a76a
lea eax, [esp + 0x1c]
push eax
push 2
push 1
jmp 0x50a763